En esta página, se describe cómo habilitar los seguimientos del cliente con OpenTelemetry cuando usas las bibliotecas cliente de Cloud Storage para interactuar con Cloud Storage. Puedes recopilar y ver datos de seguimiento con las siguientes bibliotecas cliente de Cloud Storage compatibles:
Descripción general
Habilitar los seguimientos en las bibliotecas cliente de Cloud Storage te permite supervisar el rendimiento, identificar problemas de latencia y realizar depuraciones con rapidez para las solicitudes de Cloud Storage. Los seguimientos te permiten ver la secuencia de una solicitud completada, lo que proporciona una vista detallada de cómo Cloud Storage recibió, administró y respondió la solicitud. Un solo seguimiento se compone de varios intervalos, que son registros detallados con marca de tiempo de cada función o operación que realizó tu aplicación durante la solicitud de Cloud Storage.
Beneficios
Recopilar y propagar datos de seguimiento proporciona los siguientes beneficios a tu aplicación:
Visibilidad mejorada del rendimiento: Debido a que los datos de seguimiento se generan casi en tiempo real a medida que Cloud Storage completa cada solicitud que realizas, puedes identificar con rapidez los cuellos de botella en el rendimiento y detectar problemas de latencia.
Manejo de errores: Puedes identificar dónde surgen los problemas, lo que acelera el análisis de la causa raíz y reduce el tiempo de inactividad con la información sobre cada solicitud de Cloud Storage que se proporciona en un seguimiento.
Cómo funcionan los seguimientos del cliente
En las siguientes secciones, se analiza en detalle cómo funciona la recopilación de seguimientos.
Cómo funciona la recopilación de seguimientos con OpenTelemetry
Las bibliotecas cliente de Cloud Storage admiten la recopilación de datos de seguimiento con el SDK de OpenTelemetry para configurar los siguientes componentes necesarios para recopilar y propagar datos de seguimiento:
Proveedor de seguimiento: El proveedor de seguimiento, que usan las bibliotecas cliente de Cloud Storage, es responsable de crear y administrar el sistema de seguimiento, lo que incluye generar y administrar seguimientos y lapsos en tu aplicación.
Exportador de seguimientos: El SDK de OpenTelemetry usa el exportador de seguimientos, que es responsable de enviar datos de seguimiento a una plataforma de observabilidad de backend, como Cloud Trace, en la que puedes analizar y visualizar datos de seguimiento. Para obtener más información sobre el exportador de seguimientos, consulta Cómo funcionan los exportadores de seguimientos.
Cómo funcionan los exportadores de seguimientos
La configuración de seguimientos con el SDK de OpenTelemetry incluye la selección de un backend de observabilidad para exportar tus datos al lugar donde se analizan, almacenan y visualizan. Si bien puedes exportar tus datos de seguimiento a cualquier backend de observabilidad que elijas, te recomendamos que uses Cloud Trace, al que se puede acceder con la consola de Google Cloud y que proporciona integración en otros servicios de Google Cloud .
Una vez que el proveedor y el exportador de seguimientos estén configurados y habilitados, podrás ver los datos de seguimiento casi en tiempo real, ya que se generan seguimientos y tramos para cada solicitud de Cloud Storage.
Con el Explorador de Cloud Trace en la consola deGoogle Cloud , puedes ver cada seguimiento, que contiene lo siguiente:
Una vista de alto nivel de una solicitud de Cloud Storage de extremo a extremo.
Varios intervalos, cada uno de los cuales captura una sola operación con marca de tiempo dentro de la solicitud de Cloud Storage que se realizó.
Para obtener más información sobre los seguimientos y los intervalos, consulta la documentación de OpenTelemetry sobre seguimientos e intervalos.
Precios
Los datos de seguimiento se cobran. Los cargos se basan en la cantidad de intervalos de seguimiento transferidos y analizados por Cloud Trace. Para obtener más información sobre los intervalos de seguimiento que se cobran y ejemplos de precios, consulta Costos de Cloud Trace.
Antes de comenzar
Antes de recopilar seguimientos del uso de la API de Cloud Storage, debes completar los siguientes pasos:
-
Habilita la API de Cloud Trace si aún no está habilitada.
Roles necesarios para habilitar las APIs
Para habilitar las APIs, necesitas el permiso
serviceusage.services.enable. Si creaste el proyecto, es probable que ya tengas este permiso a través del rol de propietario (roles/owner). De lo contrario, puedes obtenerlo a través del rol de administrador de Service Usage (roles/serviceusage.serviceUsageAdmin). Obtén más información para otorgar roles. Habilita la API de Cloud Storage.
Roles obligatorios
Para obtener el permiso que
necesitas para escribir seguimientos en Cloud Trace,
pídele a tu administrador que te otorgue el
rol de IAM de Agente de Cloud Trace (roles/cloudtrace.agent) en el proyecto que usa el cliente.
Este rol predefinido contiene el permiso
cloudtrace.traces.patch,
que se requiere para
escribir seguimientos en Cloud Trace.
También puedes obtener estos permisos con roles predefinidos o puedes crear roles personalizados para otorgar permisos específicos. Para obtener instrucciones sobre cómo otorgar roles en proyectos, consulta Otorga o revoca un rol. Para obtener más información sobre el rol de agente de Cloud Trace, consulta la documentación de Identity and Access Management (IAM).
Configura el seguimiento para tu aplicación
Sigue estas instrucciones para configurar el seguimiento y comenzar a recopilar datos de seguimiento con la biblioteca cliente de Cloud Storage:
C++
Instala las siguientes versiones:
Versión v2.16.0 o posterior de la biblioteca cliente de C++
C++ versión 14 o posterior
Para habilitar la instrumentación de seguimiento de OpenTelemetry en la biblioteca cliente de C++, actualiza la configuración del sistema de compilación para CMake o Bazel.
Crea una instancia del cliente de Cloud Storage con los seguimientos de OpenTelemetry habilitados.
Java
Instala las siguientes versiones de la biblioteca cliente de Java para Cloud Storage:
com.google.cloud:google-cloud-storage:2.47.0o posteriorcom.google.cloud:libraries-bom:26.53.0o posterior
Instala el exportador de Cloud Trace para OpenTelemetry. También puedes usar cualquier otro exportador que elijas.
Instala el propagador de Cloud Trace.
Crea una instancia del cliente de Cloud Storage con los seguimientos de OpenTelemetry habilitados.
Python
Instala la biblioteca cliente de Cloud Storage para Python:
pip install google-cloud-storage[tracing]>=2.18.0
Instala el exportador y el propagador de Cloud Trace. También puedes usar cualquier exportador que elijas.
pip install opentelemetry-exporter-gcp-trace opentelemetry-propagator-gcp
Instala la instrumentación de solicitudes de OpenTelemetry para hacer un seguimiento de las solicitudes HTTP subyacentes.
pip install opentelemetry-instrumentation-requests
Configura la variable de entorno para habilitar de forma selectiva el seguimiento del cliente de almacenamiento de Python:
export ENABLE_GCS_PYTHON_CLIENT_OTEL_TRACES=True
Configura el exportador y el proveedor de seguimientos.
Rust
Agrega la biblioteca cliente de Rust para Cloud Storage y los crates
tracingy OpenTelemetry a tu archivo de manifiestoCargo.toml:cargo add google-cloud-storage opentelemetry opentelemetry_sdk opentelemetry-otlp tracing tracing-opentelemetry tracing-subscriber
Configura un struct
SdkTracerProviderde OpenTelemetry con un exportador de OTLP (por ejemplo, enviando intervalos a un recopilador de OpenTelemetry o a la API de Telemetry), registra un suscriptortracingy compila un clienteStoragecon el método.with_tracing()habilitado:
Ve tus seguimientos
Usa el explorador de Cloud Trace para ver tus datos de seguimiento en la consola de Google Cloud :
-
En la consola de Google Cloud , ve a la página
Explorador de seguimiento:Ve al Explorador de seguimiento
También puedes usar la barra de búsqueda para encontrar esta página.
En la página Explorador de seguimiento, haz clic en un seguimiento específico en el diagrama de dispersión para ver los detalles del seguimiento.
En el panel Detalles del seguimiento, se muestra una tabla de intervalos de seguimiento.
Opcional: Haz clic en una fila de intervalo para ver información detallada sobre un intervalo específico, como la siguiente:
Atributos: Son pares clave-valor que proporcionan información adicional sobre el intervalo.
Registros y eventos: Son las entradas de registro asociadas con el intervalo.
Seguimientos de pila: Son los seguimientos de pila asociados con el intervalo.
Metadatos y vínculos: vínculos a otros servicios de Google Cloud que están asociados con el intervalo.
Si deseas obtener más información para usar el explorador de Cloud Trace, consulta Busca y explora seguimientos.