Recopilación de eventos y contadores de rendimiento de máquinas virtuales con el agente de Azure Monitor

En este artículo se describe cómo recopilar eventos y contadores de rendimiento de máquinas virtuales mediante el agente de Azure Monitor.

Requisitos previos

Para completar este procedimiento, necesita:

Creación de una regla de recopilación de datos

Puede definir una regla de recopilación de datos para enviar datos de varias máquinas a varias áreas de trabajo de Log Analytics, incluidas las áreas de trabajo de otra región o inquilino. Cree la regla de recopilación de datos en la misma región que el área de trabajo de Log Analytics. Puede enviar datos de eventos de Windows y Syslog solo a los registros de Azure Monitor Logs. Los contadores de rendimiento se pueden enviar a métricas de Azure Monitor y registros de Azure Monitor.

Nota

En este momento, los recursos de Microsoft.HybridCompute (servidores habilitados para Azure Arc) no se pueden ver en el Explorador de métricas (la experiencia de usuario de Azure Portal), pero se pueden obtener mediante la API de REST de métricas (espacio de nombres de métricas: lista; definiciones de métricas: lista; y métricas: lista).

Nota

Para enviar datos entre inquilinos, primero debe habilitar Azure Lighthouse.

  1. En el menú Supervisión, seleccione las Reglas de recopilación de datos.

  2. Haga clic en Crear para crear una nueva regla de recopilación de datos y asociaciones.

    Captura de pantalla que muestra el botón Crear en la pantalla Reglas de recopilación de datos.

  3. Introduzca un nombre a la regla y especifique una suscripción, un grupo de recursos, una región y un tipo de plataforma:

    • Región especifica dónde se creará la regla de recopilación de datos. Las máquinas virtuales y sus asociaciones pueden estar en cualquier suscripción o grupo de recursos del inquilino.
    • Tipo de plataforma especifica el tipo de recursos a los que se puede aplicar esta regla. La opción Personalizadopermite tipos de Windows y Linux.

    Captura de pantalla que muestra la pestaña Básico de la pantalla Regla de recopilación de datos.

  4. En la pestaña Recursos:

    1. Seleccione + Agregar recursos y asocie recursos a la regla de recopilación de datos. Los recursos pueden ser máquinas virtuales, conjuntos de escalado de máquinas virtuales y Azure Arc para servidores. Azure Portal instala el agente de Azure Monitor en recursos que no lo tengan ya instalado.

      Importante

      El portal habilita una identidad administrada asignada por el sistema en los recursos de destino, junto con las identidades asignadas por el usuario existentes, si existen. En el caso de las aplicaciones que ya existan, y a menos que se especifique la identidad asignada por el usuario en la solicitud, la máquina usa de manera predeterminada la identidad asignada por el sistema.

      Si necesita aislamiento de red mediante vínculos privados, seleccione los puntos de conexión de la misma región que los recursos respectivos o cree uno.

    2. Seleccione Habilitar puntos de conexión de recopilación de datos.

    3. Seleccione un punto de conexión de recopilación de datos para cada uno de los recursos asociados a la regla de recopilación de datos.

    Captura de pantalla que muestra la pestaña Recursos de la pantalla Regla de recopilación de datos.

  5. En la pestaña Recopilar y entregar, haga clic en Agregar origen de datos para agregar un origen de datos y un conjunto de destino.

  6. Seleccione un tipo de origen de datos.

  7. Seleccione los datos que desea recopilar. Para los contadores de rendimiento, puede seleccionar entre un conjunto predefinido de objetos y su frecuencia de muestreo. En el caso de los eventos, puede seleccionar entre un conjunto de registros y niveles de gravedad.

    Captura de pantalla que muestra el formulario de Azure Portal para seleccionar los contadores de rendimiento básicos en una regla de recopilación de datos.

  8. Seleccione Personalizado para recopilar registros y contadores de rendimiento que no admitan actualmente orígenes de datos o para filtrar eventos mediante consultas XPath. Después, puede especificar un XPath para los valores específicos. Por ejemplo, consulte la regla de recopilación de datos de muestra.

    Captura de pantalla que muestra el formulario de Azure Portal para seleccionar los contadores de rendimiento personalizados en una regla de recopilación de datos.

  9. En la pestaña Destination (Destino), agregue uno o varios destinos para el origen de datos. Puede seleccionar destinos múltiples destinos del mismo o distinto tipo. Por ejemplo, puede seleccionar varias áreas de trabajo de Log Analytics, lo que también se conoce como hospedaje múltiple.

    Los orígenes de datos de Syslog y los de eventos de Windows solo se pueden enviar a registros de Azure Monitor. Los contadores de rendimiento se pueden enviar a métricas de Azure Monitor y registros de Azure Monitor. En este momento, los recursos de proceso híbrido (Arc for Server) no admiten el destino de métricas de Azure Monitor (versión preliminar).

    Captura de pantalla que muestra el formulario de Azure Portal para agregar un origen de datos a una regla de recopilación de datos.

  10. Seleccione Agregar origen de datos y, después seleccioneRevisar y crear para revisar los detalles de la regla de recopilación de datos y la asociación con el conjunto de máquinas virtuales.

  11. Elija Crear para crear la regla de recopilación de datos.

Archivo de parámetros
{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "vmName": {
      "value": "my-azure-vm"
    },
    "associationName": {
      "value": "my-windows-vm-my-dcr"
    },
    "dataCollectionRuleId": {
      "value": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/microsoft.insights/datacollectionrules/my-dcr"
    }
   }
}

Nota:

Los datos pueden tardar hasta 5 minutos en enviarse a los destinos después de crear la regla de recopilación de datos.

Filtrado de eventos mediante consultas XPath

Se le cobran los datos recopilados en un área de trabajo Log Analytics. Por lo tanto, solo debe recopilar los datos de eventos que necesite. La configuración básica de Azure Portal proporciona una capacidad limitada para filtrar eventos.

Sugerencia

Para descubrir estrategias que le ayudarán a reducir los costes de Azure Monitor, consulte Optimización de costes y Azure Monitor.

Para especificar más filtros, use la configuración personalizada y especifique un XPath que filtre los eventos que no necesita. Las entradas XPath se escriben en el formulario LogName!XPathQuery. Por ejemplo, podría desear devolver solo los eventos del registro de eventos de aplicación con el identificador de evento 1035. El XPathQuery para estos eventos sería *[System[EventID=1035]]. Dado que desea recuperar los eventos del registro de eventos de la aplicación, el XPath es Application!*[System[EventID=1035]]

Extracción de consultas XPath del Visor de eventos de Windows

En Windows, puede usar Visor de eventos para extraer consultas XPath, como se muestra en las pantallas.

Al pegar la consulta XPath en el campo de la pantalla Agregar origen de datos como se muestra en el paso 5, debe anexar la categoría de tipo de registro seguida de una exclamación (!).

Captura de pantalla que se muestra los pasos para crear una consulta XPath en el Visor de eventos de Windows.

Sugerencia

Puede usar el cmdlet Get-WinEvent de PowerShell con el parámetro FilterXPath para probar primero la validez de una consulta XPath de forma local en la máquina. Para más información, consulte la sugerencia que se proporciona en las conexiones basadas en el agente de Windows. El cmdlet de PowerShell Get-WinEvent admite hasta 23 expresiones. Las reglas de recopilación de datos de Azure Monitor admiten hasta 20. En el script siguiente se muestra un ejemplo:

$XPath = '*[System[EventID=1035]]'
Get-WinEvent -LogName 'Application' -FilterXPath $XPath
  • En el cmdlet anterior, el valor del parámetro -LogName es la parte inicial de la consulta XPath hasta la exclamación (!). mientras que el resto de la consulta XPath entra en el parámetro $XPath.
  • Si el script devuelve eventos, la consulta es válida.
  • Si recibe el mensaje "No se encontraron eventos que coincidan con los criterios de selección especificados", la consulta podría ser válida, pero no hay eventos coincidentes en el equipo local.
  • Si recibe el mensaje “La consulta especificada no es válida”, la sintaxis de la consulta no es válida.

Ejemplos de uso de un XPath personalizado para filtrar eventos:

Descripción XPath
Recopilar solo eventos del Sistema con id. de Evento = 4648 System!*[System[EventID=4648]]
Recopilar eventos del registro de seguridad con id. de evento = 4648 y el nombre de proceso consent.exe Security!*[System[(EventID=4648)]] and *[EventData[Data[@Name='ProcessName']='C:\Windows\System32\consent.exe']]
Recopilar todos los eventos críticos, de error, de advertencia y de información del registro de eventos del Sistema, excepto el id. de evento = 6 (controlador cargado) System!*[System[(Level=1 or Level=2 or Level=3) and (EventID != 6)]]
Recopilación de todos los eventos de seguridad correctos y erróneos excepto el id. de evento 4624 (inicio de sesión correcto) Security!*[System[(band(Keywords,13510798882111488)) and (EventID != 4624)]]

Nota:

Para obtener una lista de las limitaciones de XPath que admite el registro de eventos de Windows, vea limitaciones de XPath 1.0.
Por ejemplo, puede usar las funciones "position", "Band" y "timediff" dentro de la consulta, pero no se admiten actualmente otras funciones como "starts-with" y "contains".

Preguntas más frecuentes

Esta sección proporciona respuestas a preguntas comunes.

¿Cómo puedo recopilar eventos de seguridad de Windows mediante el agente de Azure Monitor?

Hay dos maneras de recopilar eventos de seguridad mediante el nuevo agente, en los envíos a un área de trabajo de Log Analytics:

  • Puede usar el agente de Azure Monitor para recopilar eventos de seguridad de forma nativa, igual que otros eventos de Windows. Estos fluyen a la tabla "Evento" del área de trabajo de Log Analytics.
  • Si tiene Microsoft Sentinel habilitado en el área de trabajo, los eventos de seguridad fluyen a través del agente de Azure Monitor en la tabla SecurityEvent (igual que con el agente de Log Analytics). En este caso, siempre requerirá que la solución se habilite primero.

¿Se duplicarán los eventos si uso el agente de Azure Monitor y el agente de Log Analytics en la misma máquina?

Si va a recopilar los mismos eventos con ambos agentes, habrá duplicación. Esta duplicación podría ser el agente heredado que recopila datos redundantes de los datos de configuración del área de trabajo, que se recopilan por la regla de recopilación de datos. O bien, es posible que recopile eventos de seguridad con el agente heredado y habilite Eventos de seguridad de Windows con los conectores del agente de Azure Monitor en Microsoft Sentinel.

Limitar los eventos de duplicación a solo el momento de la transición de un agente al otro. Después de probar completamente la regla de recopilación de datos y comprobar la recopilación de datos, desconecte la recopilación deshabilitada para el área de trabajo y los conectores de datos de Microsoft Monitoring Agent.

¿Ofrece el agente de Azure Monitor opciones de filtrado de eventos más granulares además de las consultas Xpath y la especificación de contadores de rendimiento?

En el caso de los eventos de Syslog en Linux, puede seleccionar Instalaciones y el nivel de registro de cada instalación.

Si creo reglas de recopilación de datos que contienen el mismo identificador de evento y las asocio a la misma máquina virtual, ¿se duplicarán los eventos?

Sí. Para evitar la duplicación, asegúrese de que la selección de eventos que realice en las reglas de recopilación de datos no contenga eventos duplicados.

Pasos siguientes