Microsoft SQL Server

La integración de Microsoft SQL Server recoge métricas de transacciones, conexiones y otros datos de tus instancias de SQL Server.

Para obtener más información sobre SQL Server, consulta la documentación de SQL Server.

Antes de empezar

La versión 2.15.0 del agente de Ops incluye compatibilidad con un nuevo conjunto de métricas de SQL Server que usan el prefijo workload.googleapis.com/. Debe configurar el agente para que recoja estas métricas, tal como se describe en la sección Configuración de ejemplo.

El agente de operaciones siempre ha admitido un conjunto limitado de métricas de SQL Server. Estas métricas usan el prefijo agent.googleapis.com/mssql/. No es necesario realizar ninguna configuración adicional para recoger estas métricas en las VMs Windows.

En este documento, las métricas con el prefijo agent se denominan métricas de la versión 1 y las métricas con el prefijo workload, métricas de la versión 2.

  • Las métricas de la versión 1 incluyen información sobre la tasa de transacciones y el número de conexiones.
  • Las métricas de la versión 2 incluyen información sobre el recuento de conexiones de lotes, bloqueos, páginas y usuarios a nivel de instancia, así como información sobre transacciones y registros de transacciones a nivel de base de datos.

Para ver tablas de estas métricas, consulta Qué se monitoriza.

A partir de la versión 2.15.0 del agente de operaciones, puedes configurar el agente para que recoja métricas de la versión 1, métricas de la versión 2 o ambas.

Requisitos previos

Para recoger la telemetría de SQL Server, debes instalar el Agente de operaciones:

  • Para la versión 1 de las métricas, instala la versión 1.0.0 o una posterior.
  • Para la versión 2 de las métricas, instala la versión 2.15.0 o una posterior.

Esta integración es compatible con las versiones 11.x, 12.x, 13.x, 14.x, 15.x y 16.x de SQL Server.

Configurar el agente de operaciones para SQL Server

Cuando se usa el agente de operaciones en una VM de Microsoft Windows, el agente recoge automáticamente métricas de SQL Server v1. No es necesario realizar ninguna configuración adicional.

Sigue la guía para configurar el agente de operaciones, añade los elementos necesarios para recoger telemetría de las instancias de SQL Server y reinicia el agente.

Después de configurar una instancia de SQL Server, es posible que no veas las métricas de inmediato en el Explorador de métricas. El agente de operaciones empieza a recoger métricas de SQL Server solo cuando hay actividad en la base de datos que registrar.

Configuración de ejemplo

Los siguientes comandos crean la configuración para recoger e ingerir telemetría de SQL Server:

$ErrorActionPreference = 'Stop'

# This config gets merged with the built-in Ops Agent config, which already
# includes the v1 receiver in the default pipeline.
# Because the v2 receiver here uses a unique ID, it does not overwrite
# the default receiver and so both receivers will be active simultaneously
# during the test.

# Create an empty config.yaml file if it doesn't exist.
$configFilePath  = 'C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml'

if (-not (Test-Path -Path $configFilePath -PathType Leaf)) {
    New-Item -ItemType File -Path $configFilePath -Force | Out-Null
}

# Create a back up of the existing file so existing configurations are not lost.
Copy-Item -Path 'C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml' -Destination 'C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml.bak'

# Configure the Ops Agent.
Add-Content 'C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml' "
metrics:
  receivers:
    mssql_v2:
      type: mssql
      receiver_version: 2
  service:
    pipelines:
      mssql_v2:
        receivers:
        - mssql_v2
"

if (Get-Service google-cloud-ops-agent* -ErrorAction SilentlyContinue) {
  (Get-Service google-cloud-ops-agent*).WaitForStatus('Running', '00:03:00')
}

Para que estos cambios se apliquen, debes reiniciar el agente de Ops:

  1. Conéctate a tu instancia mediante RDP o una herramienta similar e inicia sesión en Windows.
  2. Abre un terminal de PowerShell con privilegios de administrador haciendo clic con el botón derecho en el icono de PowerShell y seleccionando Ejecutar como administrador.
  3. Para reiniciar el agente, ejecuta el siguiente comando de PowerShell:
    Restart-Service google-cloud-ops-agent -Force
    
  4. Para confirmar que el agente se ha reiniciado, ejecuta el siguiente comando y verifica que los componentes "Metrics Agent" y "Logging Agent" se han iniciado:
    Get-Service google-cloud-ops-agent*
    

Configurar la recogida de métricas de la versión 1

El agente de operaciones de una máquina virtual de Microsoft Windows recoge automáticamente las métricas de SQL Server v1. No es necesario realizar ninguna configuración adicional. Para obtener información sobre cómo recoger solo métricas de la versión 2, consulta Configurar la recogida de métricas de la versión 2.

Después de configurar una instancia de SQL Server, es posible que SQL Server no informe de ninguna métrica inmediatamente. El agente de operaciones empieza a recoger métricas de SQL Server cuando hay actividad en la base de datos que registrar.

Configurar la recogida de métricas de la versión 2

Para ingerir métricas de la versión 2 de SQL Server, debe crear un receptor para las métricas que produce SQL Server y, a continuación, crear una canalización para el nuevo receptor.

Este receptor no admite el uso de varias instancias en la configuración, por ejemplo, para monitorizar varios endpoints. Todas estas instancias escriben en la misma serie temporal y Cloud Monitoring no tiene forma de distinguirlas. El agente de Ops no admite instancias con nombre de SQL Server.

Para configurar un receptor de sus métricas de mssql, especifique los siguientes campos:

Campo Predeterminado Descripción
collection_interval 60s Un valor time.Duration, como 30s o 5m.
receiver_version Versión de las métricas recogidas. Usa 2 para recoger métricas de la versión 2.
type Este valor debe ser mssql.

De forma predeterminada, las métricas de la versión 1 se recogen automáticamente. Puede aumentar las métricas de la versión 1 recogiendo también las de la versión 2, o bien puede sustituir las métricas de la versión 1 para recoger solo las de la versión 2.

  • Para recoger solo métricas de la versión 2, siga estos pasos:

    • Ponle un nombre al receptor mssql.
    • Asigna el valor mssql al campo type.
    • Asigna el valor 2 al campo receiver_version.
    • Usa este receptor en tu canalización default_pipeline. Esta configuración anula la configuración integrada del receptor mssql.
  • Para recoger métricas de la versión 1 y de la versión 2, siga estos pasos:

    • Asigna al receptor un nombre que no sea mssql, como mssql_v2.
    • Asigna el valor mssql al campo type.
    • Define receiver_version en 2.
    • Usa este receptor en tu nueva canalización. Esta configuración añade un receptor de la versión 2 en lugar de anular el receptor integrado. La secuencia de comandos de Ejemplo de configuración usa este método.

Qué se monitoriza

A partir de la versión 2.15.0, el agente de Ops puede recoger dos conjuntos de métricas diferentes:

  • Las métricas de la versión 1: agent.googleapis.com/mssql/.
  • Las métricas de la versión 2: workload.googleapis.com/.
Métricas de la versión 1

En la siguiente tabla se muestra la lista de métricas de la versión 1 que recoge el agente de Ops de la instancia de SQL Server.

Las cadenas "tipo de métrica" de esta tabla deben tener el prefijo agent.googleapis.com/mssql/. Ese prefijo se ha omitido en las entradas de la tabla. Cuando consultes una etiqueta, usa el prefijo metric.labels.. Por ejemplo, metric.labels.LABEL="VALUE".

Tipo de métrica Fase de lanzamiento(Niveles de jerarquía de recursos)
Nombre visible
Tipo, unidad
Recursos monitorizados
Descripción
Etiquetas
connections/user GA(project)
Conexiones abiertas de SQL Server
GAUGEDOUBLE1
aws_ec2_instance
gce_instance
Conexiones abiertas actualmente a SQL Server. Se muestrea cada 60 segundos.
transaction_rate GA(project)
Velocidad de transacción de SQL Server
GAUGEDOUBLE1/s
aws_ec2_instance
gce_instance
Transacciones totales por segundo de SQL Server. Se muestrea cada 60 segundos.
write_transaction_rate GA(project)
Tasa de transacciones de escritura de SQL Server
GAUGEDOUBLE1/s
aws_ec2_instance
gce_instance
Transacciones de escritura de SQL Server por segundo. Se muestrea cada 60 segundos.

Tabla generada el 2025-09-05 a las 02:07:49 UTC.

Métricas de la versión 2

En la siguiente tabla se muestra la lista de métricas de la versión 2 que recoge el agente de Ops de la instancia de SQL Server.

Tipo de métrica 
Tipo
Recursos monitorizados
Etiquetas
workload.googleapis.com/sqlserver.batch.request.rate
GAUGEDOUBLE
gce_instance
 
workload.googleapis.com/sqlserver.batch.sql_compilation.rate
GAUGEDOUBLE
gce_instance
 
workload.googleapis.com/sqlserver.batch.sql_recompilation.rate
GAUGEDOUBLE
gce_instance
 
workload.googleapis.com/sqlserver.lock.wait.rate
GAUGEDOUBLE
gce_instance
 
workload.googleapis.com/sqlserver.lock.wait_time.avg
GAUGEDOUBLE
gce_instance
 
workload.googleapis.com/sqlserver.page.buffer_cache.hit_ratio
GAUGEDOUBLE
gce_instance
 
workload.googleapis.com/sqlserver.page.checkpoint.flush.rate
GAUGEDOUBLE
gce_instance
 
workload.googleapis.com/sqlserver.page.lazy_write.rate
GAUGEDOUBLE
gce_instance
 
workload.googleapis.com/sqlserver.page.life_expectancy
GAUGEINT64
gce_instance
 
workload.googleapis.com/sqlserver.page.operation.rate
GAUGEDOUBLE
gce_instance
type
workload.googleapis.com/sqlserver.page.split.rate
GAUGEDOUBLE
gce_instance
 
workload.googleapis.com/sqlserver.transaction.rate
GAUGEDOUBLE
gce_instance
database
workload.googleapis.com/sqlserver.transaction.write.rate
GAUGEDOUBLE
gce_instance
database
workload.googleapis.com/sqlserver.transaction_log.flush.data.rate
GAUGEDOUBLE
gce_instance
database
workload.googleapis.com/sqlserver.transaction_log.flush.rate
GAUGEDOUBLE
gce_instance
database
workload.googleapis.com/sqlserver.transaction_log.flush.wait.rate
GAUGEDOUBLE
gce_instance
database
workload.googleapis.com/sqlserver.transaction_log.growth.count
CUMULATIVEINT64
gce_instance
database
workload.googleapis.com/sqlserver.transaction_log.percent_used
GAUGEINT64
gce_instance
database
workload.googleapis.com/sqlserver.transaction_log.shrink.count
CUMULATIVEINT64
gce_instance
database
workload.googleapis.com/sqlserver.user.connection.count
GAUGEINT64
gce_instance
 

Verificar la configuración

En esta sección se describe cómo verificar que ha configurado correctamente el receptor de SQL Server. El agente de Ops puede tardar uno o dos minutos en empezar a recoger datos de telemetría.

Para verificar que las métricas de SQL Server se envían a Cloud Monitoring, haz lo siguiente:

  1. En la Google Cloud consola, ve a la página  Explorador de métricas:

    Ve al explorador de métricas.

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Monitorización.

  2. En la barra de herramientas del panel de creación de consultas, selecciona el botón cuyo nombre sea  MQL o  PromQL.
  3. Verifica que PromQL esté seleccionado en el interruptor Idioma. El interruptor de idioma se encuentra en la misma barra de herramientas que te permite dar formato a tu consulta.
    • En el caso de las métricas de la versión 1, introduce la siguiente consulta en el editor y, a continuación, haz clic en Ejecutar consulta:
      {"agent.googleapis.com/mssql/connections/user", monitored_resource="gce_instance"}
      
    • En el caso de las métricas de la versión 2, introduzca la siguiente consulta en el editor y, a continuación, haga clic en Ejecutar:
      {"workload.googleapis.com/sqlserver.user.connection.count", monitored_resource="gce_instance"}
      

Ver panel de control

Para ver las métricas de SQL Server, debe tener configurado un gráfico o un panel de control. La integración de SQL Server incluye uno o varios paneles de control. Los paneles de control se instalan automáticamente después de configurar la integración y cuando el agente de Ops ha empezado a recoger datos de métricas.

También puedes ver vistas previas estáticas de los paneles de control sin instalar la integración.

Para ver un panel de control instalado, siga estos pasos:

  1. En la Google Cloud consola, ve a la página  Paneles de control:

    Ve a Paneles.

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Monitorización.

  2. Seleccione la pestaña Lista de paneles de control y, a continuación, elija la categoría Integraciones.
  3. Haga clic en el nombre del panel de control que quiera ver.

Si has configurado una integración, pero el panel de control no se ha instalado, comprueba que el agente de operaciones se esté ejecutando. Si no hay datos de métricas para un gráfico del panel de control, no se podrá instalar el panel. Una vez que el agente de Ops empiece a recoger métricas, se instalará el panel de control.

Para ver una vista previa estática del panel de control, siga estos pasos:

  1. En la Google Cloud consola, ve a la página  Integraciones:

    Ve a Integraciones.

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Monitorización.

  2. Haz clic en el filtro de plataforma de implementación Compute Engine.
  3. Busca la entrada de SQL Server y haz clic en Ver detalles.
  4. Seleccione la pestaña Paneles para ver una vista previa estática. Si el panel de control está instalado, puedes acceder a él haciendo clic en Ver panel de control.

Para obtener más información sobre los paneles de control de Cloud Monitoring, consulta Paneles de control y gráficos.

Para obtener más información sobre cómo usar la página Integraciones, consulta el artículo Gestionar integraciones.

Instalar políticas de alertas

Las políticas de alertas indican a Cloud Monitoring que te envíe una notificación cuando se produzcan las condiciones especificadas. La integración de SQL Server incluye una o varias políticas de alertas que puedes usar. Puedes ver e instalar estas políticas de alertas desde la página Integraciones de Monitoring.

Para ver las descripciones de las políticas de alertas disponibles e instalarlas, haz lo siguiente:

  1. En la Google Cloud consola, ve a la página  Integraciones:

    Ve a Integraciones.

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Monitorización.

  2. Busca la entrada de SQL Server y haz clic en Ver detalles.
  3. Selecciona la pestaña Alertas. En esta pestaña se ofrecen descripciones de las políticas de alertas disponibles y se proporciona una interfaz para instalarlas.
  4. Instala las políticas de alertas. Las políticas de alertas necesitan saber dónde enviar las notificaciones de que se ha activado una alerta, por lo que requieren información para la instalación. Para instalar políticas de alertas, haz lo siguiente:
    1. En la lista de políticas de alertas disponibles, selecciona las que quieras instalar.
    2. En la sección Configurar notificaciones, selecciona uno o varios canales de notificación. Puedes inhabilitar el uso de canales de notificación, pero si lo haces, tus políticas de alertas se activarán de forma silenciosa. Puedes consultar su estado en Monitorización, pero no recibirás ninguna notificación.

      Para obtener más información sobre los canales de notificación, consulta el artículo Gestionar canales de notificación.

    3. Haz clic en Crear políticas.

Para obtener más información sobre las políticas de alertas en Cloud Monitoring, consulta la introducción a las alertas.

Para obtener más información sobre cómo usar la página Integraciones, consulta el artículo Gestionar integraciones.

Siguientes pasos

Para ver una guía sobre cómo usar Ansible para instalar el Agente de operaciones, configurar una aplicación de terceros e instalar un panel de control de ejemplo, consulta el vídeo Instalar el Agente de operaciones para solucionar problemas con aplicaciones de terceros.