

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
<a name="xray-daemon-local"></a>

**Nota**  
Avviso di SDK/Daemon manutenzione a raggi X: il 25 febbraio 2026, X-Ray SDKs/Daemon entrerà in modalità di manutenzione, in cui AWS limiterà le versioni di AWS X-Ray SDK e Daemon per risolvere solo problemi di sicurezza. Per ulteriori informazioni sulla tempistica del supporto, consulta. [Cronologia di X-Ray SDK e Daemon Support](xray-sdk-daemon-timeline.md) Ti consigliamo di migrare a. OpenTelemetry Per ulteriori informazioni sulla migrazione a OpenTelemetry, vedere [Migrazione dalla strumentazione a raggi X](https://docs.aws.amazon.com/xray/latest/devguide/xray-sdk-migration.html) alla strumentazione. OpenTelemetry 

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](xray-daemon.md#xray-daemon-downloading).

Quando viene eseguito localmente, il daemon può leggere le credenziali da un file di credenziali AWS SDK (`.aws/credentials`nella directory utente) o dalle variabili di ambiente. Per ulteriori informazioni, consulta [Dare al demone il permesso di inviare dati a X-Ray](xray-daemon.md#xray-daemon-permissions).

Il daemon resta in attesa dei dati UDP sulla porta 2000. 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](xray-daemon-configuration.md).

## Esecuzione del demone X-Ray su Linux
<a name="xray-daemon-local-linux"></a>

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
<a name="xray-daemon-local-docker"></a>

Per eseguire il daemon in locale in un container Docker, salva il testo seguente in un file denominato `Dockerfile`. Scarica l'[immagine di esempio](https://gallery.ecr.aws/xray/aws-xray-daemon) completa su Amazon ECR. Per ulteriori informazioni, consulta [la sezione Download del demone](xray-daemon.md#xray-daemon-downloading).

**Example 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 SDK. AWS 
+ `AWS_REGION=us-east-2`— Imposta la variabile di `AWS_REGION` ambiente per indicare al demone quale regione usare.
+ `--net=host`— Collega il contenitore alla `host` rete. I containers sulla rete dell'host possono comunicare tra loro senza pubblicare le porte.
+ `-p 2000:2000/udp`— Mappa la porta UDP 2000 del computer sulla 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](xray-api-sendingdata.md#xray-api-daemon) o da un'applicazione non in esecuzione su Docker.
+ `--name xray-daemon`— Assegna un nome al contenitore `xray-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
<a name="xray-daemon-local-windows"></a>

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.

**Example 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
<a name="xray-daemon-local-osx"></a>

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 &
```