IIS

La integración de Internet Information Services recopila la telemetría de tus servidores web IIS. Las métricas proporcionan información de conexión y, también, datos sobre bytes transferidos. La integración también recopila información de los registros de acceso.

Para obtener más información de IIS, consulta la documentación de Internet Information Services.

Antes de comenzar

La versión 2.15.0 del agente de operaciones presenta compatibilidad con un conjunto nuevo de métricas de IIS con el prefijo workload.googleapis.com/. Debes configurar el agente para que recopile estas métricas, como se describe en la configuración de ejemplo.

El agente de operaciones siempre admite un conjunto limitado de métricas de IIS; estas métricas usan el prefijo agent.googleapis.com/iis/. No se necesita ninguna configuración adicional para recopilar estas métricas en las VMs de Windows.

En este documento, se hace referencia a las métricas con el prefijo agent como las métricas v1 y a las métricas con el prefijo workload como las métricas v2. Para ver las tablas de estas métricas, consulta Qué se supervisa.

A partir de la versión 2.15.0 del agente de operaciones, puedes configurar el agente para recopilar métricas v1, métricas v2 o ambas.

Requisitos previos

Para recopilar la telemetría de IIS, debes instalar el agente de operaciones:

  • Para las métricas de la versión 1, instala la versión 1.0.0 o superior.
  • Para las métricas de v2, instala la versión 2.15.0 o una posterior.
  • Para los registros, instala la versión 2.14.0 o una posterior.

Esta integración es compatible con las versiones 8.5 y 10.0 de IIS.

Configura el agente de operaciones para IIS

con la guía Configura el agente de operaciones, agrega los elementos necesarios para recopilar telemetría de instancias de IIS y reinicia el agente.

Configuración de ejemplo

El siguiente comando crea la configuración para recopilar y transferir la telemetría de IIS y reinicia el agente de operaciones.

$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 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:
    iis_v2:
      type: iis
      receiver_version: 2
  service:
    pipelines:
      iispipeline:
        receivers:
          - iis_v2
logging:
  receivers:
    iis_access:
      type: iis_access
  service:
    pipelines:
      iis:
        receivers:
        - iis_access
"

# Stop-Service may fail if the service isn't in a Running state yet.
(Get-Service google-cloud-ops-agent*).WaitForStatus('Running', '00:03:00')
Stop-Service google-cloud-ops-agent -Force
Start-Service google-cloud-ops-agent*

Este receptor solo admite el formato de registro W3C predeterminado.

Configura la recopilación de registros

Para transferir los registros de acceso desde IIS, debes crear receptores para los registros y, luego, crear una canalización para los receptores nuevos.

Para configurar un receptor para tus registros iis_access, especifica los siguientes campos:

Campo Predeterminada Descripción
exclude_paths [] Una lista de patrones de ruta de acceso del sistema de archivos que se excluirán del conjunto que coincide con include_paths.
include_paths ['C:\inetpub\logs\LogFiles\W3SVC1\u_ex*'] Una lista de rutas de acceso del sistema de archivos que se leerán con la visualización del final de cada archivo. Se puede usar un comodín (*) en las rutas. Por ejemplo, C:\inetpub\logs\LogFiles\W3SVC1\u_ex*.
type El valor debe ser iis_access.
record_log_file_path false Si se configura como true, la ruta al archivo específico desde el que se obtuvo el registro aparece en la entrada de registro de salida como el valor de la etiqueta agent.googleapis.com/log_file_path. Cuando se usa un comodín, solo se registra la ruta de acceso del archivo del que se obtuvo el registro.
wildcard_refresh_interval 60s El intervalo en el que se actualizan las rutas de acceso de archivos comodín en include_paths. Especificado como un intervalo de tiempo que time.ParseDuration puede analizar, por ejemplo, 30 s o 2 m. Esta propiedad puede ser útil en el caso de una capacidad de procesamiento de registro alta en la que los archivos de registro se rotan más rápido que el intervalo predeterminado.

¿Qué se registra?

logName se deriva de los ID de receptor especificados en la configuración. Los campos detallados dentro de LogEntry son los siguientes.

Los registros iis_access contienen los siguientes campos en el LogEntry:

Campo Tipo Descripción
httpRequest.referer string Contenido del encabezado Referer
httpRequest.remoteIp string IP del cliente que realizó la solicitud
httpRequest.requestMethod string Método HTTP
httpRequest.requestUrl string URL de la solicitud (por lo general, es solo la parte de la ruta de acceso de la URL)
httpRequest.serverIp string La IP y el puerto del servidor que se solicitaron
httpRequest.status number Código de estado HTTP
httpRequest.userAgent string Contenido del encabezado User-Agent
jsonPayload.sc_substatus number El código de error del subestado
jsonPayload.sc_win32_status number El código de estado de Windows
jsonPayload.time_taken number El tiempo que llevó a la acción, en milisegundos
jsonPayload.user string Nombre de usuario autenticado para la solicitud
timestamp string (Timestamp) Hora en que se recibió la solicitud

Configura la recopilación de métricas v1

El agente de operaciones en una VM de Microsoft Windows recopila de forma automática las métricas de IIS v1. No es necesario hacer ninguna configuración adicional. Para obtener información de la recopilación solo métricas de v2, consulta Configura la recopilación de métricas v2.

Después de configurar una instancia de IIS nueva, es posible que IIS no informe ninguna métrica de inmediato. Con la consola del administrador de servidores que está instalada en Windows Server, es posible que veas que tu servidor tiene el estado En línea: Contadores de rendimiento no iniciados en la columna Administración.

Una forma de habilitar IIS para generar métricas es hacer clic con el botón derecho en tu servidor IIS en la consola del Administrador de servidores y elegir Iniciar contadores de rendimiento. El servidor debería comenzar a enviar métricas al agente de operaciones.

Configura la recopilación de métricas v2

Para transferir las métricas v2 desde IIS, debes crear un receptor para las métricas que produce IIS y, luego, crear una canalización para el receptor nuevo.

Este receptor no admite el uso de varias instancias en la configuración, por ejemplo, para supervisar varios extremos. Todas estas instancias escriben en las mismas series temporales, y Cloud Monitoring no tiene forma de distinguirlas.

Para configurar un receptor para las métricas de iis, especifica los siguientes campos:

Campo Predeterminada Descripción
collection_interval 60 s Un valor time.Duration, como 30 s o 5 m.
receiver_version La versión de las métricas recopiladas Usa 2 para recopilar métricas de la versión 2.
type Este valor debe ser iis.

De forma predeterminada, las métricas v1 se recopilan de forma automática. Puedes aumentar las métricas de v1 si recopilas solo las métricas de v2 o puedes anular las métricas de v1 para recopilar solo las métricas de v2.

  • Para recopilar solo métricas de la versión 2, haz lo siguiente:

    • Asigna el nombre iis al receptor.
    • Configura el campo type como iis.
    • Configura el campo receiver_version como 2.
    • Usa este receptor en tu canalización de default_pipeline. Esta configuración anula la configuración integrada del receptor iis.
  • Para recopilar las métricas de v1 y v2, haz lo siguiente:

    • Asigna un nombre que no sea iis a tu receptor, como iis_v2.
    • Configura el campo type como iis.
    • Establece receiver_version en “2”.
    • Usa este receptor en tu canalización nueva. Esta configuración agrega un receptor v2 en lugar de anular el receptor integrado. La secuencia de comandos en la Configuración de ejemplo usa este enfoque.

Qué se supervisa

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

  • Métricas de v1: agent.googleapis.com/iis/.
  • Métricas de v2: workload.googleapis.com/.
Métricas de V1

En la siguiente tabla, se proporciona una lista de las métricas v1 que recopila el agente de operaciones de la instancia de IIS.

Las strings de “tipo de métrica” de esta tabla deben tener el prefijo agent.googleapis.com/iis/. Este prefijo se omitió 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 Etapa de lanzamiento
Nombre visible
Clase, tipo, unidad
Recursos supervisados
Descripción
Etiquetas
current_connections GA
Conexiones abiertas de IIS
GAUGEDOUBLE1
aws_ec2_instance
gce_instance
Conexiones abiertas actualmente a IIS. Se tomaron muestras cada 60 segundos.
network/transferred_bytes_count GA
Bytes transferidos de IIS
CUMULATIVEINT64By
aws_ec2_instance
gce_instance
Bytes de red transferidos por IIS. Se tomaron muestras cada 60 segundos.
direction: Dirección (enviada, recibida)
new_connection_count GA
Conexiones de IIS
CUMULATIVEINT641
aws_ec2_instance
gce_instance
Conexiones abiertas a IIS. Se tomaron muestras cada 60 segundos.
request_count GA
Solicitudes de IIS
CUMULATIVEINT641
aws_ec2_instance
gce_instance
Solicitudes realizadas a IIS. Se tomaron muestras cada 60 segundos.
http_method: Método Http (post, put, get, delete, option, trace, head)

Tabla generada el 11 de abril de 2024 a las 19:12:46 UTC.

Métricas de V2

En la siguiente tabla, se proporciona una lista de las métricas v2 que recopila el agente de operaciones desde la instancia de IIS.

Tipo de métrica 
Categoría, tipo
Recursos supervisados
Etiquetas
workload.googleapis.com/iis.request.count
CUMULATIVEINT64
gce_instance
request
workload.googleapis.com/iis.request.rejected
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/iis.request.queue.count
GAUGEINT64
gce_instance
 
workload.googleapis.com/iis.request.queue.age.max
GAUGEINT64
gce_instance
 
workload.googleapis.com/iis.network.file.count
CUMULATIVEINT64
gce_instance
direction
workload.googleapis.com/iis.network.blocked
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/iis.network.io
CUMULATIVEINT64
gce_instance
direction
workload.googleapis.com/iis.connection.attempt.count
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/iis.connection.active
GAUGEINT64
gce_instance
 
workload.googleapis.com/iis.connection.anonymous
CUMULATIVEINT64
gce_instance
 
workload.googleapis.com/iis.thread.active
GAUGEINT64
gce_instance
 
workload.googleapis.com/iis.uptime
GAUGEINT64
gce_instance
 

Verifica la configuración

```

Verifica la configuración

En esta sección, se describe cómo verificar de forma correcta que hayas configurado el receptor de IIS. El agente de operaciones puede tardar uno o dos minutos en comenzar a recopilar telemetría.

Para verificar que los registros de IIS se envíen a Cloud Logging, haz lo siguiente:

  1. En el panel de navegación de la consola de Google Cloud, elige Logging y, luego, Explorador de registros:

    Ir al Explorador de registros

  2. Escribe la siguiente consulta en el editor y, luego, haz clic en Ejecutar consulta:
    resource.type="gce_instance"
    log_id("iis_access")
    

Para verificar que las métricas de IIS se envíen a Cloud Monitoring, haz lo siguiente:

  1. En el panel de navegación de la consola de Google Cloud, elige Monitoring y, luego,  Explorador de métricas:

    Ir al Explorador de métricas

  2. En la barra de herramientas del panel del compilador de consultas, selecciona el botón cuyo nombre sea  MQL o  PromQL.
  3. Verifica que MQL esté seleccionado en el botón de activación Lenguaje. El botón de activación de lenguaje se encuentra en la misma barra de herramientas que te permite dar formato a tu consulta.
    • Para las métricas de v1, escribe la siguiente consulta en el editor y, luego, haz clic en Ejecutar consulta:
      fetch gce_instance
      | metric 'agent.googleapis.com/iis/request_count'
      | every 1m
      
    • Para las métricas de v2, escribe la siguiente consulta en el editor y, luego, haz clic en Ejecutar:
      fetch gce_instance
      | metric 'workload.googleapis.com/iis.request.count'
      | every 1m
      

Ver panel

Para ver tus métricas de IIS, debes tener configurado un gráfico o un panel. La integración de IIS incluye uno o más paneles. Cualquier panel se instala de forma automática después de que configuras la integración y de que el agente de operaciones comienza a recopilar datos de métricas.

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

Para ver un panel instalado, haz lo siguiente:

  1. En el panel de navegación de la consola de Google Cloud, elige Monitoring y, luego,  Paneles:

    Dirígete a Paneles de control

  2. Selecciona la pestaña Lista de paneles y, luego, la categoría Integraciones.
  3. Haz clic en el nombre del panel que quiera ver.

Si configuraste una integración, pero el panel no se instaló, verifica que el agente de operaciones se esté ejecutando. Cuando no hay datos de métricas para un gráfico en el panel, la instalación del panel falla. Una vez que el agente de operaciones comienza a recopilar métricas, el panel se instalará por ti.

Para obtener una vista previa estática del panel, haz lo siguiente:

  1. En el panel de navegación de la consola de Google Cloud, elige Monitoring y, luego,  Integraciones:

    Dirígete a Integraciones

  2. Haz clic en el filtro de la plataforma de implementación Compute Engine.
  3. Ubica la entrada de IIS y haz clic en Vista de detalles.
  4. Selecciona la pestaña Paneles para ver una vista previa estática. Si el panel está instalado, haz clic en Ver panel para navegar a él.

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

Para obtener más información del uso de la página Integraciones, consulta Administra integraciones.

Instala políticas de alertas

Las políticas de alertas le indican a Cloud Monitoring que te notifique cuando ocurren condiciones especificadas. La integración de IIS incluye una o más políticas de alertas para que uses. Puedes ver e instalar estas políticas de alertas desde la página Integraciones en Monitoring.

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

  1. En el panel de navegación de la consola de Google Cloud, elige Monitoring y, luego,  Integraciones:

    Dirígete a Integraciones

  2. Ubica la entrada de IIS y haz clic en Vista de detalles.
  3. Selecciona la pestaña Alertas. En esta pestaña, se proporcionan descripciones de las políticas de alertas disponibles y una interfaz para instalarlas.
  4. Instala las políticas de alertas. Las políticas de alertas deben saber a dónde enviar notificaciones que la alerta se activó, por lo que requieren información de ti para la instalación. Para instalar las políticas de alertas, haz lo siguiente:
    1. En la lista de políticas de alertas disponibles, elige las que deseas instalar.
    2. En la sección Configura notificaciones, elige uno o más canales de notificaciones. Tienes la opción de inhabilitar el uso de los canales de notificación, pero si lo haces, las políticas de alertas se activarán de forma silenciosa. Puedes verificar su estado en Monitoring, pero no recibirás notificaciones.

      Para obtener más información de los canales de notificaciones, consulta Administra canales de notificaciones.

    3. Haz clic en Crear políticas.

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

Para obtener más información del uso de la página Integraciones, consulta Administra integraciones.

¿Qué sigue?

Para obtener una explicación sobre cómo usar Ansible para instalar el agente de operaciones, configurar una aplicación de terceros y, luego, instalar un panel de muestra, consulta el video Instala el agente de operaciones para solucionar problemas de apps de terceros.