En esta página se explican los siguientes pasos:
- Instala los paquetes de OpenTelemetry.
- Configura tu aplicación para exportar spans a Cloud Trace.
- Configura tu plataforma.
Para obtener información sobre las versiones, consulta lo siguiente:
Para consultar contenido de referencia de OpenTelemetry, consulta lo siguiente:
Para obtener los detalles más recientes sobre OpenTelemetry para C++, así como documentación y ejemplos adicionales, consulta OpenTelemetry.
Antes de empezar
Enable the Cloud Trace API.
Instalar los paquetes de OpenTelemetry
- Configura un entorno de desarrollo de C++.
- Instala la Google Cloud biblioteca del exportador de OpenTelemetry de C++. Para obtener información sobre la instalación, consulta la guía de inicio rápido de OpenTelemetry.
Configurar la exportación de intervalos a Cloud Trace
Para configurar la exportación de datos de seguimiento, llama al método google::cloud::otel::ConfigureBasicTracing(...)
en tu método main()
:
El campo project_id
es el proyecto en el que quieres almacenar las trazas. Google Cloud
El método ConfigureBasicTracing(...)
crea una instancia de un objeto TracerProvider
que implementa un exportador de Cloud Trace. Si el objeto devuelto por la llamada a ConfigureBasicTracing(...)
queda fuera del ámbito, se restablece el objeto TracerProvider
anterior, si existe.
Configurar la frecuencia de muestreo
Las aplicaciones pueden generar un gran volumen de datos de traza. En el siguiente ejemplo se muestra cómo configurar la frecuencia de muestreo:
Exportar a Cloud Trace con un TracerProvider
personalizado
Puede que haya casos prácticos que requieran un objeto TracerProvider
personalizado. Por ejemplo, si quieres usar varios exportadores al mismo tiempo, debes crear un objeto TracerProvider
personalizado. En estos casos, puedes usar el exportador de Cloud Trace directamente:
Instrumentar tu propia aplicación
Para obtener información sobre cómo configurar su aplicación para que capture intervalos de seguimiento, consulte Seguimiento de OpenTelemetry. En esta página se describe cómo hacer lo siguiente:
- Crear un intervalo
- Crear intervalos anidados
- Definir atributos de intervalo
- Crear intervalos con eventos
- Crear intervalos con enlaces
Aplicación de ejemplo
Para ver una aplicación de ejemplo, consulta la guía de inicio rápido.
Configurar tu plataforma
Puedes usar Cloud Trace en Google Cloud y otras plataformas.
Se está ejecutando en Google Cloud
Cuando tu aplicación se ejecuta en Google Cloud, no es necesario que proporciones credenciales de autenticación en forma de cuenta de servicio a la biblioteca de cliente. Sin embargo, debes asegurarte de que tu plataforma tenga habilitado el ámbito de acceso de la API Cloud Trace. Google Cloud
Para ver una lista de los Google Cloud entornos compatibles, consulta Compatibilidad con entornos.
En las siguientes configuraciones, los ajustes de ámbito de acceso predeterminados habilitan la API Cloud Trace:
- Entorno flexible de App Engine
Entorno estándar de App Engine
Google Kubernetes Engine (GKE)
Compute Engine
Cloud Run
Si usas permisos de acceso personalizados, debes asegurarte de que el permiso de acceso a la API Cloud Trace esté habilitado:
Para obtener información sobre cómo configurar los ámbitos de acceso de tu entorno mediante la consola Google Cloud , consulta Configurar tu proyecto de Google Cloud .
En el caso de los usuarios de
gcloud
, especifica los permisos de acceso mediante la marca--scopes
e incluye el permiso de acceso a la API Cloud Tracetrace.append
. Por ejemplo, para crear un clúster de GKE con solo la API Cloud Trace habilitada, haz lo siguiente:gcloud container clusters create example-cluster-name --scopes=https://www.googleapis.com/auth/trace.append
Ejecutar localmente y en otro lugar
Si tu aplicación se ejecuta fuera de Google Cloud, debes proporcionar credenciales de autenticación en forma de cuenta de servicio a la biblioteca de cliente. La cuenta de servicio debe tener el rol de agente de Cloud Trace. Para ver instrucciones, consulta el artículo Crear una cuenta de servicio.
Las bibliotecas de clienteGoogle Cloud usan las credenciales de aplicación predeterminadas (ADC) para encontrar las credenciales de tu aplicación.
Puedes proporcionar estas credenciales de tres formas:
Ejecutar
gcloud auth application-default login
Coloca la cuenta de servicio en una ruta predeterminada de tu sistema operativo. A continuación se indican las rutas predeterminadas para Windows y Linux:
Windows:
%APPDATA%/gcloud/application_default_credentials.json
Linux:
$HOME/.config/gcloud/application_default_credentials.json
Asigna a la variable de entorno
GOOGLE_APPLICATION_CREDENTIALS
la ruta a tu cuenta de servicio:
Linux/macOS
export GOOGLE_APPLICATION_CREDENTIALS=path-to-your-service-accounts-private-key
Windows
set GOOGLE_APPLICATION_CREDENTIALS=path-to-your-service-accounts-private-key
PowerShell:
$env:GOOGLE_APPLICATION_CREDENTIALS="path-to-your-service-accounts-private-key"
Mostrar trazas
En la Google Cloud consola, ve a la página Explorador de trazas:
También puedes encontrar esta página mediante la barra de búsqueda.
Solución de problemas
Para obtener información sobre cómo solucionar problemas con Cloud Trace, consulta la página de solución de problemas.
Para depurar el exportador de Cloud Trace de C++, consulta la sección Solución de problemas de la documentación de referencia.
Recursos
- https://opentelemetry.io/
- Repositorio de GitHub open-telemetry/opentelemetry-cpp
- Biblioteca de exportadores de OpenTelemetry de google-cloud-cpp Repositorio de GitHub.