Ce document explique comment modifier une configuration de journalisation du collecteur OpenTelemetry
qui utilise un exportateur existant (dans ce cas, l'exportateur de journalisation
googlecloud) —
pour utiliser l'exportateur OTLP et l'
API Telemetry (OTLP), telemetry.googleapis.com.
Activer l'API Telemetry
L'exportateur OTLP écrit dans l'API Telemetry. Vous devez donc activer cette API dans votre projet. Activez l'API Telemetry en exécutant la commande suivante :
gcloud services enable telemetry.googleapis.com
Rechercher l'exportateur à remplacer
Dans votre fichier de configuration, recherchez l'entrée exporters pour la journalisation. Votre configuration peut se présenter comme suit :
exporters:
googlecloud/logging:
Remplacez l'exportateur googlecloud/logging et ajoutez l'extension googleauthclient :
exporters:
otlp_grpc/otlp_logs:
auth:
authenticator: googleclientauth
balancer_name: pick_first
endpoint: telemetry.googleapis.com:443
extensions:
googleclientauth: {}
Ajouter des processeurs
Dans votre fichier de configuration, recherchez l'entrée processors. Votre configuration peut se présenter comme suit :
processors:
resourcedetection/_global_0: [...details omitted...]
transform/mylog__source_0: [...details omitted...]
Copiez et collez la configuration de chacun des processeurs suivants dans votre fichier de configuration :
Un
resourceprocesseur qui capture des informations sur votre Google Cloud project.resource/gcp_project_id: attributes: - action: insert value: PROJECT_ID key: gcp.project_idUn processeur
transformqui préserve les informations sur la source d'instrumentation et les attributs de service de ressource.transform/otlp_grpc/preserve_instrumentation_source_version: error_mode: ignore log_statements: - context: log statements: - set(attributes["instrumentation_source"], instrumentation_scope.name) where instrumentation_scope.name != "" - set(attributes["instrumentation_version"], instrumentation_scope.version) where instrumentation_scope.version != "" - set(attributes["service.name"], resource.attributes["service.name"]) where resource.attributes["service.name"] != nil - set(attributes["service.namespace"], resource.attributes["service.namespace"]) where resource.attributes["service.namespace"] != nil - set(attributes["service.instance.id"], resource.attributes["service.instance.id"]) where resource.attributes["service.instance.id"] != nil
La configuration modifiée se présente comme suit :
processors:
resourcedetection/_global_0: [...details omitted...]
transform/mylog__source_0: [...details omitted...]
resource/gcp_project_id: [...details omitted...]
transform/otlp_grpc/preserve_instrumentation_source_version: [...details omitted...]
transform/otlp_grpc/preserve_service_resource_attributes: [...details omitted...]
Modifier le service et le pipeline de journalisation
Dans votre configuration, recherchez le service utilisé pour la journalisation, qui inclut un pipeline utilisant l'exportateur googlecloud/logging. Votre configuration peut se présenter comme suit :
service:
pipelines:
logs/logs_my__pipeline_mylog__source:
exporters:
- googlecloud/logging
processors:
- transform/mylog__source_0
- resourcedetection/_global_0
receivers:
- tcplog
Apportez les modifications suivantes à cette configuration :
- Ajoutez l'extension
googleclientauthà l'entréeservice. - Remplacez l'exportateur du pipeline par
otlp_grpc/otlp_logs. - Ajoutez les nouveaux processeurs à la liste des processeurs du pipeline :
resource/gcp_project_idtransform/otlp_grpc/preserve_instrumentation_source_versiontransform/otlp_grpc/preserve_service_resource_attributes
La configuration modifiée se présente comme suit :
service:
extensions:
- googleclientauth
pipelines:
logs/logs_my__pipeline_mylog__source:
exporters:
- otlp_grpc/otlp_logs
processors:
- transform/mylog__source_0
- resourcedetection/_global_0
- resource/gcp_project_id
- transform/otlp_grpc/preserve_instrumentation_source_version
- transform/otlp_grpc/preserve_service_resource_attributes
receivers:
- tcplog
Migrer les tableaux de bord et les règles d'alerte, si nécessaire
Si vous disposez de graphiques ou de règles d'alerte qui suivent l'utilisation de l'API Cloud Logging, mettez-les à jour pour surveiller l'utilisation de l'API Telemetry à la place. L'exportateur OTLP envoie des journaux à votre Google Cloud projet à l'aide de l'API Telemetry au lieu de l'API Cloud Logging.