Condividi tramite


add-telemetry comando

Aggiungere o aggiornare le impostazioni di OpenTelemetry e Azure Application Insights in un file di configurazione del generatore di API dati esistente. Se la runtime.telemetry sezione non esiste, viene creata. Le opzioni non specificate lasciano invariati i valori esistenti.

Annotazioni

Le impostazioni di telemetria non sono configurabili con dab configure. Usare dab add-telemetry per tutte le runtime.telemetry modifiche.

Per indicazioni concettuali e procedure dettagliate end-to-end, vedere Usare tracce opentelemetry e attività eUsare Azure Application Insights.

Sintassi

dab add-telemetry [options]

Sguardo rapido

Opzione Sommario
-c, --config Percorso del file di configurazione. Valore predefinito dab-config.json.

Sezione OpenTelemetry

Opzione Sommario
--otel-enabled Abilitare o disabilitare OpenTelemetry.
--otel-endpoint URL dell'endpoint dell'agente di raccolta OpenTelemetry.
--otel-protocol Protocollo di esportazione. Valori consentiti: grpc, httpprotobuf.
--otel-service-name Tag del nome del servizio in tutti i dati di telemetria.
--otel-headers Intestazioni aggiuntive da inviare all'agente di raccolta OpenTelemetry.

Sezione di Azure Application Insights

Opzione Sommario
--app-insights-enabled Abilitare o disabilitare Azure Application Insights.
--app-insights-conn-string Stringa di connessione di Application Insights.

-c, --config

Percorso del file di configurazione. Per impostazione predefinita, a dab-config.json meno che non dab-config.<DAB_ENVIRONMENT>.json esista, dove DAB_ENVIRONMENT è una variabile di ambiente.

Esempio

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

--otel-enabled

Abilitare o disabilitare l'utilità di esportazione OpenTelemetry. Valori accettati: true, false.

Esempio

dab add-telemetry \
  --otel-enabled true

Configurazione risultante

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

--otel-endpoint

URL dell'agente di raccolta OpenTelemetry o del back-end. Per gRPC, usare http://<host>:<port>. Per HTTP, includere il percorso completo, ad esempio http://<host>:<port>/v1/traces.

Esempio

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

Configurazione risultante

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

--otel-protocol

Protocollo di esportazione per l'utilità di esportazione OpenTelemetry. Valori consentiti: grpc, httpprotobuf. Il valore predefinito è grpc.

Esempio

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

Configurazione risultante

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

--otel-service-name

Tag del nome del servizio associato a tutte le tracce e le metriche. Viene visualizzato come identificatore del servizio nel back-end di telemetria. Il valore predefinito è dab.

Esempio

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

Configurazione risultante

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

--otel-headers

Intestazioni HTTP aggiuntive da includere durante l'esportazione dei dati di telemetria nell'agente di raccolta. Usare un elenco delimitato da key=value virgole. Usare questa opzione per gli endpoint dell'agente di raccolta autenticati che richiedono una chiave API o un'intestazione di autorizzazione.

Esempio

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

--app-insights-enabled

Abilitare o disabilitare i dati di telemetria di Azure Application Insights. Valori accettati: true, false.

Esempio

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

Configurazione risultante

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

--app-insights-conn-string

Stringa di connessione per la risorsa di Azure Application Insights. Usare un riferimento a una variabile di ambiente per evitare di eseguire il commit dei segreti nel controllo del codice sorgente.

Avviso

Non impostare mai come hardcoded la stringa di connessione direttamente nel file di configurazione. Usare @env('<variable-name>') o un gestore dei segreti.

Esempio

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

Configurazione risultante

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

Esempio completo: OpenTelemetry e Application Insights

L'esempio seguente abilita sia OpenTelemetry che Application Insights in un singolo 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')"

Configurazione risultante

{
  "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')"
      }
    }
  }
}