Cómo hacer un seguimiento de los atributos y eventos de la extensión

Los seguimientos del cliente, que se recopilan mediante la ejecución de RPC, proporcionan varios datos para cada solicitud de un cliente, incluidos intervalos con marcas de tiempo de cuándo el cliente envió la solicitud de RPC y cuándo recibió la respuesta de RPC. Los intervalos incluyen la latencia que introduce la red y el sistema cliente.

Los seguimientos del cliente pueden incluir la siguiente información:

Metadatos de intervalo

ID de intervalo Es el ID único de este intervalo.
ID de intervalo principal ID del intervalo superior, no establecido para el intervalo raíz
ID del proyecto ID del proyecto de Google Cloud que transfirió el seguimiento
Hora de inicio Hora de inicio del intervalo
Hora de finalización Hora de finalización del intervalo

Atributos de intervalo

Versión del cliente
otel.scope.version String
Entorno del cliente
gcp.firestore.memory_utilization doble (porcentaje)
Propiedades de conexión del cliente
gcp.firestore.settings.channel.needs_credentials booleano
gcp.firestore.settings.channel.needs_endpoint booleano
gcp.firestore.settings.channel.needs_headers booleano
gcp.firestore.settings.channel.should_auto_close booleano
gcp.firestore.settings.channel.transport_name Ejemplo de cadena “grpc”
gcp.firestore.settings.credentials.authentication_type Ejemplo de cadena "OAuth2"
gcp.firestore.settings.host P. ej., una cadena “firestore.googleapis.com:443”
Propiedades de la base de datos
gcp.firestore.settings.project_id cadena
ID del proyecto de Google Cloud que contiene la base de datos de Firestore
gcp.firestore.settings.database_id cadena
ID externo de la base de datos (nombre)
Configuración de reintentos de RPC del cliente
gcp.firestore.settings.retrySettings.initial_retry_delay cadena
Duración en segundos. p. ej., 0.01 s
gcp.firestore.settings.retrySettings.initial_rpc_timeout
gcp.firestore.settings.retrySettings.max_attempts número entero (recuento)
gcp.firestore.settings.retrySettings.max_retry_delay cadena
Duración en segundos; p. ej., 0.1 s
gcp.firestore.settings.retrySettings.max_rpc_timeout
gcp.firestore.settings.retrySettings.retry_delay_multiplier double
gcp.firestore.settings.retrySettings.rpc_timeout_multiplier double
gcp.firestore.settings.retrySettings.total_timeout cadena
Duración en segundos
Configuración de OpenTelemetry
otel.scope.name Ejemplo de cadena “com.google.cloud.firestore”
service.name Sparky
telemetry.sdk.language P. ej., una cadena "java"
telemetry.sdk.name OpenTelemetry
telemetry.sdk.version P. ej., 1.29.0

Registros y eventos

Los seguimientos del cliente proporcionan los siguientes registros y eventos.

Eventos de gRPC

Propiedades de RPC
message.id número entero, p. ej. 1, 2
message.type ENVIADA O RECEPCIONADA

Eventos de AggregateQuery

Evento: "RunAggregationQuery Stream Started"
intento Es un número entero mayor o igual que 0 (p. ej., 2). 0 en el intento inicial
Evento: "Se recibió la respuesta de RunAggregationQuery".
intento Es un número entero mayor o igual que 0 (p. ej., 2). 0 para el intento inicial
Evento: "RunAggregationQuery: Error reintentable".
error.message string
Evento: "RunAggregationQuery: Error"
error.message string

Eventos de BatchGetDocuments

Evento: “BatchGetDocuments: Start”
doc_count Número entero
Transacciones booleano
Evento: “BatchGetDocuments: Se recibió la primera respuesta”
// Una vez que se reciban 100 respuestas
Evento: “BatchGetDocuments: Se recibieron 100 respuestas”
Evento: "BatchGetDocuments: Completed with ${N} responses"
response_count Número entero

Eventos RunQuery

Evento: “RunQuery”
Transacciones booleano
retry_query_with_cursor booleano
Evento: "RunQuery: First Response Received"
// Una vez que se reciben 100 respuestas
Evento: "RunQuery: Received 100 documents"
// Solo cuando el servidor realiza el cierre parcial
Evento: “RunQuery: Received RunQueryResponse.Done”
Evento: "RunQuery: Retryable Error"
error.message string
Evento: “RunQuery: Error”.
error.message string
Evento: “RunQuery: Completed”.
response_count Número entero

Eventos de transacción

Intervalo: "Transaction.Run"
transaction_type Cadena ("READ_ONLY" o "READ_WRITE")
attempts_allowed Número entero
attempts_remaining Número entero
// Solo si se vuelve a intentar una transacción
Evento: "Iniciar la repetición de la transacción"

Eventos de confirmación

Span: “BulkWriter.Commit”
doc_count Número entero
Span: “Batch.Commit”
doc_count Número entero
Span: “Transaction.Commit”
doc_count Número entero

Evento excepcional

Estado del período = ERROR
exception.message string
exception.type string
exception.stacktrace string