View a markdown version of this page

Enregistrement et rediffusion de la session - Base rocheuse de l'Amazonie AgentCore

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Enregistrement et rediffusion de la session

L'enregistrement et la relecture des sessions du navigateur fournissent une observabilité complète à des fins de débogage, d'audit ou de formation. Lorsque vous créez un navigateur avec l'enregistrement de session activé, Amazon Bedrock capture AgentCore automatiquement les interactions du navigateur et les stocke dans le compartiment Amazon S3 que vous avez spécifié pour une analyse ultérieure.

La rediffusion de session capture des données complètes sur les interactions avec le navigateur, ce qui vous permet de visionner les rediffusions et de comprendre les actions qui se sont produites pendant les sessions de navigation. Cette fonctionnalité vous aide à résoudre les erreurs et à améliorer les appels futurs en fournissant des informations détaillées sur le comportement du navigateur.

Les informations collectées lors de la rediffusion de la session incluent :

  • Changements et mutations du DOM de session

  • Actions des utilisateurs, y compris les clics, les défilements et les interactions avec les formulaires

  • Journaux de console et messages d'erreur

  • Événements DevTools du protocole Chrome (CDP)

  • Événements réseau et requêtes HTTP

Prérequis pour l'enregistrement des sessions

Pour activer l'enregistrement de session, vous devez :

  • Un compartiment Amazon S3 pour stocker les données d'enregistrement

  • Un rôle d'exécution IAM avec des autorisations d'écriture dans votre compartiment Amazon S3

  • Un outil de navigateur personnalisé configuré avec l'enregistrement activé

Configurer le rôle IAM pour l'enregistrement

Pour activer l'enregistrement de session, vous avez besoin d'un rôle d'exécution IAM avec les autorisations nécessaires pour écrire les données d'enregistrement sur Amazon S3 et pour y enregistrer l'activité. CloudWatch Pour obtenir des instructions détaillées sur la configuration des autorisations, voir Autorisations.

Le rôle d'exécution nécessite des autorisations supplémentaires au-delà des autorisations standard du navigateur :

{ "Sid": "S3Permissions", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:ListBucket", "s3:ListMultipartUploadParts", "s3:AbortMultipartUpload" ], "Resource": [ "arn:aws:s3:::your-recording-bucket", "arn:aws:s3:::your-recording-bucket/*" ] }, { "Sid": "CloudWatchLogsPermissions", "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": "*" }

your-recording-bucketRemplacez-le par le nom actuel de votre compartiment Amazon S3.

Étape 1 : Création d'un outil de navigation avec enregistrement

Créez un outil de navigation personnalisé avec l'enregistrement activé. Pour obtenir des instructions détaillées sur la création d'outils de navigateur, voir Création d'un AgentCore navigateur.

Lors de la création de votre outil de navigation, assurez-vous de :

  • Activer l'enregistrement de session dans la configuration

  • Spécifiez votre compartiment Amazon S3 et son préfixe pour le stockage des enregistrements

  • Utiliser le rôle d'exécution IAM de l'étape 1

Exemple utilisant le SDK Python :

import boto3 import uuid region = "us-west-2" bucket = "your-recording-bucket" client = boto3.client("bedrock-agentcore-control", region_name=region) response = client.create_browser( name="MyRecordingBrowser", description="Browser with session recording enabled", networkConfiguration={"networkMode": "PUBLIC"}, executionRoleArn="arn:aws:iam::123456789012:role/AgentCoreBrowserRecordingRole", clientToken=str(uuid.uuid4()), recording={ "enabled": True, "s3Location": { "bucket": bucket, "prefix": "browser-recordings" } } ) browser_identifier = response.get("browserId") or response.get("browserIdentifier") print(f"Created browser with recording: {browser_identifier}") print(f"Recordings will be stored at: s3://{bucket}/browser-recordings/")

Étape 2 : utilisez le navigateur compatible avec l'enregistrement

Utilisez votre navigateur compatible avec l'enregistrement avec n'importe quel framework d'automatisation. Toutes les interactions du navigateur seront automatiquement enregistrées. Exemple utilisant Strands :

from strands import Agent from strands_tools.browser import AgentCoreBrowser # Use the browser created with recording browser_identifier = "your-browser-identifier" region = "us-west-2" browser_tool = AgentCoreBrowser(region=region, identifier=browser_identifier) agent = Agent(tools=[browser_tool.browser]) prompt = ( "Navigate to https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/what-is-bedrock-agentcore.html " "and summarize the key features of AgentCore." ) response = agent(prompt) print("Agent Response:") print(response.message["content"][0]["text"])

Toutes les interactions au cours de cette session seront automatiquement enregistrées et téléchargées dans votre compartiment Amazon S3 à la fin de la session.

Étape 3 : Surveillez les sessions en direct et rejouez les enregistrements

La AWS console fournit des outils complets pour la surveillance en temps réel et l'analyse des sessions enregistrées.

Surveillance en direct

Surveillez les sessions du navigateur en temps réel et interagissez avec les sessions actives :

Pour accéder à la visualisation en direct dans la console

  1. Ouvrez la AgentCore console Amazon Bedrock et accédez aux outils Built-in

  2. Sélectionnez l'outil de votre navigateur dans la liste (par exemple,MyRecordingBrowser)

  3. Dans la section Sessions du navigateur, localisez une session active dont le statut est « Prêt » ou «  En cours »

  4. Dans la colonne Affichage en direct/enregistrement, cliquez sur l'URL « Afficher la session en direct » fournie

  5. La vue en direct s'ouvre dans une nouvelle fenêtre de navigateur, affichant la session de navigation en temps réel

L'interface de visualisation en direct fournit :

  • Real-time flux vidéo de la session du navigateur

  • Commandes interactives pour prendre le contrôle de l'automatisation ou la libérer

  • Indicateurs d'état de session et informations de connexion

  • Possibilité d'interagir directement avec le navigateur lorsque le contrôle est activé

Rediffusion et analyse de la session

Accédez à des enregistrements et à des analyses détaillés des sessions via l'interface de replay de la console :

Pour accéder à la rediffusion de session dans la console

  1. Accédez à l'outil de votre navigateur et sélectionnez une session terminée dont le statut est Terminé

  2. Cliquez sur Afficher l'enregistrement pour la session que vous souhaitez analyser

  3. La page de rediffusion de la session s'affiche avec des outils d'analyse complets

Fonctionnalités d'analyse de session

La console fournit de nombreux outils d'analyse :

  • Lecteur vidéo  : lecture interactive avec épurateur de chronologie pour la navigation

  • Navigation dans les pages  : panneau affichant toutes les pages visitées avec des plages de temps

  • Actions de l'utilisateur  : toutes les interactions de l'utilisateur avec horodatages, méthodes et détails

  • DOM de la page  : structure du DOM et contenu HTML pour chaque page

  • Journaux de la console  : sortie de la console du navigateur, erreurs et messages de journalisation

  • Événements CDP  : événements DevTools du protocole Chrome avec paramètres et résultats

  • Événements réseau  : requêtes HTTP, réponses, codes d'état et synchronisation

Naviguer dans les enregistrements

Utilisez les méthodes suivantes pour parcourir les enregistrements :

  • Cliquez sur les pages du panneau Pages pour accéder à des moments spécifiques

  • Cliquez sur les actions de l'utilisateur pour voir où elles se sont produites dans la chronologie

  • Utilisez le scrubber de chronologie vidéo pour une navigation précise

  • Choisissez Afficher les liens d'enregistrement dans les tableaux d'actions pour accéder à des interactions spécifiques

Étape 4 : accéder aux enregistrements par programmation

Accédez à des informations en direct et enregistrez des informations par programmation à l'aide du AgentCore SDK Amazon Bedrock et des API pour une intégration personnalisée et une analyse automatisée.

Accès programmatique à la visualisation en direct

Connectez-vous à des sessions de navigation en direct à l'aide du client du navigateur et du serveur de visualisation :

import time from rich.console import Console from bedrock_agentcore.tools.browser_client import browser_session from browser_viewer import BrowserViewerServer console = Console() def main(): try: # Create browser session with browser_session('us-west-2') as client: print("✅ Browser ready!") ws_url, headers = client.generate_ws_headers() # Start viewer server console.print("[cyan]Starting viewer server...[/cyan]") viewer = BrowserViewerServer(client, port=8005) viewer_url = viewer.start(open_browser=True) # Keep running while True: time.sleep(1) except KeyboardInterrupt: console.print("[yellow]Shutting down...[/yellow]") if 'client' in locals(): client.stop() console.print("✅ Browser session terminated") if __name__ == "__main__": main()

Accès à l'enregistrement programmatique

Accédez aux données d'enregistrement directement depuis Amazon S3 pour des flux de travail d'analyse personnalisés :

import boto3 s3_client = boto3.client('s3', region_name='us-west-2') # List recordings in your bucket bucket_name = "your-recording-bucket" prefix = "browser-recordings/" response = s3_client.list_objects_v2(Bucket=bucket_name, Prefix=prefix) print(f"Recordings in s3://{bucket_name}/{prefix}:") for obj in response.get('Contents', []): print(f" {obj['Key']} ({obj['Size']} bytes)") print(f" Last Modified: {obj['LastModified']}") print()

Structure des données d'enregistrement :

s3://your-recording-bucket/browser-recordings/ └── session-id/ ├── batch_1.ndjson.gz ├── batch_2.ndjson.gz └── batch_3.ndjson.gz

Chaque session crée un dossier avec l'ID de session, et les données d'enregistrement sont téléchargées par morceaux au fur et à mesure de la progression de la session.

Exemples programmatiques de rediffusion de session

Pour les cas d'utilisation avancés, vous pouvez créer des visionneuses de replay de session personnalisées et intégrer les données d'enregistrement dans vos propres flux de travail d'analyse.

Les GitHub exemples suivants montrent un visualiseur de session autonome et montrent à quoi ressemble l'expérience complète du navigateur lors de l'utilisation de la fonction de relecture de session du navigateur.

Pour des exemples supplémentaires, consultez la section Exemples de AgentCore navigateurs sur GitHub.

La visionneuse de rediffusion de session autonome est un outil distinct qui permet de visualiser les sessions de navigateur enregistrées directement depuis Amazon S3 sans créer de nouveau navigateur.

  • Connectez-vous directement à S3 pour visionner les enregistrements

  • Afficher n'importe quel enregistrement passé en spécifiant son ID de session

  • Afficher des messages d'erreur lorsque des artefacts sont absents de S3, avec des URL de replay de console spécifiques à l'ID de session

  • Interface de lecture vidéo interactive avec navigation chronologique

  • Marqueurs d'action sur la chronologie indiquant les formulaires remplis, les clics et les événements de navigation

  • Tableau d'observabilité affichant les pages parcourues avec la durée et les détails de l'URL

  • Événements de console, journaux CDP et journaux réseau pour chaque interaction de page

  • Suivi de la durée des sessions intégré au niveau de la page

  • Real-time vérification des actions avec corrélation visuelle entre la vidéo et les données d'action

Pour référence, consultez la section Exemples d'observabilité AgentCore du navigateur sur GitHub.

Un outil complet pour créer des sessions de navigateur avec des fonctionnalités d'enregistrement et de rediffusion avancées.

  • Créez des sessions de navigateur avec enregistrement automatique sur S3

  • Affichage en direct avec commande interactive (take/release)

  • Réglez la résolution de l'écran à la volée

  • Enregistrement automatique des sessions sur S3

  • Visionneuse de replay de session intégrée avec interface de lecteur vidéo

  • Nettoyage de la chronologie avec suivi précis de la localisation des actions

  • Page-by-page analyse avec chronologie de navigation et copie d'URL

  • Vérification des actions de remplissage du formulaire avec les détails de l'emplacement des clics

  • Suivi de la durée des sessions intégré au niveau de la page

  • Real-time vérification des actions avec corrélation visuelle entre les données vidéo et les données d'action

Pour référence, consultez la section Exemples de AgentCore navigateur sur GitHub.