En esta página se describe cómo monitorizar y solucionar problemas de las consultas que se ejecutan en tu instancia de Spanner. Las consultas activas son consultas de larga duración que pueden afectar al rendimiento de tu instancia. Monitorizar estas consultas puede ayudarte a identificar las causas de la latencia de las instancias y del uso elevado de la CPU.
En la Google Cloud consola, puede ver las consultas activas en la página Información útil sobre las consultas de Spanner. Estas consultas se ordenan por la hora de inicio de la consulta. Si hay muchas consultas activas, los resultados pueden limitarse a un subconjunto del total de consultas debido a las restricciones de memoria que Spanner aplica a la recogida de datos.
Antes de empezar
Para obtener los permisos que necesitas para ver las consultas activas, pide a tu administrador que te conceda los siguientes roles de IAM en la instancia:
-
Lector de Cloud Spanner (
roles/spanner.viewer) -
Lector de las bases de datos de Cloud Spanner (
roles/spanner.databaseReader)
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar acceso a proyectos, carpetas y organizaciones.
También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.
Ver consultas activas
Para ver las consultas activas de cada base de datos, haz lo siguiente:
En la Google Cloud consola, ve a la página Instancias de Spanner.
Haz clic en la instancia que contiene las consultas que quieres monitorizar.
En el menú de navegación, haga clic en Estadísticas de consultas.
Use el menú Base de datos para especificar la base de datos que quiere monitorizar.
Haz clic en la pestaña Consultas activas. La pestaña contiene un resumen de las consultas activas, junto con una tabla de las 50 consultas activas de mayor duración.
Ver las consultas de mayor duración
En la siguiente tabla se describen las columnas predeterminadas de la tabla Consultas que tardan más en procesarse de la pestaña Consultas activas:
| Nombre de la columna | Descripción |
|---|---|
| ID de consulta | Identificador único de la consulta. |
| Consulta | Texto de la consulta SQL. |
| Huella digital | Hash de la etiqueta de solicitud o, si no hay ninguna etiqueta, hash del texto de la consulta de SQL. |
| Hora de inicio | Marca de tiempo que indica cuándo se inició la consulta. |
| Duración de la consulta | La duración de la consulta activa. |
| Acción | Contiene un enlace para finalizar la consulta. |
Cuando el interruptor Actualización automática está activado, la pantalla se actualiza cada 60 segundos.
Puede usar el botón Opciones de visualización de columnas para seleccionar cualquiera de las siguientes columnas opcionales que quiera que se muestren en la tabla Consultas de mayor duración:
| Nombre de la columna | Descripción |
|---|---|
| Dirección IP del cliente | La dirección IP del cliente que ha solicitado la consulta. A veces, la dirección IP del cliente puede ocultarse. La dirección IP que se muestra aquí es coherente con los registros de auditoría y sigue las mismas directrices de ocultación. Para obtener más información, consulta el artículo Dirección IP de la persona que llama en los registros de auditoría. Spanner recomienda solicitar la dirección IP del cliente solo cuando sea necesario, ya que las solicitudes de direcciones IP de cliente pueden incurrir en una latencia adicional. |
| Región del servidor | La región en la que el servidor raíz de Spanner procesa la consulta. Para obtener más información, consulta el artículo Ciclo de vida de una consulta. |
| Tipo de transacción |
El tipo de transacción de la consulta. Los valores posibles son:
READ_ONLY, READ_WRITE y NONE.
|
| Encabezado de cliente de API | El encabezado api_client del cliente. |
| Prioridad | La prioridad de la consulta. Para ver las prioridades disponibles, consulta RequestOptions. |
| Encabezado User-Agent |
La cabecera user_agent que recibe Spanner
del cliente.
|
Finalizar una consulta
Puedes finalizar una consulta que se esté ejecutando en tu instancia. Finalizar una consulta puede ayudar a liberar recursos y reducir la carga de tu instancia. La finalización de una consulta es una operación que se realiza en la medida de lo posible.
La página de la consola se actualiza después de iniciar la finalización. Google Cloud Si la cancelación se realiza correctamente, la consulta se elimina de la tabla. Si la finalización falla, se produce en segundo plano y la consulta sigue apareciendo en la tabla Consultas de mayor duración.
Es posible que Spanner no cancele una consulta cuando los servidores estén ocupados. Puedes volver a intentar finalizar una consulta para cancelarla.
Para obtener el permiso que necesitas para finalizar una consulta,
pide a tu administrador que te conceda el rol de gestión de identidades y accesos de lector de bases de datos de Cloud Spanner (spanner.databaseReader) en la instancia.
Este rol predefinido contiene el permiso spanner.sessions.delete, que es necesario para finalizar una consulta.
Para finalizar una consulta, sigue estos pasos:
- En la tabla Consultas de mayor duración, selecciona la consulta que quieras finalizar.
- En la columna Acciones, haga clic en Finalizar.
- En la ventana Finalizar consulta, haz clic en Confirmar.
Para finalizar varias consultas, sigue estos pasos:
- En la tabla Consultas de mayor duración, seleccione las consultas que quiera finalizar.
- Haga clic en Finalizar consultas seleccionadas.
- En la ventana Finalizar las siguientes consultas, haz clic en Confirmar.
Siguientes pasos
- Más información sobre cómo analizar el rendimiento de las consultas
- Consulte más información sobre las estadísticas de consultas activas más antiguas.