Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O DAB (Construtor de API de Dados) dá suporte ao OpenTelemetry para rastreamento distribuído e métricas, permitindo que você monitore e diagnostice o comportamento do aplicativo em REST, GraphQL, operações de banco de dados e middleware interno.
Rastreamentos do construtor de API de Dados
O DAB cria "atividades" do OpenTelemetry para:
- Solicitações HTTP de entrada (pontos de extremidade REST)
- GraphQL operations
- Database queries (per entity)
- Etapas internas do middleware (por exemplo, tratamento de solicitação, acompanhamento de erros)
Cada atividade inclui marcas detalhadas (metadados), como:
-
http.method,http.url, ,http.querystringstatus.code -
action.type(CRUD, operação GraphQL) -
user.role,user-agent -
data-source.type,data-source.name -
api.type(REST ou GraphQL)
Erros e exceções também são rastreados com informações detalhadas.
Métricas do construtor de API de Dados
O DAB emite métricas opentelemetry, como:
- Total Requests: Counter, labeled by HTTP method, status, endpoint, and API type.
- Errors: Counter, labeled by error type, HTTP method, status, endpoint, and API type.
- Request Duration: Histogram (in milliseconds), labeled as above.
- Active Requests: Up/down counter for concurrent requests.
As métricas usam a API do .NET Meter e o SDK do OpenTelemetry.
Configuration
Adicione uma open-telemetry seçãoruntime.telemetry em seu arquivo de configuração.
{
"runtime": {
"telemetry": {
"open-telemetry": {
"enabled": true,
"endpoint": "http://otel-collector:4317",
"service-name": "dab",
"exporter-protocol": "grpc"
}
}
}
}
CLI Options
Configure OpenTelemetry via CLI flags:
dab configure --otel-enabled truedab configure --otel-endpoint "http://otel-collector:4317"dab configure --otel-protocol "grpc"dab configure --otel-service-name "dab"dab configure --otel-headers
Exportar e visualizar
A telemetria é exportada por meio do SDK do .NET OpenTelemetry para o back-end configurado, como o Azure Monitor ou o Jaeger. Verifique se o back-end está em execução e acessível no especificado endpoint.
Implementation Notes
- Rastreamentos e métricas abrangem todas as operações REST, GraphQL e BD
- Os manipuladores de middleware e de erro também emitem telemetria
- O contexto é propagado por meio de solicitações