Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento průvodce ukazuje, jak nakonfigurovat Azure Container Apps pro předávání protokolů, trasování a metrik do dynatrace pomocí spravovaného agenta OpenTelemetry.
Další informace o spravovaném agentovi OpenTelemetry najdete v tématu Set up OpenTelemetry agents in Azure Container Apps.
Co se naučíte
- Vytvořte token Dynatrace pro ingest s požadovanými oprávněními.
- Nakonfigurujte cíl protokolu OTLP (Dynatrace OpenTelemetry Protocol) pomocí Bicep nebo portálu Azure.
- Nakonfigurujte požadované proměnné prostředí aplikace pro export metrik.
- Použijte aktualizace konfigurace pro stávající prostředí a aplikaci Container Apps.
- Ověřte telemetrii v dynatrace.
Předpoklady
- Předplatné Azure, ve kterém můžete vytvářet skupiny prostředků a nasazovat prostředky služby Azure Container Apps.
- Prostředí Dynatrace SaaS.
- Azure CLI nainstalované a přihlášené.
- Rozšíření rozhraní příkazového řádku pro Azure Container Apps je nainstalované.
az extension add --name containerapp --upgrade
Vytvořte token pro ingest Dynatrace
Vytvořte token rozhraní Dynatrace API s těmito obory:
logs.ingestmetrics.ingestopenTelemetryTrace.ingest
Postup vytvoření tokenu a podrobnosti oprávnění najdete v pokynech k ověřování Dynatrace OTLP.
Konfigurace cílů OpenTelemetry
Pomocí jedné z následujících možností nakonfigurujte Dynatrace jako koncový bod OpenTelemetry v prostředí Container Apps.
Important
Konfigurace spravovaného cíle OpenTelemetry automaticky nevede k vytváření telemetrie. Vaše aplikace musí být také instrumentována k odesílání tras, metrik a logů pomocí sady SDK OpenTelemetry.
Nastavte proměnné CLI pro příkaz pro nasazení:
$RESOURCE_GROUP = "<RESOURCE_GROUP_NAME>"
$DYNATRACE_OTLP_ENDPOINT = "https://<TENANT>.live.dynatrace.com/api/v2/otlp"
$DYNATRACE_API_TOKEN = "<DYNATRACE_INGEST_TOKEN>"
Použijte pouze základní koncový bod OTLP (/api/v2/otlp). Nepřidávejte /v1/traces, /v1/metrics ani /v1/logs; spravovaný agent automaticky přidává cesty signálů.
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@2024-10-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
]
}
}
}
}
K nastavení požadovaných proměnných prostředí použijte blok prostředků aplikace kontejneru, jako je následující příklad:
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 vyžaduje OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE=DELTA pro příjem metrik.
Pro produkční nasazení předávejte hodnoty tokenů prostřednictvím zabezpečených parametrů v Bicepu nebo služby Key Vault namísto pevného zakódování tajných údajů.
Po aktualizaci šablony nasaďte konfiguraci Bicep z kořenového adresáře úložiště:
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"
Použijte stejné hodnoty koncového bodu a tokenu uvedené výše v této příručce, včetně formátu základního koncového bodu OTLP.
Vaše aplikace kontejneru je teď nakonfigurovaná tak, aby odesílala telemetrická data do dynatrace.
Ověření dat OpenTelemetry v dynatrace
Po dokončení konfigurace by vaše aplikace kontejneru měla začít odesílat telemetrii do Dynatrace prostřednictvím spravovaného agenta OpenTelemetry. Nejrychlejší způsob, jak potvrdit, že metriky, protokoly a trasování pocházejí z vaší aplikace, je otevřít aplikaci Služby v dynatrace. Aplikace Services poskytuje jednu obrazovku, kde můžete ověřit všechny tři signály telemetrie pro vaši službu na jednom místě.
Ověření telemetrie:
- Otevřete aplikaci Služby v dynatrace.
- Vyhledejte službu Container App Service a ověřte, že metriky, protokoly a trasování existují pro očekávaný kontext služby nebo prostředí.
Pokud potřebujete základní informace o tom, jak se data OpenTelemetry ingestují do dynatrace, přečtěte si úvodní příručku OpenTelemetry.
Pokud telemetrie chybí nebo se nezobrazuje podle očekávání, prohlédni si průvodce odstraňováním potíží s OpenTelemetry.