Partilhar via


add-telemetry comando

Adicione ou atualize as definições do OpenTelemetry e do Azure Application Insights num ficheiro de configuração existente do Data API builder. Se a runtime.telemetry secção não existir, ela é criada. Opções não especificadas deixam os valores existentes inalterados.

Observação

As definições de telemetria não são configuráveis com dab configure. Use dab add-telemetry para todas as runtime.telemetry alterações.

Para orientações conceptuais e walkthroughs de ponta a ponta, consulte Use OpenTelemetry e activity traces e Use Azure Application Insights.

Sintaxe

dab add-telemetry [options]

Visão rápida

Option Resumo
-c, --config Caminho do arquivo de configuração. Padrão dab-config.json.

Secção OpenTelemetry

Option Resumo
--otel-enabled Ativar ou desativar o OpenTelemetry.
--otel-endpoint URL do endpoint do coletor OpenTelemetry.
--otel-protocol Protocolo de exportação. Valores permitidos: grpc, httpprotobuf.
--otel-service-name Etiqueta de serviço em toda a telemetria.
--otel-headers Cabeçalhos extra para enviar ao coletor OpenTelemetry.

Secção Azure Application Insights

Option Resumo
--app-insights-enabled Ative ou desative o Azure Application Insights.
--app-insights-conn-string Cadeia de ligação do Application Insights.

-c, --config

Caminho para o arquivo de configuração. Por defeito, dab-config.json a menos que dab-config.<DAB_ENVIRONMENT>.json exista, onde DAB_ENVIRONMENT é uma variável de ambiente.

Exemplo

dab add-telemetry \
  --config ./my-config.json \
  --otel-enabled true

--otel-enabled

Ative ou desative o exportador do OpenTelemetry. Valores aceites: true, false.

Exemplo

dab add-telemetry \
  --otel-enabled true

Configuração resultante

{
  "runtime": {
    "telemetry": {
      "open-telemetry": {
        "enabled": true
      }
    }
  }
}

--otel-endpoint

URL do seu coletor OpenTelemetry ou back-end. Para gRPC, use http://<host>:<port>. Para HTTP, inclua o caminho completo, por exemplo http://<host>:<port>/v1/traces.

Exemplo

dab add-telemetry \
  --otel-enabled true \
  --otel-endpoint "http://localhost:4317"

Configuração resultante

{
  "runtime": {
    "telemetry": {
      "open-telemetry": {
        "enabled": true,
        "endpoint": "http://localhost:4317"
      }
    }
  }
}

--otel-protocol

Protocolo de exportação para o exportador OpenTelemetry. Valores permitidos: grpc, httpprotobuf. O padrão é grpc.

Exemplo

dab add-telemetry \
  --otel-enabled true \
  --otel-endpoint "http://localhost:4318" \
  --otel-protocol "httpprotobuf"

Configuração resultante

{
  "runtime": {
    "telemetry": {
      "open-telemetry": {
        "enabled": true,
        "endpoint": "http://localhost:4318",
        "exporter-protocol": "httpprotobuf"
      }
    }
  }
}

--otel-service-name

Etiqueta de nome de serviço anexada a todos os trilhos e métricas. Aparece como o identificador do serviço no seu backend de telemetria. O padrão é dab.

Exemplo

dab add-telemetry \
  --otel-enabled true \
  --otel-service-name "my-dab-api"

Configuração resultante

{
  "runtime": {
    "telemetry": {
      "open-telemetry": {
        "enabled": true,
        "service-name": "my-dab-api"
      }
    }
  }
}

--otel-headers

Cabeçalhos HTTP extra a incluir ao exportar telemetria para o coletor. Usa uma lista separada key=value por vírgulas. Use esta opção para terminais de coletores autenticados que requerem uma chave API ou cabeçalho de autorização.

Exemplo

dab add-telemetry \
  --otel-enabled true \
  --otel-endpoint "https://collector.example.com:4317" \
  --otel-headers "api-key=my-secret-key"

--app-insights-enabled

Ativar ou desativar a telemetria do Azure Application Insights. Valores aceites: true, false.

Exemplo

dab add-telemetry \
  --app-insights-enabled true

Configuração resultante

{
  "runtime": {
    "telemetry": {
      "application-insights": {
        "enabled": true
      }
    }
  }
}

--app-insights-conn-string

String de ligação para o seu recurso Azure Application Insights. Use uma referência de variável de ambiente para evitar comprometer segredos com o controlo de versão.

Advertência

Nunca codifique a cadeia de ligação diretamente no seu ficheiro de configuração. Use @env('<variable-name>') um gestor secreto.

Exemplo

dab add-telemetry \
  --app-insights-enabled true \
  --app-insights-conn-string "@env('APP_INSIGHTS_CONN_STRING')"

Configuração resultante

{
  "runtime": {
    "telemetry": {
      "application-insights": {
        "enabled": true,
        "connection-string": "@env('APP_INSIGHTS_CONN_STRING')"
      }
    }
  }
}

Exemplo completo: OpenTelemetry and Application Insights

O exemplo seguinte permite tanto o OpenTelemetry como o Application Insights num único comando.

dab add-telemetry \
  --otel-enabled true \
  --otel-endpoint "http://localhost:4317" \
  --otel-protocol "grpc" \
  --otel-service-name "my-dab-api" \
  --app-insights-enabled true \
  --app-insights-conn-string "@env('APP_INSIGHTS_CONN_STRING')"

Configuração resultante

{
  "runtime": {
    "telemetry": {
      "open-telemetry": {
        "enabled": true,
        "endpoint": "http://localhost:4317",
        "service-name": "my-dab-api",
        "exporter-protocol": "grpc"
      },
      "application-insights": {
        "enabled": true,
        "connection-string": "@env('APP_INSIGHTS_CONN_STRING')"
      }
    }
  }
}