Exportação de telemetria sem coletor usando o AWS Distro para OpenTelemetry (ADOT)
É possível usar os SDKs do ADOT para operar sem coletor e enviar os rastreamentos e logs diretamente para endpoints do OTLP.
nota
O Application Signals inclui recursos de pesquisa de transações. Para evitar custos duplicados, desabilite o Application Signals no SDK do ADOT e mantenha OTEL_AWS_APPLICATION_SIGNALS_ENABLED definido como false (configuração padrão).
Tópicos
Pré-requisito
Certifique-se de que a Pesquisa de transações esteja habilitada para enviar spans para o endpoint do OTLP do X-Ray. Para obter mais informações, consulte Conceitos básicos da Pesquisa de transações.
Configurar as permissões do IAM para seu perfil
Siga as etapas abaixo para anexar as políticas do IAM necessárias para o seu perfil:
Rastreamentos:
-
Abra o console do IAM, em https://console.aws.amazon.com/iam/
. -
Escolha Perfis e localize e selecione seu perfil configurado.
-
Na guia Permissões, escolha Adicionar permissões e, em seguida, Anexar políticas.
-
Usando a caixa de pesquisa, procure a política
AWSXrayWriteOnlyPolicy. -
Selecione a política
AWSXrayWriteOnlyPolicye escolha Adicionar permissões.
Logs:
-
Abra o console do IAM, em https://console.aws.amazon.com/iam/
. -
Escolha Perfis e localize e selecione seu perfil configurado.
-
Na guia Permissões, escolha Adicionar permissões e depois Criar política em linha.
-
Selecione CloudWatch Logs para o serviço e, em Ações permitidas, filtre e selecione:
logs:PutLogEvents logs:DescribeLogGroups logs:DescribeLogStreams -
Confira abaixo um exemplo de política do IAM que concede as permissões necessárias:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "CloudWatchLogsAccess", "Effect": "Allow", "Action": [ "logs:PutLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": [ "arn:aws:logs:*:*:log-group:*" ] } ] }
Configurar os provedores de credenciais
O ADOT usa os SDKs da AWS para descobrir automaticamente as credenciais válidas necessárias para exportar seus dados de telemetria para a AWS. Para obter orientação sobre como configurar credenciais para seu ambiente específico, consulte a documentação sobre como os SDKs da AWS recuperam as credenciais.
Configuração de credenciais do IAM para hosts on-premises:
Configure suas credenciais da AWS no host on-premises ao inserir o comando a seguir. Substitua ACCESS_KEY_ID e SECRET_ACCESS_KEY pelas credenciais do seu usuário ou perfil do IAM configurado.
$ 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
Habilitação dos SDKs do ADOT
É possível habilitar o envio de logs e rastreamentos da sua aplicação diretamente para endpoints do OTLP por meio do SDK do AWS Distro para OpenTelemetry (ADOT) em Java, Node.js, Python e .NET.
- Java
-
nota
Você deve usar o ADOT Java Agent versão 2.11.2 ou posterior para que esses recursos estejam disponíveis.
-
Faça download da versão mais recente do agente de instrumentação automática em Java do AWS Distro para OpenTelemetry. Você pode baixar a versão mais recente ao usar este comando:
curl -L -O https://github.com/aws-observability/aws-otel-java-instrumentation/releases/latest/download/aws-opentelemetry-agent.jarÉ possível visualizar informações sobre todas as versões liberadas em aws-otel-java-instrumentation Releases
. Para habilitar o exportador diferente que envia telemetria diretamente para endpoints do OTLP e otimizar os benefícios, use as seguintes variáveis de ambiente antes de iniciar a aplicação:
Rastreamentos:
-
Defina
OTEL_EXPORTER_OTLP_TRACES_ENDPOINTpara especificar o endpoint de rastreamentos do OTLP do X-Ray:https://xray.[AWSRegion].amazonaws.com/v1/tracesPor exemplo:
export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="https://xray.us-west-2.amazonaws.com/v1/traces" -
Defina
OTEL_TRACES_EXPORTERcomootlp(é opcional e será o valor padrão se essa variável de ambiente não estiver definida). -
Defina a varável
OTEL_EXPORTER_OTLP_TRACES_PROTOCOLcomohttp/protobuf(é opcional e será o valor padrão se essa variável de ambiente não estiver definida). -
Defina a variável
OTEL_RESOURCE_ATTRIBUTESpara especificar as informações a seguir como pares de chave/valor. Essas variáveis de ambiente são usadas pelo Application Signals, e são convertidas em anotações de rastreamentos do X-Ray e em dimensões de métricas do CloudWatch.-
(Opcional)
service.namedefine o nome do serviço. Isso será exibido como o nome do serviço para a aplicação nos painéis do Application Signals. Se você não fornecer um valor para essa chave, o padrãoUnknownServiceserá usado. -
(Opcional)
deployment.environmentdefine o ambiente em que a aplicação é executada. Isso será exibido como o ambiente Hospedado em da aplicação. -
(Opcional) Para habilitar a correlação de logs, em
OTEL_RESOURCE_ATTRIBUTES, defina uma variável de ambienteaws.log.group.namesadicional para os grupos de logs da sua aplicação. Ao fazer isso, será possível correlacionar os rastreamentos e métricas da sua aplicação com as entradas de log relevantes desses grupos de logs. Para essa variável, substitua$YOUR_APPLICATION_LOG_GROUPpelos nomes do grupo de logs da sua aplicação. Se você tiver vários grupos de logs, é possível usar um e comercial (&) para separá-los, como neste exemplo:aws.log.group.names=log-group-1&log-group-2. Para permitir que a métrica registre a correlação em log, basta definir essa variável ambiental atual. Para obter mais informações, consulte Habilitar a correlação entre métrica e logs. Para habilitar a correlação entre logs e rastreamento, você também precisará alterar a configuração de registro em log em sua aplicação. Para obter mais informações, consulte Habilitar a correlação entre rastreamento e logs.
-
Logs:
-
Defina
OTEL_EXPORTER_OTLP_LOGS_ENDPOINTpara especificar o endpoint de logs do OTLP do CloudWatch:https://logs.[AWSRegion].amazonaws.com/v1/logsPor exemplo:
export OTEL_EXPORTER_OTLP_LOGS_ENDPOINT="https://logs.us-west-2.amazonaws.com/v1/logs" -
Defina
OTEL_EXPORTER_OTLP_LOGS_HEADERSpara especificar o grupo de logs e o fluxo de logs (observação: eles devem ser criados antes da execução do ADOT) para os quais você deseja exportar seus logs:x-aws-log-group=[CW-LOG-GROUP-NAME],x-aws-log-stream=[CW-LOG-STREAM-NAME]Por exemplo:
export OTEL_EXPORTER_OTLP_LOGS_HEADERS=x-aws-log-group=MyLogGroup,x-aws-log-stream=default -
Defina
OTEL_LOGS_EXPORTERcomootlp(é opcional e será o valor padrão se essa variável de ambiente não estiver definida). -
Defina a varável
OTEL_EXPORTER_OTLP_LOGS_PROTOCOLcomohttp/protobuf(é opcional e será o valor padrão se essa variável de ambiente não estiver definida).
-
Defina
JAVA_TOOL_OPTIONSpara especificar o caminho em que o agente de instrumentação automática em Java do AWS Distro para OpenTelemetry está armazenado. Por exemplo:export JAVA_TOOL_OPTIONS=" -javaagent:$AWS_ADOT_JAVA_INSTRUMENTATION_PATH" export AWS_ADOT_JAVA_INSTRUMENTATION_PATH="./aws-opentelemetry-agent.jar"Agora, sua aplicação deve estar sendo executada com a instrumentação Java do ADOT e vai gerar logs e spans. As extensões serão armazenadas no grupo de logs
aws/spansdo CloudWatch, enquanto os logs serão armazenados no grupo de logs especificado no cabeçalhoOTEL_EXPORTER_OTLP_LOGS_HEADERS. Você também pode visualizar os logs e as métricas correlacionados com suas extensões no console de rastreamentos e métricas do CloudWatch.Inicie a aplicação com as variáveis de ambiente listadas na etapa anterior. Veja a seguir um exemplo de um script inicial.
JAVA_TOOL_OPTIONS=" -javaagent:$AWS_ADOT_JAVA_INSTRUMENTATION_PATH" \ OTEL_METRICS_EXPORTER=none \ OTEL_TRACES_EXPORTER=otlp \ OTEL_EXPORTER_OTLP_TRACES_PROTOCOL=http/protobuf \ OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://xray.us-east-1.amazonaws.com/v1/traces \ OTEL_LOGS_EXPORTER=otlp \ OTEL_EXPORTER_OTLP_LOGS_PROTOCOL=http/protobuf \ OTEL_EXPORTER_OTLP_LOGS_ENDPOINT=https://logs.us-east-1.amazonaws.com/v1/logs \ OTEL_EXPORTER_OTLP_LOGS_HEADERS=x-aws-log-group=MyLogGroup,x-aws-log-stream=default OTEL_RESOURCE_ATTRIBUTES="service.name=$YOUR_SVC_NAME" \ java -jar $MY_JAVA_APP.jar
-
- Node.js
-
nota
Você deve usar o ADOT JavaScript versão 0.7.0 ou posterior para que esses recursos estejam disponíveis.
Faça download da versão mais recente da instrumentação automática em JavaScript do AWS Distro para OpenTelemetry. Instale-o executando o seguinte comando da .
npm install @aws/aws-distro-opentelemetry-node-autoinstrumentationÉ possível visualizar informações sobre todas as versões liberadas em aws-otel-js-instrumentation Releases
. Para habilitar o exportador diferente que envia telemetria diretamente para endpoints do OTLP e otimizar os benefícios, use as seguintes variáveis de ambiente antes de iniciar a aplicação:
Rastreamentos:
-
Defina
OTEL_EXPORTER_OTLP_TRACES_ENDPOINTpara especificar o endpoint de rastreamentos do OTLP do X-Ray:https://xray.[AWSRegion].amazonaws.com/v1/tracesPor exemplo:
export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="https://xray.us-west-2.amazonaws.com/v1/traces" -
Defina
OTEL_TRACES_EXPORTERcomootlp(é opcional e será o valor padrão se essa variável de ambiente não estiver definida). -
Defina a varável
OTEL_EXPORTER_OTLP_TRACES_PROTOCOLcomohttp/protobuf(é opcional e será o valor padrão se essa variável de ambiente não estiver definida). -
Defina a variável
OTEL_RESOURCE_ATTRIBUTESpara especificar as informações a seguir como pares de chave/valor. Essas variáveis de ambiente são usadas pelo Application Signals, e são convertidas em anotações de rastreamentos do X-Ray e em dimensões de métricas do CloudWatch.-
(Opcional)
service.namedefine o nome do serviço. Isso será exibido como o nome do serviço para a aplicação nos painéis do Application Signals. Se você não fornecer um valor para essa chave, o padrãoUnknownServiceserá usado. -
(Opcional)
deployment.environmentdefine o ambiente em que a aplicação é executada. Essa variável será exibida como o ambiente Hospedado em da aplicação. -
(Opcional) Para habilitar a correlação de logs, em
OTEL_RESOURCE_ATTRIBUTES, defina uma variável de ambienteaws.log.group.namesadicional para os grupos de logs da sua aplicação. Ao fazer isso, será possível correlacionar os rastreamentos e métricas da sua aplicação com as entradas de log relevantes desses grupos de logs. Para essa variável, substitua$YOUR_APPLICATION_LOG_GROUPpelos nomes do grupo de logs da sua aplicação. Se você tiver vários grupos de logs, é possível usar um e comercial (&) para separá-los, como neste exemplo:aws.log.group.names=log-group-1&log-group-2. Para permitir que a métrica registre a correlação em log, basta definir essa variável ambiental atual. Para obter mais informações, consulte Habilitar a correlação entre métrica e logs. Para habilitar a correlação entre logs e rastreamento, você também precisará alterar a configuração de registro em log em sua aplicação. Para obter mais informações, consulte Habilitar a correlação entre rastreamento e logs.
-
Logs:
-
Defina
OTEL_EXPORTER_OTLP_LOGS_ENDPOINTpara especificar o endpoint de logs do OTLP do CloudWatch:https://logs.[AWSRegion].amazonaws.com/v1/logsPor exemplo:
export OTEL_EXPORTER_OTLP_LOGS_ENDPOINT="https://logs.us-west-2.amazonaws.com/v1/logs" -
Defina
OTEL_EXPORTER_OTLP_LOGS_HEADERSpara especificar o grupo de logs e o fluxo de logs (observação: eles devem ser criados antes da execução do ADOT) para os quais você deseja exportar seus logs:x-aws-log-group=[CW-LOG-GROUP-NAME],x-aws-log-stream=[CW-LOG-STREAM-NAME]Por exemplo:
export OTEL_EXPORTER_OTLP_LOGS_HEADERS=x-aws-log-group=MyLogGroup,x-aws-log-stream=default -
Defina
OTEL_LOGS_EXPORTERcomootlp(é opcional e será o valor padrão se essa variável de ambiente não estiver definida). -
Defina a varável
OTEL_EXPORTER_OTLP_LOGS_PROTOCOLcomohttp/protobuf(é opcional e será o valor padrão se essa variável de ambiente não estiver definida).
-
Agora, sua aplicação deve estar sendo executada com a instrumentação JavaScript do ADOT e vai gerar logs e spans. As extensões serão armazenadas no grupo de logs
aws/spansdo CloudWatch, enquanto os logs serão armazenados no grupo de logs especificado no cabeçalhoOTEL_EXPORTER_OTLP_LOGS_HEADERS. Você também pode visualizar os logs e as métricas correlacionados com suas extensões no console de rastreamentos e métricas do CloudWatch.Inicie a aplicação com as variáveis de ambiente listadas na etapa anterior. Veja a seguir um exemplo de um script inicial.
Substitua
$SVC_NAMEpelo nome da aplicação. Isso será exibido como o nome da aplicação.OTEL_METRICS_EXPORTER=none \ OTEL_TRACES_EXPORTER=otlp \ OTEL_EXPORTER_OTLP_TRACES_PROTOCOL=http/protobuf \ OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://xray.us-east-1.amazonaws.com/v1/traces \ OTEL_LOGS_EXPORTER=otlp \ OTEL_EXPORTER_OTLP_LOGS_PROTOCOL=http/protobuf \ OTEL_EXPORTER_OTLP_LOGS_ENDPOINT=https://logs.us-east-1.amazonaws.com/v1/logs \ OTEL_EXPORTER_OTLP_LOGS_HEADERS=x-aws-log-group=MyLogGroup,x-aws-log-stream=default OTEL_RESOURCE_ATTRIBUTES="service.name=$YOUR_SVC_NAME" \ node --require '@aws/aws-distro-opentelemetry-node-autoinstrumentation/register' your-application.js
- Python
-
nota
Você deve usar o ADOT Python versão 0.10.0 ou posterior e ter
botocoreinstalado para que esses recursos estejam disponíveis.Faça download da versão mais recente da instrumentação automática em Python do AWS Distro para OpenTelemetry. Instale-o executando o seguinte comando da .
pip install aws-opentelemetry-distroÉ possível visualizar as informações sobre todas as versões liberadas em aws-otel-python-instrumentation Releases
. Para habilitar o exportador diferente que envia telemetria diretamente para endpoints do OTLP e otimizar os benefícios, use as seguintes variáveis de ambiente antes de iniciar a aplicação:
Para configurações de rastreamentos e logs, você deve definir as seguintes variáveis de ambiente:
-
OTEL_PYTHON_DISTROparaaws_distro -
OTEL_PYTHON_CONFIGURATORparaaws_configurator
Rastreamentos:
-
Defina
OTEL_EXPORTER_OTLP_TRACES_ENDPOINTpara especificar o endpoint de rastreamentos do OTLP do X-Ray:https://xray.[AWSRegion].amazonaws.com/v1/tracesPor exemplo:
export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="https://xray.us-west-2.amazonaws.com/v1/traces" -
Defina
OTEL_TRACES_EXPORTERcomootlp(é opcional e será o valor padrão se essa variável de ambiente não estiver definida). -
Defina a varável
OTEL_EXPORTER_OTLP_TRACES_PROTOCOLcomohttp/protobuf(é opcional e será o valor padrão se essa variável de ambiente não estiver definida). -
Defina a variável
OTEL_RESOURCE_ATTRIBUTESpara especificar as informações a seguir como pares de chave/valor. Essas variáveis de ambiente são usadas pelo Application Signals, e são convertidas em anotações de rastreamentos do X-Ray e em dimensões de métricas do CloudWatch.-
(Opcional)
service.namedefine o nome do serviço. Isso será exibido como o nome do serviço para a aplicação nos painéis do Application Signals. Se você não fornecer um valor para essa chave, o padrãoUnknownServiceserá usado. -
(Opcional)
deployment.environmentdefine o ambiente em que a aplicação é executada. Essa variável será exibida como o ambiente Hospedado em da aplicação. -
(Opcional) Para habilitar a correlação de logs, em
OTEL_RESOURCE_ATTRIBUTES, defina uma variável de ambienteaws.log.group.namesadicional para os grupos de logs da sua aplicação. Ao fazer isso, será possível correlacionar os rastreamentos e métricas da sua aplicação com as entradas de log relevantes desses grupos de logs. Para essa variável, substitua$YOUR_APPLICATION_LOG_GROUPpelos nomes do grupo de logs da sua aplicação. Se você tiver vários grupos de logs, é possível usar um e comercial (&) para separá-los, como neste exemplo:aws.log.group.names=log-group-1&log-group-2. Para permitir que a métrica registre a correlação em log, basta definir essa variável ambiental atual. Para obter mais informações, consulte Habilitar a correlação entre métrica e logs. Para habilitar a correlação entre logs e rastreamento, você também precisará alterar a configuração de registro em log em sua aplicação. Para obter mais informações, consulte Habilitar a correlação entre rastreamento e logs.
-
Logs:
-
Defina
OTEL_PYTHON_LOGGING_AUTO_INSTRUMENTATION_ENABLEDcomotrue -
Defina
OTEL_EXPORTER_OTLP_LOGS_ENDPOINTpara especificar o endpoint de logs do OTLP do CloudWatch:https://logs.[AWSRegion].amazonaws.com/v1/logsPor exemplo:
export OTEL_EXPORTER_OTLP_LOGS_ENDPOINT="https://logs.us-west-2.amazonaws.com/v1/logs" -
Defina
OTEL_EXPORTER_OTLP_LOGS_HEADERSpara especificar o grupo de logs e o fluxo de logs (observação: eles devem ser criados antes da execução do ADOT) para os quais você deseja exportar seus logs:x-aws-log-group=[CW-LOG-GROUP-NAME],x-aws-log-stream=[CW-LOG-STREAM-NAME]Por exemplo:
export OTEL_EXPORTER_OTLP_LOGS_HEADERS=x-aws-log-group=MyLogGroup,x-aws-log-stream=default -
Defina
OTEL_LOGS_EXPORTERcomootlp(é opcional e será o valor padrão se essa variável de ambiente não estiver definida). -
Defina a varável
OTEL_EXPORTER_OTLP_LOGS_PROTOCOLcomohttp/protobuf(é opcional e será o valor padrão se essa variável de ambiente não estiver definida).
-
Agora, sua aplicação deve estar sendo executada com a instrumentação Python do ADOT e vai gerar logs e spans. As extensões serão armazenadas no grupo de logs
aws/spansdo CloudWatch, enquanto os logs serão armazenados no grupo de logs especificado no cabeçalhoOTEL_EXPORTER_OTLP_LOGS_HEADERS. Você também pode visualizar os logs e as métricas correlacionados com suas extensões no console de rastreamentos e métricas do CloudWatch.Inicie a aplicação com as variáveis de ambiente listadas na etapa anterior. Veja a seguir um exemplo de um script inicial.
Substitua
$SVC_NAMEpelo nome da aplicação. Isso será exibido como o nome da aplicação.Substitua
$PYTHON_APPpelo local e pelo nome da aplicação.OTEL_METRICS_EXPORTER=none \ OTEL_TRACES_EXPORTER=otlp \ OTEL_EXPORTER_OTLP_TRACES_PROTOCOL=http/protobuf \ OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://xray.us-east-1.amazonaws.com/v1/traces \ OTEL_LOGS_EXPORTER=otlp \ OTEL_EXPORTER_OTLP_LOGS_PROTOCOL=http/protobuf \ OTEL_EXPORTER_OTLP_LOGS_ENDPOINT=https://logs.us-east-1.amazonaws.com/v1/logs \ OTEL_EXPORTER_OTLP_LOGS_HEADERS=x-aws-log-group=MyLogGroup,x-aws-log-stream=default OTEL_PYTHON_LOGGING_AUTO_INSTRUMENTATION_ENABLED=true OTEL_RESOURCE_ATTRIBUTES="service.name=$YOUR_SVC_NAME" \ opentelemetry-instrument python $MY_PYTHON_APP.py
- .Net
-
nota
-
É necessário ter o ADOT .NET versão 1.8.0 ou posterior para que esses recursos estejam disponíveis.
-
Atualmente, a compactação não é compatível.
-
Atualmente, os logs não são compatíveis.
Faça download da versão mais recente do agente de instrumentação automática para .NET do AWS Distro para OpenTelemetry. É possível visualizar as informações sobre todas as versões liberadas em aws-otel-dotnet-instrumentation Releases
. Para habilitar os diferentes exportadores que enviam telemetria diretamente para endpoints do OTLP e otimizar os benefícios, use as seguintes variáveis de ambiente antes de iniciar sua aplicação (substitua
dotnet-service-namena variávelOTEL_RESOURCE_ATTRIBUTESdo ambiente pelo nome do serviço de sua escolha):Rastreamentos:
-
Você DEVE definir
OTEL_TRACES_EXPORTERcomonone -
Você DEVE definir
OTEL_AWS_SIG_V4_ENABLEDcomotrueEsse recurso não é habilitado automaticamente no. NET. A variável de ambiente é necessária especificamente para identificar esse caso de uso na instrumentação do .NET. Esse requisito é exclusivo do .NET e não se aplica a outras linguagens compatíveis.
Confira abaixo um exemplo de configuração para 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_TRACES_PROTOCOL=http/protobuf export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://xray.us-east-1.amazonaws.com/v1/tracesConfira abaixo um exemplo de configuração para 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_TRACES_PROTOCOL=http/protobuf $env:OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://xray.us-east-1.amazonaws.com/v1/tracesInicie a aplicação com as variáveis de ambiente listadas na etapa anterior.
(Opcional) Como alternativa, você pode usar os scripts de instalação fornecidos para ajudar na instalação e configuração do pacote de instrumentação automática do AWS Distro for OpenTelemetry .NET.
Para Linux, baixe e instale o script de instalação do Bash na página de versões do 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-namePara Windows Server, baixe e instale o script de instalação do PowerShell na página de versões do GitHub:
# 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-OpenTelemetryForIISVocê pode encontrar o pacote NuGet do pacote de instrumentação automática do AWS Distro for OpenTelemetry .NET no repositório oficial do NuGet
. Certifique-se de verificar o arquivo README para obter instruções.
-