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à.
Esportazione di tracce senza raccoglitore utilizzando AWS Distro for (ADOT) OpenTelemetry SDKs
È possibile utilizzare ADOT SDKs per non utilizzare il raccoglitore e inviare le tracce direttamente all'endpoint OTLP (per le tracce).
Per impostazione predefinita, Application Signals è abilitato quando abiliti Transaction Search. Application Signals non è supportato su AWS Distro for OpenTelemetry e deve essere disabilitato.
Prerequisito
Assicurati che Transaction Search sia abilitato per inviare intervalli all'endpoint OTLP X-Ray. Per ulteriori informazioni, consulta Guida introduttiva a Transaction Search.
Configurare le autorizzazioni IAM per Amazon EC2
Segui questi passaggi per collegare la policy AWSXrayWriteOnlyPolicy
IAM al ruolo IAM della tua EC2 istanza Amazon:
Apri la CloudWatch console all'indirizzo https://console.aws.amazon.com/cloudwatch/.
-
Scegli Ruoli e trova e seleziona il ruolo utilizzato dalla tua EC2 istanza Amazon.
-
Nella scheda Autorizzazioni, scegli Aggiungi autorizzazioni, quindi Allega politiche.
-
Utilizzando la casella di ricerca, cerca la AWSXrayWriteOnlyPolicy
politica.
-
Seleziona la AWSXrayWriteOnlyPolicy
politica e scegli Aggiungi autorizzazioni.
Configura le autorizzazioni IAM per gli host locali
Segui questi passaggi per creare un utente IAM che possa essere utilizzato per fornire autorizzazioni ai tuoi host locali.
Apri la console all' CloudWatch indirizzo. https://console.aws.amazon.com/cloudwatch/
Scegli Utenti, quindi Crea utente.
-
Scegli Utenti, Crea utente.
-
In Dettagli utente, in Nome utente, inserisci un nome per il nuovo utente IAM. Questo è il nome di accesso AWS che verrà utilizzato per autenticare il tuo host.
-
Scegli Next (Successivo).
-
Nella pagina Imposta le autorizzazioni, in Opzioni di autorizzazione, seleziona Allega direttamente le politiche.
-
Dall'elenco delle politiche di autorizzazione, seleziona la AWSXrayWriteOnlyPolicy
politica da aggiungere al tuo utente.
-
Scegli Next (Successivo).
-
Nella pagina Rivedi e crea, assicurati di essere soddisfatto del nome utente e che la AWSXrayWriteOnlyPolicy
politica si trovi nel riepilogo delle autorizzazioni.
-
Selezionare Create user (Crea utente).
-
Crea e recupera la tua chiave di AWS accesso e la chiave segreta:
-
Nel riquadro di navigazione della console IAM, scegli Utenti, quindi seleziona il nome utente dell'utente che hai creato nel passaggio precedente.
-
Nella pagina dell'utente, scegli la scheda Credenziali di sicurezza.
-
Nella sezione Chiavi di accesso, scegli Crea chiave di accesso.
-
Per Creare la chiave di accesso Step 1, scegli Command Line Interface (CLI).
-
Per la creazione della chiave di accesso (Passaggio 2), inserisci facoltativamente un tag e scegli Avanti.
-
Per la fase 3 di creazione della chiave di accesso, seleziona Scarica il file.csv per salvare un file.csv con la chiave di accesso e la chiave di accesso segreta del tuo utente IAM. Queste informazioni ti servono per i passaggi successivi.
-
Seleziona Fatto.
-
Configura AWS le tue credenziali nell'host locale immettendo il seguente comando. Sostituisci ACCESS_KEY_ID
e SECRET_ACCESS_ID
con la chiave di accesso appena generata e la chiave di accesso segreta dal file.csv scaricato nel passaggio precedente.
$ aws configure
AWS Access Key ID [None]: ACCESS_KEY_ID
AWS Secret Access Key [None]: SECRET_ACCESS_ID
Default region name [None]: MY_REGION
Default output format [None]: json
Attivazione di ADOT SDKs
Puoi abilitare l'invio di tracce per la tua applicazione direttamente all'endpoint OTLP da AWS Distro for OpenTelemetry (ADOT) SDK su Java, Node.js, Python e.Net.
- Java
-
-
Scarica l'ultima versione dell'agente di strumentazione automatica AWS Distro for OpenTelemetry Java. È possibile scaricare l'ultima versione utilizzando questo comando:
curl -L -O https://github.com/aws-observability/aws-otel-java-instrumentation/releases/latest/download/aws-opentelemetry-agent.jar
Per visualizzare tutte le versioni rilasciate, consulta le aws-otel-java-instrumentation versioni.
Per abilitare l'esportatore che invia direttamente le tracce all'endpoint X-Ray OTLP Traces e per ottimizzare i vantaggi, utilizzate le variabili di ambiente per fornire informazioni aggiuntive prima di avviare l'applicazione.
Per la variabile OTEL_RESOURCE_ATTRIBUTES
, specifica le seguenti informazioni come coppie chiave-valore:
(Facoltativo) service.name
imposta il nome del servizio. Questo verrà visualizzato come nome del servizio per l'applicazione nei dashboard di Application Signals. Quando non si fornisce un valore per questa chiave, UnknownService
viene utilizzato il valore predefinito di.
(Facoltativo) deployment.environment
imposta l'ambiente in cui viene eseguita l'applicazione. Questo verrà visualizzato come ambiente Hosted In dell'applicazione. Quando non lo specificate, viene utilizzata una delle seguenti impostazioni predefinite:
-
Se si tratta di un'istanza che fa parte di un gruppo Auto Scaling, è impostata su ec2:name-of-Auto-Scaling-group
-
Se si tratta di un' EC2 istanza Amazon che non fa parte di un gruppo Auto Scaling, è impostata su ec2:default
-
Se si tratta di un host locale, è impostato su generic:default
Questa variabile di ambiente viene utilizzata solo da Application Signals e viene convertita in annotazioni di tracce a raggi X e dimensioni metriche CloudWatch
Per la OTEL_EXPORTER_OTLP_TRACES_ENDPOINT
variabile, specificare l'endpoint delle tracce OTLP a raggi X:. https://xray.[AWSRegion
].amazonaws.com/v1/traces
Per esempio:
export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="https://xray.us-west-2.amazonaws.com/v1/traces"
Per la JAVA_TOOL_OPTIONS
variabile, specificare il percorso in cui è archiviato l'agente di strumentazione automatica AWS Distro for OpenTelemetry Java.
export JAVA_TOOL_OPTIONS=" -javaagent:$AWS_ADOT_JAVA_INSTRUMENTATION_PATH"
Per esempio:
export AWS_ADOT_JAVA_INSTRUMENTATION_PATH="./aws-opentelemetry-agent.jar"
Per la OTEL_METRICS_EXPORTER
variabile, si consiglia di impostare il valore su none.
Per la OTEL_LOGS_EXPORTER
variabile, si consiglia di impostare il valore su none.
Per la OTEL_TRACES_EXPORTER
variabile, è necessario impostare il valore per otlp
(questo è facoltativo ed è il valore predefinito se questa variabile di ambiente non è impostata).
Per la OTEL_EXPORTER_OTLP_PROTOCOL
variabile, è necessario impostare il valore su http/protobuf
(questo è facoltativo ed è il valore predefinito se questa variabile di ambiente non è impostata). L'endpoint OTLP X-Ray attualmente supporta solo il protocollo HTTP.
L'applicazione dovrebbe ora funzionare con la strumentazione AWS Distro for OpenTelemetry Java e genererà degli intervalli. Questi intervalli sono memorizzati nel tuo account. aws/spans
CloudWatch LogsLogGroup Puoi anche visualizzare le tracce e le metriche correlate agli intervalli nella console CloudWatch Traces and Metrics.
Avvia l'applicazione con le variabili di ambiente che hai impostato. Ecco un esempio di script iniziale.
(Nota: la configurazione seguente supporta solo le versioni 1.32.2 e successive dell'agente AWS Distro for OpenTelemetry auto-instrumentation for Java.)
JAVA_TOOL_OPTIONS=" -javaagent:$AWS_ADOT_JAVA_INSTRUMENTATION_PATH" \
OTEL_METRICS_EXPORTER=none \
OTEL_LOGS_EXPORTER=none \
OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf \
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://xray.us-east-1.amazonaws.com/v1/traces \
OTEL_RESOURCE_ATTRIBUTES="service.name=$YOUR_SVC_NAME" \
java -jar $MY_JAVA_APP.jar
- Node.js
-
Scarica l'ultima versione dell'agente AWS Distro for OpenTelemetry JavaScript auto-instrumentation for Node.js. È possibile installare utilizzando il comando:
npm install @aws/aws-distro-opentelemetry-node-autoinstrumentation
Per visualizzare informazioni su tutte le versioni rilasciate, vedere AWS Distro for OpenTelemetry JavaScript instrumentation.
Per abilitare l'esportatore che invia direttamente le tracce all'endpoint OTLP a raggi X e per ottimizzare i vantaggi, utilizzate le variabili di ambiente per fornire informazioni aggiuntive prima di avviare l'applicazione.
Per la variabile OTEL_RESOURCE_ATTRIBUTES
, specifica le seguenti informazioni come coppie chiave-valore:
(Facoltativo) service.name
imposta il nome del servizio. Questo verrà visualizzato come nome del servizio per l'applicazione nei dashboard di Application Signals. Quando non si fornisce un valore per questa chiave, UnknownService
viene utilizzato il valore predefinito di.
(Facoltativo) deployment.environment
imposta l'ambiente in cui viene eseguita l'applicazione. Questo verrà visualizzato come ambiente ospitato dell'applicazione nei pannelli di controllo di Application Signals. Quando non si specifica questa variabile, viene utilizzata una delle seguenti impostazioni predefinite:
-
Se si tratta di un'istanza che fa parte di un gruppo Auto Scaling, è impostata su ec2:name-of-Auto-Scaling-group
-
Se si tratta di un' EC2 istanza Amazon che non fa parte di un gruppo Auto Scaling, è impostata su ec2:default
-
Se si tratta di un host locale, è impostato su generic:default
Questa variabile di ambiente viene utilizzata solo da Application Signals e viene convertita in annotazioni di tracce a raggi X e CloudWatch dimensioni metriche.
Per la OTEL_EXPORTER_OTLP_TRACES_ENDPOINT
variabile, specificare l'endpoint delle tracce OTLP a raggi X:. https://xray.[AWSRegion
].amazonaws.com/v1/traces
Per esempio:
export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="https://xray.us-west-2.amazonaws.com/v1/traces"
Per la OTEL_METRICS_EXPORTER
variabile, si consiglia di impostare il valore su none. Le metriche di Application Signals vengono generate dall'endpoint OTLP.
Per la OTEL_LOGS_EXPORTER
variabile, si consiglia di impostare il valore su none.
Per la OTEL_TRACES_EXPORTER
variabile, è necessario impostare il valore per otlp
(questo è facoltativo ed è il valore predefinito se questa variabile di ambiente non è impostata).
Per la OTEL_EXPORTER_OTLP_PROTOCOL
variabile, è necessario impostare il valore su http/protobuf
(questo è facoltativo ed è il valore predefinito se questa variabile di ambiente non è impostata). L'endpoint OTLP X-Ray attualmente supporta solo il protocollo HTTP.
L'applicazione dovrebbe ora funzionare con la strumentazione AWS Distro for OpenTelemetry Java e genererà degli intervalli. Questi intervalli sono memorizzati nel tuo account. aws/spans
CloudWatch LogsLogGroup Puoi anche visualizzare le tracce e le metriche correlate agli intervalli nella console CloudWatch Traces and Metrics.
Avvia l'applicazione con le variabili di ambiente che hai impostato. Ecco un esempio di script iniziale.
(Nota: sostituisci $ SVC_NAME
con il nome dell'applicazione. Viene visualizzato come nome dell'applicazione.
OTEL_METRICS_EXPORTER=none \
OTEL_LOGS_EXPORTER=none \
OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf \
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://xray.us-east-1.amazonaws.com/v1/traces \
OTEL_RESOURCE_ATTRIBUTES="service.name=$SVC_NAME
" \
node —require '@aws/aws-distro-opentelemetry-node-autoinstrumentation/register' your-application.js
- Python
-
Scarica l'ultima versione dell'agente di AWS strumentazione automatica Distro for OpenTelemetry Python. È possibile installare utilizzando il comando:
pip install aws-opentelemetry-distro
Per consentire all'esportatore di inviare direttamente le tracce all'endpoint OTLP a raggi X e ottimizzare i vantaggi, utilizzate le variabili di ambiente per fornire informazioni aggiuntive prima di avviare l'applicazione.
Per la variabile OTEL_RESOURCE_ATTRIBUTES
, specifica le seguenti informazioni come coppie chiave-valore:
(Facoltativo) service.name
imposta il nome del servizio. Questo verrà visualizzato come nome del servizio per l'applicazione nei dashboard di Application Signals. Quando non si fornisce un valore per questa chiave, UnknownService
viene utilizzato il valore predefinito di.
(Facoltativo) deployment.environment
imposta l'ambiente in cui viene eseguita l'applicazione. Questo verrà visualizzato come ambiente ospitato dell'applicazione nei pannelli di controllo di Application Signals. Quando non lo specificate, viene utilizzata una delle seguenti impostazioni predefinite:
-
Se si tratta di un'istanza che fa parte di un gruppo Auto Scaling, è impostata su ec2:name-of-Auto-Scaling-group
-
Se si tratta di un' EC2 istanza Amazon che non fa parte di un gruppo Auto Scaling, è impostata su ec2:default
-
Se si tratta di un host locale, è impostato su generic:default
Questa variabile di ambiente viene utilizzata solo da Application Signals e viene convertita in annotazioni di tracce a raggi X e CloudWatch dimensioni metriche.
Per la OTEL_EXPORTER_OTLP_TRACES_ENDPOINT
variabile, specificare l'endpoint delle tracce OTLP a raggi X:. https://xray.[AWSRegion
].amazonaws.com/v1/traces
Per esempio:
export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="https://xray.us-west-2.amazonaws.com/v1/traces"
Per la OTEL_METRICS_EXPORTER
variabile, si consiglia di impostare il valore su none. Le metriche di Application Signals vengono generate dall'endpoint OTLP.
Per la OTEL_LOGS_EXPORTER
variabile, si consiglia di impostare il valore su none.
Per la OTEL_TRACES_EXPORTER
variabile, è necessario impostare il valore per otlp
(questo è facoltativo ed è il valore predefinito se questa variabile di ambiente non è impostata).
Per la OTEL_EXPORTER_OTLP_PROTOCOL
variabile, è necessario impostare il valore su http/protobuf
(questo è facoltativo ed è il valore predefinito se questa variabile di ambiente non è impostata). L'endpoint OTLP X-Ray attualmente supporta solo il protocollo HTTP.
L'applicazione dovrebbe ora funzionare con la strumentazione AWS Distro for OpenTelemetry Java e genererà degli intervalli. Questi intervalli sono memorizzati nel tuo account. aws/spans
CloudWatch LogsLogGroup Puoi anche visualizzare le tracce e le metriche correlate agli intervalli nella console CloudWatch Traces and Metrics.
Avvia l'applicazione con le variabili di ambiente che hai impostato. Ecco un esempio di script iniziale.
(Nota: sostituisci $ SVC_NAME
con il nome dell'applicazione e sostituisci $ PYTHON_APP
con la posizione e il nome dell'applicazione.
OTEL_METRICS_EXPORTER=none \
OTEL_LOGS_EXPORTER=none \
OTEL_PYTHON_DISTRO=aws_distro \
OTEL_PYTHON_CONFIGURATOR=aws_configurator \
OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf \
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://xray.us-east-1.amazonaws.com/v1/traces \
OTEL_RESOURCE_ATTRIBUTES="service.name=$SVC_NAME
" \
opentelemetry-instrument python $MY_PYTHON_APP
.py
- .Net
-
Per abilitare l'esportatore che invia direttamente le tracce all'endpoint X-Ray OTLP Traces e per ottimizzare i vantaggi, imposta le variabili di ambiente per fornire informazioni aggiuntive prima di avviare l'applicazione. Queste variabili sono necessarie anche per configurare la strumentazione.NET.
Sostituisci dotnet-service-name
la variabile di OTEL_RESOURCE_ATTRIBUTES
ambiente con il nome di servizio di tua scelta.
Imposta OTEL_TRACES_EXPORTER=none
.
Imposta OTEL_AWS_SIG_V4_ENABLED=true
.
Un esempio per Linux.
export INSTALL_DIR=OpenTelemetryDistribution
export CORECLR_ENABLE_PROFILING=1
export CORECLR_PROFILER={918728DD-259F-4A6A-AC2B-B85E1B658318}
export CORECLR_PROFILER_PATH=${INSTALL_DIR}/linux-x64/OpenTelemetry.AutoInstrumentation.Native.so
export DOTNET_ADDITIONAL_DEPS=${INSTALL_DIR}/AdditionalDeps
export DOTNET_SHARED_STORE=${INSTALL_DIR}/store
export DOTNET_STARTUP_HOOKS=${INSTALL_DIR}/net/OpenTelemetry.AutoInstrumentation.StartupHook.dll
export OTEL_DOTNET_AUTO_HOME=${INSTALL_DIR}
export OTEL_DOTNET_AUTO_PLUGINS="AWS.Distro.OpenTelemetry.AutoInstrumentation.Plugin, AWS.Distro.OpenTelemetry.AutoInstrumentation"
export OTEL_TRACES_EXPORTER=none
export OTEL_AWS_SIG_V4_ENABLED=true
export OTEL_RESOURCE_ATTRIBUTES=service.name=dotnet-service-name
export OTEL_METRICS_EXPORTER=none
export OTEL_LOGS_EXPORTER=none
export OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf
export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://xray.us-east-1.amazonaws.com/v1/traces
Un esempio per Windows Server.
$env:INSTALL_DIR = "OpenTelemetryDistribution"
$env:CORECLR_ENABLE_PROFILING = 1
$env:CORECLR_PROFILER = "{918728DD-259F-4A6A-AC2B-B85E1B658318}"
$env:CORECLR_PROFILER_PATH = Join-Path $env:INSTALL_DIR "win-x64/OpenTelemetry.AutoInstrumentation.Native.dll"
$env:DOTNET_ADDITIONAL_DEPS = Join-Path $env:INSTALL_DIR "AdditionalDeps"
$env:DOTNET_SHARED_STORE = Join-Path $env:INSTALL_DIR "store"
$env:DOTNET_STARTUP_HOOKS = Join-Path $env:INSTALL_DIR "net/OpenTelemetry.AutoInstrumentation.StartupHook.dll"
$env:OTEL_DOTNET_AUTO_HOME = $env:INSTALL_DIR
$env:OTEL_DOTNET_AUTO_PLUGINS = "AWS.Distro.OpenTelemetry.AutoInstrumentation.Plugin, AWS.Distro.OpenTelemetry.AutoInstrumentation"
$env:OTEL_TRACES_EXPORTER=none
$env:OTEL_AWS_SIG_V4_ENABLED=true
$env:OTEL_RESOURCE_ATTRIBUTES=service.name=dotnet-service-name
$env:OTEL_METRICS_EXPORTER=none
$env:OTEL_LOGS_EXPORTER=none
$env:OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf
$env:OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://xray.us-east-1.amazonaws.com/v1/traces
Avviate l'applicazione con le variabili di ambiente.
(Facoltativo) In alternativa, è possibile utilizzare gli script di installazione forniti per facilitare l'installazione e la configurazione del pacchetto di strumentazione automatica AWS Distro for OpenTelemetry .NET.
Per Linux, scarica e installa lo script di installazione di Bash dalla pagina delle versioni: GitHub
# Download and Install
curl -L -O https://github.com/aws-observability/aws-otel-dotnet-instrumentation/releases/latest/download/aws-otel-dotnet-install.sh
chmod +x ./aws-otel-dotnet-install.sh
./aws-otel-dotnet-install.sh
# Instrument
. $HOME/.otel-dotnet-auto/instrument.shexport OTEL_RESOURCE_ATTRIBUTES=service.name=dotnet-service-name
Per Windows Server, scarica e installa lo script di PowerShell installazione dalla pagina delle GitHub versioni:
# Download and Install
$module_url = "https://github.com/aws-observability/aws-otel-dotnet-instrumentation/releases/latest/download/AWS.Otel.DotNet.Auto.psm1"
$download_path = Join-Path $env:temp "AWS.Otel.DotNet.Auto.psm1"
Invoke-WebRequest -Uri $module_url -OutFile $download_path
Import-Module $download_path
Install-OpenTelemetryCore
# Instrument
Import-Module $download_path
Register-OpenTelemetryForCurrentSession -OTelServiceName "dotnet-service-name"
Register-OpenTelemetryForIIS
Puoi trovare il NuGet pacchetto del pacchetto di strumentazione automatica AWS Distro for OpenTelemetry .NET nel repository ufficiale. NuGet Assicurati di controllare il file README per le istruzioni.