En esta página, se describe cómo supervisar 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 el rendimiento de tu instancia. La supervisión de estas consultas puede ayudarte a identificar las causas de la latencia de la instancia y el uso alto de CPU.
Con la consola de Google Cloud , puedes ver las consultas activas en la página Estadísticas de consultas de Spanner. Estas consultas se ordenan según 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 recopilación de datos.
Antes de comenzar
Para obtener los permisos que necesitas para ver las consultas activas, pídele a tu administrador que te otorgue los siguientes roles de IAM en la instancia:
-
Visualizador de Cloud Spanner (
roles/spanner.viewer) -
Lector de base de datos de Cloud Spanner (
roles/spanner.databaseReader)
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.
Visualizar las consultas activas
Para ver las consultas activas de cada base de datos, haz lo siguiente:
En la consola de Google Cloud , ve a la página Instancias de Spanner.
Haz clic en la instancia que contiene las consultas que deseas supervisar.
En el menú de navegación, haz clic en Estadísticas de consultas.
Usa el menú Base de datos para especificar la base de datos que deseas supervisar.
Haz clic en la pestaña Consultas activas. La pestaña contiene un resumen de las búsquedas activas, junto con una tabla de las 50 búsquedas activas de mayor duración.
Cómo ver las consultas de mayor duración
En la siguiente tabla, se describen las columnas predeterminadas de la tabla Consultas de mayor duración en la pestaña Consultas activas:
| Nombre de la columna | Descripción |
|---|---|
| ID de la consulta | El identificador único de la consulta. |
| Consulta | Es el texto de la consulta en SQL. |
| Huella digital | Es el hash de la etiqueta de la solicitud o, si no hay una etiqueta, el hash del texto de la consulta en SQL. |
| Hora de inicio | Es la marca de tiempo del momento en que comenzó la búsqueda. |
| Duración de consulta | Es la duración de la consulta activa. |
| Acción | Contiene un vínculo para finalizar la búsqueda. |
Cuando el botón de activación Actualización automática está activado, la pantalla se actualiza cada 60 segundos.
Puedes usar el botón Opciones de visualización de columnas para seleccionar cualquiera de las siguientes columnas opcionales que se mostrarán en la tabla Consultas de mayor duración:
| Nombre de la columna | Descripción |
|---|---|
| Dirección IP de cliente | Es la dirección IP del cliente que solicitó la búsqueda. A veces, es posible que se oculte la dirección IP del cliente. La dirección IP que se muestra aquí coincide con los registros de auditoría y sigue los mismos lineamientos de redacción. Para obtener más información, consulta Dirección IP de la entidad que llama en los registros de auditoría. Spanner recomienda solicitar la dirección IP del cliente solo cuando sea necesaria, ya que las solicitudes de direcciones IP del cliente pueden generar latencia adicional. |
| Región del servidor | Es la región en la que el servidor raíz de Spanner procesa la consulta. Para obtener más información, consulta Ciclo de vida de una búsqueda. |
| Tipo de transacción |
Es el tipo de transacción de la búsqueda. Los valores posibles son READ_ONLY, READ_WRITE y NONE.
|
| Encabezado del cliente de API | Es el encabezado api_client del cliente. |
| Prioridad | Es la prioridad de la búsqueda. Para ver las prioridades disponibles, consulta RequestOptions. |
| Encabezado de usuario-agente |
Es el encabezado user_agent que Spanner recibe del cliente.
|
Finaliza 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 en tu instancia. La finalización de una consulta es una operación de mejor esfuerzo.
La página de la consola de Google Cloud se actualiza después de que inicias la finalización. Si la finalización se realiza correctamente, la consulta se quita de la tabla. Si la finalización falla, se realiza en segundo plano y la consulta sigue apareciendo en la tabla Longest running queries.
Es posible que Spanner no cancele una consulta cuando los servidores estén ocupados. Puedes volver a intentar detener una búsqueda para cancelarla.
Para obtener el permiso que
necesitas para detener una consulta,
pídele a tu administrador que te otorgue el rol de IAM
lector de bases de datos de Cloud Spanner (spanner.databaseReader)
en la instancia.
Este rol predefinido contiene el permiso spanner.sessions.delete, que se requiere para finalizar una consulta.
Para finalizar una consulta, haz lo siguiente:
- Selecciona la consulta que deseas finalizar en la tabla Consultas de ejecución más larga.
- En la columna Acciones, haz clic en Finalizar.
- En la ventana Finalizar consulta, haz clic en Confirmar.
Para finalizar varias consultas, haz lo siguiente:
- Selecciona las consultas que deseas finalizar en la tabla Consultas de ejecución más larga.
- Haz clic en Finalizar las búsquedas seleccionadas.
- En la ventana Finalizar las siguientes búsquedas, haz clic en Confirmar.
¿Qué sigue?
- Obtén más información para analizar el rendimiento de las consultas.
- Obtén más información sobre las estadísticas de las consultas activas más antiguas.