Ausführen des X-Ray-DaemonsAWS Elastic Beanstalk - AWS X-Ray

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Ausführen des X-Ray-DaemonsAWS Elastic Beanstalk

So leiten Sie Trace-Daten von Ihrer Anwendung anAWS X-Rayverwenden, können Sie den X-Ray-Daemon auf den Amazon EC2 EC2-Instances Ihrer Elastic Beanstalk-Umgebung ausführen. Eine Liste der unterstützten Plattformen finden Sie unterKonfigurierenAWS X-RayDebuggingimAWS Elastic BeanstalkEntwicklerhandbuchaus.

Anmerkung

Der Daemon verwendet das Instance-Profil Ihrer Umgebung für Berechtigungen. Anweisungen zum Hinzufügen von Berechtigungen zum Elastic Beanstalk-Instance-Profil finden Sie unterDem Daemon die Erlaubnis geben, Daten an X-Ray zu sendenaus.

Elastic Beanstalk-Plattformen bieten eine Konfigurationsoption, die Sie festlegen können, um den Daemon automatisch auszuführen. Sie können den Daemon in einer Konfigurationsdatei in Ihrem Quellcode oder durch Wahl einer Option in der Elastic Beanstalk-Konsole aktivieren. Wenn Sie die Konfigurationsoption aktivieren, wird der Daemon in der Instance installiert und als Service ausgeführt.

Die auf Elastic Beanstalk-Plattformen enthaltene Version ist möglicherweise nicht die neueste Version. Dem Thema "Unterstützte Plattformen" können Sie entnehmen, welche Version des Daemons für Ihre Plattformkonfiguration verfügbar ist.

Elastic Beanstalk stellt den X-Ray-Daemon nicht auf der Multicontainer Docker (Amazon ECS) -Plattform zur Verfügung.

Verwenden der Elastic Beanstalk-X-Ray-Daemon

Verwenden Sie die Konsole, um die X-Ray-Integration zu aktivieren, oder konfigurieren Sie sie in Ihrem Anwendungsquellcode mit einer Konfigurationsdatei.

So aktivieren Sie den X-Ray-Daemon in der Elastic Beanstalk-Konsole
  1. Öffnen SieElastic Beanstalk-Konsoleaus.

  2. Navigieren Sie zur-Managementkonsolefür Ihre Umgebung.

  3. Wählen Sie Konfiguration.

  4. Wählen Sie Software Settings (Softwareeinstellungen).

  5. Wählen Sie für X-Ray daemon Enabled.

  6. Wählen Sie Apply (Anwenden) aus.

Sie können eine Konfigurationsdatei in Ihren Quellcode aufnehmen, um die Konfiguration zwischen verschiedenen Umgebungen übertragbar zu gestalten.

Beispiel .ebextensions/xray-daemon.config
option_settings: aws:elasticbeanstalk:xray: XRayEnabled: true

Elastic Beanstalk übergibt eine Konfigurationsdatei an den Daemon und gibt Protokolle an einem Standardstandort aus.

Auf Windows Server-Plattformen
  • KonfigurationsdateiC:\Program Files\Amazon\XRay\cfg.yaml

  • Protokollec:\Program Files\Amazon\XRay\logs\xray-service.log

Auf Linux-Plattformen
  • Konfigurationsdatei/etc/amazon/xray/cfg.yaml

  • Protokolle/var/log/xray/xray.log

Elastic Beanstalk bietet Tools zum Ziehen von Instance-Protokollen aus demAWS Management Consoleoder Befehlszeile Sie können Elastic Beanstalk anweisen, die X-Ray-Daemon-Protokolle einzuschließen, indem Sie eine Aufgabe mit einer Konfigurationsdatei hinzufügen.

Beispiel .ebextensions/xray-logs.config – Linux
files: "/opt/elasticbeanstalk/tasks/taillogs.d/xray-daemon.conf" : mode: "000644" owner: root group: root content: | /var/log/xray/xray.log
Beispiel .ebextensions/xray-logs.config – Windows Server
files: "c:/Program Files/Amazon/ElasticBeanstalk/config/taillogs.d/xray-daemon.conf" : mode: "000644" owner: root group: root content: | c:\Progam Files\Amazon\XRay\logs\xray-service.log

Siehe .Anzeigen von Protokollen aus den Amazon EC2 EC2-Instances Ihrer Elastic Beanstalk-UmgebungimAWS Elastic BeanstalkEntwicklerhandbuchWeitere Informationen finden Sie unter.

Manuelles Herunterladen und Ausführen des X-Ray-Daemons (Erweitert)

Wenn der X-Ray-Daemon für Ihre Plattformkonfiguration nicht verfügbar ist, können Sie sie von Amazon S3 herunterladen und mit einer Konfigurationsdatei ausführen.

Verwenden Sie eine Elastic Beanstalk-Konfigurationsdatei, um den Daemon herunterzuladen und auszuführen.

Beispiel .ebextensions/xray.config – Linux
commands: 01-stop-tracing: command: yum remove -y xray ignoreErrors: true 02-copy-tracing: command: curl https://s3.us-east-2.amazonaws.com/aws-xray-assets.us-east-2/xray-daemon/aws-xray-daemon-3.x.rpm -o /home/ec2-user/xray.rpm 03-start-tracing: command: yum install -y /home/ec2-user/xray.rpm files: "/opt/elasticbeanstalk/tasks/taillogs.d/xray-daemon.conf" : mode: "000644" owner: root group: root content: | /var/log/xray/xray.log "/etc/amazon/xray/cfg.yaml" : mode: "000644" owner: root group: root content: | Logging: LogLevel: "debug" Version: 2
Beispiel .ebextensions/xray.config – Windows Server
container_commands: 01-execute-config-script: command: Powershell.exe -ExecutionPolicy Bypass -File c:\\temp\\installDaemon.ps1 waitAfterCompletion: 0 files: "c:/temp/installDaemon.ps1": content: | if ( Get-Service "AWSXRayDaemon" -ErrorAction SilentlyContinue ) { sc.exe stop AWSXRayDaemon sc.exe delete AWSXRayDaemon } $targetLocation = "C:\Program Files\Amazon\XRay" if ((Test-Path $targetLocation) -eq 0) { mkdir $targetLocation } $zipFileName = "aws-xray-daemon-windows-service-3.x.zip" $zipPath = "$targetLocation\$zipFileName" $destPath = "$targetLocation\aws-xray-daemon" if ((Test-Path $destPath) -eq 1) { Remove-Item -Recurse -Force $destPath } $daemonPath = "$destPath\xray.exe" $daemonLogPath = "$targetLocation\xray-daemon.log" $url = "https://s3.dualstack.us-west-2.amazonaws.com/aws-xray-assets.us-west-2/xray-daemon/aws-xray-daemon-windows-service-3.x.zip" Invoke-WebRequest -Uri $url -OutFile $zipPath Add-Type -Assembly "System.IO.Compression.Filesystem" [io.compression.zipfile]::ExtractToDirectory($zipPath, $destPath) New-Service -Name "AWSXRayDaemon" -StartupType Automatic -BinaryPathName "`"$daemonPath`" -f `"$daemonLogPath`"" sc.exe start AWSXRayDaemon encoding: plain "c:/Program Files/Amazon/ElasticBeanstalk/config/taillogs.d/xray-daemon.conf" : mode: "000644" owner: root group: root content: | C:\Program Files\Amazon\XRay\xray-daemon.log

In diesen Beispielen wird die Protokolldatei des Daemons außerdem der Elastic Beanstalkfragmentaufgabe hinzugefügt, um sie einzubeziehen, wenn Sie Protokolle mit der Konsole oder Elastic Beanstalk-Befehlszeilenschnittstelle (EB CLI) anfordern.