Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Deze handleiding laat zien hoe u Azure Container Apps configureert om logboeken, traceringen en metrische gegevens door te sturen naar Dynatrace met behulp van de beheerde OpenTelemetry-agent.
Zie Set up OpenTelemetry agents in Azure Container Apps voor meer informatie over de beheerde OpenTelemetry-agent.
Wat u leert
- Maak een Dynatrace-ingest-token met de vereiste scopes.
- Configureer een bestemming voor de Dynatrace OpenTelemetry Protocol (OTLP) met Bicep of via de Azure-portal.
- Configureer vereiste app-omgevingsvariabelen voor het exporteren van metrische gegevens.
- Pas configuratie-updates toe op uw bestaande Container Apps-omgeving en -app.
- Telemetrie controleren in Dynatrace.
Prerequisites
- Een Azure-abonnement waarin u resourcegroepen kunt maken en Azure Container Apps resources kunt implementeren.
- Een Dynatrace SaaS-omgeving.
- Azure CLI is geïnstalleerd en aangemeld.
- Azure Container Apps CLI-extensie geïnstalleerd.
az extension add --name containerapp --upgrade
Een Dynatrace-innametoken maken
Maak een Dynatrace API-token met deze machtigingen:
logs.ingestmetrics.ingestopenTelemetryTrace.ingest
Zie richtlijnen voor Dynatrace OTLP-authenticatie voor stappen voor het maken van tokens en details over machtigingen.
OpenTelemetry-bestemmingen configureren
Gebruik een van de volgende opties om Dynatrace te configureren als een OpenTelemetry-eindpunt in uw Container Apps-omgeving.
Important
Het configureren van een beheerde OpenTelemetry-bestemming produceert niet automatisch telemetrie. Uw toepassing moet ook worden geïnstrueerd om traceringen, metrische gegevens en logboeken te verzenden met behulp van een OpenTelemetry SDK.
CLI-variabelen instellen voor de implementatieopdracht:
$RESOURCE_GROUP = "<RESOURCE_GROUP_NAME>"
$DYNATRACE_OTLP_ENDPOINT = "https://<TENANT>.live.dynatrace.com/api/v2/otlp"
$DYNATRACE_API_TOKEN = "<DYNATRACE_INGEST_TOKEN>"
Gebruik alleen het OTLP-basiseindpunt (/api/v2/otlp). Voeg /v1/traces, /v1/metrics of /v1/logs niet toe; de beheerde agent voegt signaalpaden automatisch toe.
var dynatraceEndpoint = 'https://<TENANT>.live.dynatrace.com/api/v2/otlp'
var dynatraceApiKey = '<DYNATRACE_INGEST_TOKEN>'
var dynatraceAuthHeader = 'Api-Token ${dynatraceApiKey}'
var dynatraceOtlpDestinationName = 'dynatrace-otlp'
resource environment 'Microsoft.App/managedEnvironments@2026-03-02-preview' = {
name: '<managed-environment-name>'
location: '<region>'
properties: {
openTelemetryConfiguration: {
destinationsConfiguration: {
otlpConfigurations: [
{
name: dynatraceOtlpDestinationName
endpoint: dynatraceEndpoint
protocol: 'http'
insecure: false
headers: [
{
key: 'Authorization'
value: dynatraceAuthHeader
}
]
}
]
}
tracesConfiguration: {
destinations: [
dynatraceOtlpDestinationName
]
}
logsConfiguration: {
destinations: [
dynatraceOtlpDestinationName
]
}
metricsConfiguration: {
destinations: [
dynatraceOtlpDestinationName
]
}
}
}
}
Als u de vereiste omgevingsvariabelen wilt instellen, gebruikt u een resourceblok voor de container-app, zoals in het volgende voorbeeld:
resource app 'Microsoft.App/containerApps@2023-05-01' = {
name: '<CONTAINER_APP_NAME>'
location: '<REGION>'
properties: {
managedEnvironmentId: environment.id
template: {
containers: [
{
name: '<CONTAINER_NAME>'
image: '<IMAGE_NAME>'
env: [
{
name: 'OTEL_SERVICE_NAME'
value: '<SERVICE_NAME>'
}
{
name: 'OTEL_TRACES_EXPORTER'
value: 'otlp'
}
{
name: 'OTEL_METRICS_EXPORTER'
value: 'otlp'
}
{
name: 'OTEL_LOGS_EXPORTER'
value: 'otlp'
}
{
name: 'OTEL_EXPORTER_OTLP_METRICS_PROTOCOL'
value: 'http/protobuf'
}
{
name: 'OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE'
value: 'DELTA'
}
]
}
]
}
}
}
Dynatrace moet OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE=DELTA metrische gegevens opnemen.
Gebruik voor productie-implementaties beveiligde Bicep-parameters of Key Vault om tokenwaarden door te geven, in plaats van geheimen hard te coderen.
Nadat u de sjabloon hebt bijgewerkt, implementeert u de Bicep-configuratie vanaf de hoofdmap van de opslagplaats:
az deployment group create `
--resource-group $RESOURCE_GROUP `
--template-file infra/main.bicep `
--parameters @infra/main.parameters.json `
dynatraceEndpoint="$DYNATRACE_OTLP_ENDPOINT" `
dynatraceApiKey="$DYNATRACE_API_TOKEN"
Gebruik dezelfde eindpunt- en tokenwaarden die eerder in deze handleiding worden weergegeven, inclusief de OTLP-basiseindpuntindeling.
Uw container-app is nu geconfigureerd voor het verzenden van telemetrie naar Dynatrace.
OpenTelemetry-gegevens verifiëren in Dynatrace
Nadat u de configuratie hebt voltooid, moet uw Container App beginnen met het verzenden van telemetrie naar Dynatrace via de beheerde OpenTelemetry-agent. De snelste manier om te bevestigen dat metrische gegevens, logboeken en traceringen allemaal vanuit uw toepassing binnenkomen, is door de Services-app te openen in Dynatrace. De Services-app biedt één scherm waarin u alle drie de telemetriesignalen voor uw service op één plaats kunt valideren.
Uw telemetrie controleren:
- Open de Services-app in Dynatrace.
- Zoek uw Container App Service en controleer of er metrische gegevens, logboeken en traceringen aanwezig zijn voor de verwachte service- of omgevingscontext.
Als u achtergrondinformatie nodig hebt over hoe OpenTelemetry-gegevens worden opgenomen in Dynatrace, raadpleegt u de introductiehandleiding voor OpenTelemetry.
Als telemetrie ontbreekt of niet wordt weergegeven zoals verwacht, raadpleegt u de gids voor het oplossen van problemen met OpenTelemetry.