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:
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 |