Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Esecuzione locale del demone X-Ray
Puoi eseguire il AWS X-Ray demone localmente su Linux, macOS, Windows o in un contenitore Docker. Esegui il daemon per inoltrare i dati di traccia a X-Ray durante lo sviluppo e il test della tua applicazione strumentata. Scarica ed estrai il daemon utilizzando le istruzioni contenute in questa pagina.
Quando viene eseguito localmente, il daemon può leggere le credenziali da un file di credenziali (.aws/credentials
nella AWS SDK directory utente) o dalle variabili di ambiente. Per ulteriori informazioni, consulta Dare al demone il permesso di inviare dati a X-Ray.
Il demone ascolta i dati sulla porta 2000. UDP Puoi modificare la porta e altre opzioni utilizzando un file di configurazione e le opzioni della riga di comando. Per ulteriori informazioni, consulta Configurazione del demone AWS X-Ray.
Esecuzione del demone X-Ray su Linux
Puoi avviare il file eseguibile del daemon dalla riga di comando. Utilizza l'opzione -o
per eseguirlo in modalità locale e -n
per impostare la regione.
~/xray-daemon$ ./xray -o -n us-east-2
Per eseguire il daemon in background, utilizza &
.
~/xray-daemon$ ./xray -o -n us-east-2 &
Termina un processo daemon in esecuzione in background pkill
.
~$ pkill xray
Esecuzione del demone X-Ray in un contenitore Docker
Per eseguire il daemon in locale in un container Docker, salva il testo seguente in un file denominato Dockerfile
. Scarica l'immagine di esempio
Esempio Docker file — Amazon Linux
FROM amazonlinux RUN yum install -y unzip RUN curl -o daemon.zip https://s3.us-east-2.amazonaws.com/aws-xray-assets.us-east-2/xray-daemon/aws-xray-daemon-linux-3.x.zip RUN unzip daemon.zip && cp xray /usr/bin/xray ENTRYPOINT ["/usr/bin/xray", "-t", "0.0.0.0:2000", "-b", "0.0.0.0:2000"] EXPOSE 2000/udp EXPOSE 2000/tcp
Crea l'immagine del container docker build
.
~/xray-daemon$ docker build -t xray-daemon .
Esegui l'immagine in un container con docker run
.
~/xray-daemon$ docker run \
--attach STDOUT \
-v ~/.aws/:/root/.aws/:ro \
--net=host \
-e AWS_REGION=us-east-2 \
--name xray-daemon \
-p 2000:2000/udp \
xray-daemon -o
Questo comando utilizza le seguenti opzioni:
-
--attach STDOUT
— Visualizza l'output del demone nel terminale. -
-v ~/.aws/:/root/.aws/:ro
— Concedi al contenitore l'accesso in sola lettura alla.aws
directory per consentirgli di leggere le tue credenziali. AWS SDK -
AWS_REGION=
— Imposta la variabile dius-east-2
AWS_REGION
ambiente per indicare al demone quale regione usare. -
--net=host
— Collega il contenitore allahost
rete. I containers sulla rete dell'host possono comunicare tra loro senza pubblicare le porte. -
-p 2000:2000/udp
— Mappa la UDP porta 2000 sulla macchina alla stessa porta del contenitore. Questo non è necessaria per la comunicazione tra container nella stessa rete, ma consente di inviare segmenti al daemon dalla riga di comando o da un'applicazione non in esecuzione su Docker. -
--name xray-daemon
— Assegna un nome al contenitorexray-daemon
invece di generare un nome casuale. -
-o
(dopo il nome dell'immagine): aggiunge l'-o
opzione al punto di ingresso che esegue il demone all'interno del contenitore. Questa opzione indica al demone di funzionare in modalità locale per impedirgli di leggere i metadati delle EC2 istanze Amazon.
Per arrestare il daemon, utilizza docker stop
. Se effettui modifiche al file Dockerfile
e crei una nuova immagine, devi cancellare il container esistente prima di poterne creare un altro con lo stesso nome. Per eliminare il container, utilizza docker rm
.
$ docker stop xray-daemon
$ docker rm xray-daemon
Esecuzione del demone X-Ray su Windows
Puoi avviare il file eseguibile del daemon dalla riga di comando. Utilizza l'opzione -o
per eseguirlo in modalità locale e -n
per impostare la regione.
> .\xray_windows.exe -o -n us-east-2
Usa uno PowerShell script per creare ed eseguire un servizio per il demone.
Esempio PowerShell script - Windows
if ( Get-Service "AWSXRayDaemon" -ErrorAction SilentlyContinue ){
sc.exe stop AWSXRayDaemon
sc.exe delete AWSXRayDaemon
}
if ( Get-Item -path aws-xray-daemon -ErrorAction SilentlyContinue ) {
Remove-Item -Recurse -Force aws-xray-daemon
}
$currentLocation = Get-Location
$zipFileName = "aws-xray-daemon-windows-service-3.x.zip"
$zipPath = "$currentLocation\$zipFileName"
$destPath = "$currentLocation\aws-xray-daemon"
$daemonPath = "$destPath\xray.exe"
$daemonLogPath = "C:\inetpub\wwwroot\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)
sc.exe create AWSXRayDaemon binPath= "$daemonPath -f $daemonLogPath"
sc.exe start AWSXRayDaemon
Esecuzione del demone X-Ray su OS X
Puoi avviare il file eseguibile del daemon dalla riga di comando. Utilizza l'opzione -o
per eseguirlo in modalità locale e -n
per impostare la regione.
~/xray-daemon$ ./xray_mac -o -n us-east-2
Per eseguire il daemon in background, utilizza &
.
~/xray-daemon$ ./xray_mac -o -n us-east-2 &
Utilizza nohup
per evitare che il daemon venga terminato alla chiusura del terminale.
~/xray-daemon$ nohup ./xray_mac &