Desarrolla extensiones del analizador
En este documento, se explica cómo crear extensiones de analizador para extraer campos de datos de registro sin procesar y asignarlos a campos de UDM (modelo de datos unificado) de destino dentro de la plataforma de Google Security Operations.
En el documento, se describe el proceso de creación de la extensión del analizador:
- Crea extensiones de analizador.
- Requisitos previos y limitaciones.
- Identifica los campos de origen en los datos de registro sin procesar.
- Selecciona los campos de UDM de destino adecuados.
Elige el enfoque adecuado para definir la extensión del analizador:
Definir una extensión de analizador incluye diseñar la lógica de análisis para filtrar los datos de registro sin procesar, transformar los datos y asignarlos a los campos de UDM de destino. Google SecOps proporciona dos enfoques para crear extensiones de analizador:
- Crea extensiones de analizador con el enfoque sin código (Asignar campos de datos).
- Crea extensiones de analizador con el enfoque de fragmento de código.
Ejemplos ilustrativos de creación de extensiones de analizadores para varios formatos y situaciones de registro. Por ejemplo, ejemplos sin código con JSON y fragmentos de código para lógica compleja o formatos que no sean JSON (CSV, XML, Syslog).
Crea extensiones del analizador
Las extensiones de analizador proporcionan una forma flexible de extender las capacidades de los analizadores predeterminados (y personalizados) existentes. Las extensiones de analizador proporcionan una forma flexible de extender las capacidades de los analizadores predeterminados (o personalizados) existentes sin reemplazarlos. Las extensiones te permiten personalizar la canalización del analizador agregando una nueva lógica de análisis, extrayendo y transformando campos, y actualizando o quitando asignaciones de campos de UDM.
Una extensión de analizador no es lo mismo que un analizador personalizado. Puedes crear un analizador personalizado para el tipo de registro que no tiene un analizador predeterminado o para inhabilitar las actualizaciones del analizador.
Proceso de extracción y normalización del analizador
Google SecOps recibe los datos de registro originales como registros sin procesar. Los analizadores predeterminados (y personalizados) extraen y normalizan los campos de registro principales en campos de UDM estructurados en los registros de UDM. Esto representa solo un subconjunto de los datos de registro sin procesar originales. Puedes definir extensiones de analizador para extraer valores de registro que no controlan los analizadores predeterminados. Una vez activadas, las extensiones de analizador se convierten en parte del proceso de extracción y normalización de datos de Google SecOps.

Define nuevas extensiones del analizador
Los analizadores predeterminados contienen conjuntos predefinidos de instrucciones de asignación que especifican cómo extraer, transformar y normalizar los valores de seguridad principales. Puedes crear extensiones de analizador nuevas definiendo instrucciones de asignación con el enfoque sin código (Asignar campos de datos) o el enfoque de fragmento de código:
Enfoque sin código
El enfoque sin código es más adecuado para extracciones simples de registros sin procesar en formato JSON, XML o CSV nativo. Te permite especificar campos de origen de registros sin procesar y asignar los campos de UDM de destino correspondientes.
Por ejemplo, para extraer datos de registro JSON con hasta 10 campos, usa comparaciones de igualdad simples.
Enfoque de fragmento de código
El enfoque de fragmento de código te permite definir instrucciones para extraer y transformar valores del registro sin procesar y asignarlos a campos de UDM. Los fragmentos de código usan la misma sintaxis similar a Logstash que el analizador predeterminado (o personalizado).
Este enfoque se aplica a todos los formatos de registro admitidos. Es ideal para las siguientes situaciones:
- Extracciones de datos complejas o lógica compleja
- Datos no estructurados que requieren analizadores basados en Grok
- Formatos que no son JSON, como CSV y XML
Los fragmentos de código usan funciones para extraer datos específicos de los datos de registro sin procesar. Por ejemplo, Grok, JSON, KV y XML.
En la mayoría de los casos, es mejor usar el enfoque de asignación de datos que se usó en el analizador predeterminado (o personalizado).
Combinar los valores extraídos recientemente en los campos de UDM
Una vez activadas, las extensiones del analizador combinan los valores extraídos recientemente en los campos de UDM designados en el registro de UDM correspondiente según los principios de combinación predefinidos. Por ejemplo:
Reemplazar los valores existentes: Los valores extraídos reemplazan los valores existentes en los campos de UDM de destino.
La única excepción son los campos repetidos, en los que puedes configurar la extensión del analizador para que agregue valores nuevos cuando se escriben datos en un campo repetido en el registro de UDM.
La extensión del analizador tiene prioridad: Las instrucciones de asignación de datos en una extensión del analizador tienen prioridad sobre las del analizador predeterminado (o personalizado) para ese tipo de registro. Si hay un conflicto en las instrucciones de asignación, la extensión del analizador reemplazará el valor establecido por el valor predeterminado.
Por ejemplo, si el analizador predeterminado asigna un campo de registro sin procesar al campo de UDM
event.metadata.descriptiony la extensión del analizador asigna un campo de registro sin procesar diferente a ese mismo campo de UDM, la extensión del analizador reemplaza el valor establecido por el analizador predeterminado.
Selector de campos repetidos
En los enfoques de campos de datos de mapas (sin código) y de fragmentos de código de escritura, puedes controlar cómo la extensión del analizador guarda los valores en los campos repetidos (campos que admiten un array de valores, por ejemplo, principal.ip). En el panel Extensión (definición de la extensión), usa el campo Campos repetidos, que ofrece las opciones Agregar valores y Reemplazar valores.
Comportamiento de agregar frente al de reemplazar
Algunos campos de UDM almacenan un array de valores, como el campo principal.ip. El selector Campos repetidos te permite controlar cómo almacena tu extensión del analizador los datos recién extraídos en un campo repetido:
Valores agregados:
La extensión del analizador agregará el valor recién extraído al array de valores existentes en el campo de UDM.
Reemplaza los valores:
La extensión del analizador reemplazará el array de valores existentes en el campo de UDM por el valor extraído recientemente.
Una extensión de analizador puede asignar datos a un campo repetido solo cuando el campo repetido está en el nivel más bajo de la jerarquía. Por ejemplo:
- Se admite la asignación de valores a
udm.principal.ipporque el campoiprepetido está en el nivel más bajo de la jerarquía yprincipalno es un campo repetido. - No se admite la asignación de valores a
udm.intermediary.hostnameporqueintermediaryes un campo repetido y no está en el nivel más bajo de la jerarquía.
En la siguiente tabla, se proporcionan ejemplos de cómo la configuración del selector de campos repetidos afecta el registro de UDM generado.
| Selección de Campos repetidos | Ejemplo de registro | Configuración de la extensión del analizador | Resultado generado |
|---|---|---|---|
| Valores agregados | {"protoPayload":{"@type":"type.AuditLog","authenticationInfo":{"principalEmail":" |
Campo de condición previa: protoPayload.requestMetadata.callerIp
Valor de condición previa: " "
Operador de condición previa: NOT_EQUALS
Campo de datos sin procesar: protoPayload.requestMetadata.callerIp
Campo de destino: event.idm.read_only_udm.principal.ip
|
metadata:{event_timestamp:{}.....}principal:{Ip:"1.1.1.1, 2.2.2.2"}
}
} |
| Valores agregados | {"protoPayload":{"@type":"type.AuditLog","authenticationInfo":{"principalEmail":" |
Condición previa 1:
Campo de condición previa: protoPayload.requestMetadata.callerIp
Valor de condición previa: " "
Operador de condición previa: NOT_EQUALS
Campo de datos sin procesar: protoPayload.requestMetadata.callerIp
Campo de destino: event.idm.read_only_udm.principal.ip
Condición previa 2:
|
Eventos generados por el analizador precompilado antes de aplicar la extensión.
metadata:{event_timestamp:{} ... principal:{ip:"1.1.1.1"}}}
Resultado después de aplicar la extensión.
|
| Reemplazar valores | {"protoPayload":{"@type":"type..AuditLog","authenticationInfo":{"principalEmail":" |
Campo de condición previa: protoPayload.authenticationInfo.principalEmail
Valor de condición previa: " "
Operador de condición previa: NOT_EQUALS
Campo de datos sin procesar: protoPayload.authenticationInfo.principalEmail
Campo de destino: event.idm.read_only_udm.principal.ip
|
Eventos de UDM generados por el analizador precompilado antes de aplicar la extensión.timestamp:{} idm:{read_only_udm:{metadata:{event_timestamp:{} ... principal:{ip:"1.1.1.1"}}}
Resultado de UDM después de aplicar la extensión
|
Limitaciones
- Una extensión de analizador por tipo de registro: Puedes crear solo una extensión de analizador por tipo de registro.
- Solo un enfoque de instrucción de asignación de datos: Puedes compilar una extensión de analizador con el enfoque sin código o con el fragmento de código, pero no con ambos enfoques juntos.
- Muestras de registro para la validación: Se requieren muestras de registro de los últimos 30 días para validar una extensión del analizador de UDM. Para obtener más detalles, consulta Asegúrate de que haya un analizador activo para el tipo de registro.
- Errores del analizador base: Los errores del analizador base no se pueden identificar ni corregir dentro de las extensiones del analizador.
- Manejo de campos repetidos: Solo puedes usar un método (Agregar o Reemplazar) en una extensión específica. Ten cuidado cuando reemplaces objetos repetidos completos para evitar la pérdida involuntaria de datos.
Additional.fieldsse interpreta como un conjunto de pares clave-valor, no como un campo repetido: En consecuencia, puedes combinar sin problemas las asignaciones de UDM del analizador y los resultados de UDM de la extensión agregando sus respectivos pares clave-valor al conjunto.- Eventos sin ambigüedades: Las extensiones del analizador no pueden controlar registros con varios eventos únicos en un solo registro, por ejemplo, el array de Google Drive.
- XML y sin código: El modo sin código no es compatible con XML. En su lugar, usa el método del fragmento de código.
- Sintaxis del analizador en comparación con las reglas de detección de YARA-L: Los analizadores de transferencia y las extensiones de analizador usan Logstash Grok y la sintaxis de configuración con filtros (por ejemplo,
grok,mutate,json,dateybase64) en el momento de la transferencia para analizar los registros sin procesar en el modelo de datos unificado (UDM). Los analizadores no pueden usar la sintaxis de YARA-L, los bloques de resultados ni las funciones de generador (comoyield). YARA-L 2.0 es estrictamente un lenguaje de consulta del motor de detección que se evalúa de forma descendente en eventos de UDM normalizados para alertas de amenazas y no puede analizar registros sin procesar, mutar campos de UDM ni descartar el tráfico de registros entrante. - Aplicación solo hacia adelante de forma predeterminada: De forma predeterminada, las extensiones de analizador se aplican a los registros recién transferidos solo desde el momento de la activación. Si existe una necesidad empresarial crítica de volver a analizar los registros históricos con asignaciones actualizadas, puedes solicitar una tarea de reproducción de registros de backend a través del equipo de asistencia de Google Cloud . Para obtener más información, consulta Vuelve a analizar los datos históricos (reproducción de registros).
- No se puede acceder a las etiquetas de transferencia en la lógica del analizador: Las extensiones del analizador no pueden leer las etiquetas de transferencia (
metadata.ingestion_labels) para asignar valores a los campos de UDM porque los analizadores se ejecutan en un entorno de ejecución de zona de pruebas con visibilidad solo en el cuerpo del registro sin procesar. - Palabras clave reservadas con el enfoque sin código: Si los registros contienen alguna de las siguientes palabras clave reservadas, usa el enfoque de fragmento de código en lugar del enfoque sin código:
collectionTimestampcreateTimestampenableCbnForLoopeventfilenamemessagenamespaceoutputonErrorCounttimestamptimezone
- Quita las asignaciones existentes: Puedes quitar las asignaciones de campos de UDM existentes solo con el enfoque de fragmento de código.
- No se puede quitar la asignación de un campo de UDM de nombre de host con una extensión: No puedes anular (quitar) la asignación de un campo de UDM de nombre de host (por ejemplo,
principal.hostname) con una extensión.
Conceptos de analizadores
En los siguientes documentos, se explican conceptos importantes sobre los analizadores:
- Descripción general del modelo de datos unificado
- Descripción general del análisis de registros
- Referencia de la sintaxis del analizador
Requisitos previos
Requisitos previos para crear extensiones de analizador:
- Debe haber un analizador predeterminado (o personalizado) activo para el tipo de registro.
- Google SecOps debe poder transferir y normalizar los registros sin procesar con un analizador predeterminado (o personalizado).
- Asegúrate de que el analizador predeterminado (o personalizado) activo para tu tipo de registro de destino haya transferido datos de registro sin procesar en los últimos 30 días. Estos datos deben contener una muestra de los campos que deseas extraer o usar para filtrar los registros. Se usará para validar tus nuevas instrucciones de asignación de datos.
Comenzar
Antes de crear una extensión de analizador, haz lo siguiente:
-
Asegúrate de que haya un analizador activo para el tipo de registro. Si aún no tiene un analizador, crea uno personalizado.
Identifica los campos que se extraerán de los registros sin procesar:
Identifica los campos que quieres extraer de los registros sin procesar.
Selecciona los campos de UDM adecuados:
Selecciona los campos de UDM correspondientes para asignar los campos de registro sin procesar extraídos.
Elige un enfoque de definición de extensión del analizador:
Elige cualquiera de los dos enfoques de extensión (enfoques de asignación de datos) para crear la extensión del analizador.
Verifica los requisitos previos
Asegúrate de que haya un analizador activo para el tipo de registro que deseas extender, como se describe en las siguientes secciones:
Asegúrate de que haya un analizador activo para el tipo de registro
Asegúrate de que haya un analizador predeterminado (o personalizado) activo para el tipo de registro que quieres extender.
Busca tu tipo de registro en estas listas:
Tipos de registros admitidos con un analizador predeterminado.
- Si hay un analizador predeterminado para el tipo de registro, asegúrate de que el analizador esté activo.
- Si no hay un analizador predeterminado para el tipo de registro, asegúrate de que haya un analizador personalizado para el tipo de registro.
Tipos de registros admitidos sin un analizador predeterminado.
- Si no hay un analizador predeterminado para el tipo de registro, asegúrate de que haya un analizador personalizado para el tipo de registro.
Asegúrate de que haya un analizador personalizado para el tipo de registro
Para asegurarte de que haya un analizador personalizado para un tipo de registro, sigue estos pasos:
- En la barra de navegación, selecciona Configuración > Administración de datos > Analizadores. Si estás en una plataforma solo de SIEM, ve a Configuración > Analizadores.
Busca en la tabla Analizadores el tipo de registro que deseas extender.
- Si ese tipo de registro aún no tiene un analizador predeterminado o personalizado, haz clic en Agregar analizador nuevo (o Crear analizador) y sigue los pasos que se indican en Crea un analizador personalizado basado en las instrucciones de asignación.
- Si ese tipo de registro ya tiene un analizador personalizado, asegúrate de que esté activo.
Asegúrate de que el analizador esté activo para el tipo de registro
Para verificar si un analizador está activo para un tipo de registro, sigue estos pasos:
- En la barra de navegación, selecciona Configuración > Administración de datos > Analizadores. Si estás en una plataforma solo de SIEM, ve a Configuración > Analizadores.
Busca en la tabla Analizadores el tipo de registro que deseas extender.
Si el analizador para el tipo de registro no está activo, actívalo:
- Para conocer los analizadores predeterminados, consulta Administra las actualizaciones de los analizadores compilados previamente.
- Para los analizadores personalizados, consulta Configura analizadores personalizados.
Identifica los campos que se extraerán de los registros sin procesar
Analiza el registro sin procesar del que deseas extraer datos para identificar los campos que no extrae el analizador predeterminado (o personalizado). Presta atención a cómo el analizador predeterminado (o personalizado) extrae los campos de registro sin procesar y los asigna a sus campos de UDM correspondientes.
Para identificar los campos específicos que deseas extraer de los registros sin procesar, puedes usar las herramientas de búsqueda para identificar los campos:
Para acceder a la herramienta de búsqueda, ve a Investigación > Búsqueda de SIEM. Escribe raw= antes de tu búsqueda. Para obtener más detalles, consulta Busca registros sin procesar.
Para acceder a la herramienta de búsqueda heredada, haz clic en Ir a la búsqueda heredada en la parte superior de la página Búsqueda de SIEM. Para obtener más detalles, consulta Método heredado: Usa el mensaje de búsqueda de registros sin procesar.
Para obtener detalles sobre cómo buscar en los registros sin procesar, consulta los siguientes vínculos:
Selecciona los campos de UDM adecuados
Ahora que identificaste los campos de destino específicos que se extraerán, puedes hacerlos coincidir con los campos de UDM de destino correspondientes. Establece una asignación clara entre los campos de origen de los registros sin procesar y sus campos de UDM de destino. Puedes asignar datos a cualquier campo de UDM que admita los tipos de datos estándar o los campos repetidos.
Elige el campo de UDM correcto
Los siguientes recursos pueden ayudarte a simplificar el proceso:
- Familiarízate con los conceptos principales del UDM
- Comprende la asignación de datos que usa el analizador existente
- Usa la herramienta de búsqueda de UDM para encontrar posibles campos de UDM que coincidan con tus campos de origen.
- La guía Campos de UDM importantes para la asignación de datos del analizador incluye un resumen y una explicación de los campos más utilizados del esquema de UDM.
- La lista de campos del modelo de datos unificado contiene una lista de todos los campos de UDM y sus descripciones. Los campos repetidos se identifican con la etiqueta "repeated" en las listas.
- Consideraciones importantes sobre el UDM para evitar errores
Familiarízate con los conceptos principales del UDM
Objetos lógicos: Evento y Entidad
El esquema de UDM describe todos los atributos disponibles que almacenan datos. Cada registro de UDM describe un evento o una entidad. Los datos se almacenan en diferentes campos según si el registro describe un evento o una entidad.
- Un objeto de evento de UDM almacena datos sobre la acción que se produjo en el entorno. El registro de eventos original describe la acción tal como la registró el dispositivo, como un firewall o un proxy web.
- Los objetos Entidad de UDM almacenan datos sobre los participantes o las entidades involucrados en el evento de UDM, como los recursos, los usuarios o los recursos de tu entorno.
Sustantivos de UDM: Un sustantivo representa a un participante o una entidad en un evento de UDM. Un sustantivo podría ser, por ejemplo, el dispositivo o el usuario que realiza la actividad descrita en el evento. Un sustantivo también podría ser el dispositivo o el usuario que es el objetivo de la actividad descrita en el evento.
Sustantivo de UDM Descripción principalEs la entidad responsable de iniciar la acción descrita en el evento. targetEs la entidad que es el destinatario o el objeto de la acción. En una conexión de firewall, la máquina que recibe la conexión sería el destino. srcEs una entidad de origen sobre la que actúa la principal. Por ejemplo, si un usuario copia un archivo de una máquina a otra, el archivo y la máquina de origen se representarían como src. intermediaryCualquier entidad que actúe como intermediaria en el evento, como un servidor proxy. Pueden influir en la acción, como bloquear o alterar una solicitud. observerEs una entidad que supervisa el evento y genera informes sobre él, pero no interactúa directamente con el tráfico. Algunos ejemplos son los sistemas de detección de intrusiones en la red o los sistemas de administración de información y eventos de seguridad. aboutCualquier otra entidad involucrada en el evento que no se ajuste a las categorías anteriores. Por ejemplo, archivos adjuntos de correo electrónico o DLL cargadas durante el inicio de un proceso. En la práctica, los objetos Noun principal y target son los que se usan con más frecuencia. También es importante tener en cuenta que las descripciones anteriores constituyen el uso recomendado de los sustantivos. El uso real puede variar según la implementación de un analizador base predeterminado o personalizado.
Comprende la asignación de datos que usa el analizador existente
Se recomienda comprender la asignación de datos existente que usa el analizador predeterminado (o personalizado) entre los campos de origen de registro sin procesar y sus campos de UDM de destino.
Para ver la asignación de datos entre los campos de origen de registro sin procesar y los campos de UDM de destino que se usan en el analizador predeterminado (o personalizado) existente, haz lo siguiente:
- En la barra de navegación, selecciona Configuración > Administración de datos > Analizadores. Si estás en una plataforma solo de SIEM, ve a Configuración > Analizadores.
- Busca en la tabla Analizadores el tipo de registro que deseas extender.
Navega a esa fila y, luego, haz clic en Menú > Ver.
En la pestaña Precompilado (o Personalizado), la sección Código del analizador muestra la asignación de datos entre los campos de origen de registros sin procesar y los campos de UDM de destino que se usan en el analizador predeterminado (o analizador personalizado) existente.
Usa la herramienta de búsqueda de UDM
Usa la herramienta de búsqueda de UDM para identificar los campos de UDM que coinciden con los campos de origen de los registros sin procesar.
Google SecOps proporciona la herramienta de búsqueda de UDM para ayudarte a encontrar rápidamente los campos de UDM de destino. Para acceder a la herramienta de búsqueda de UDM, ve a Investigación > Búsqueda de SIEM.
Consulta estos temas para obtener detalles sobre cómo usar la herramienta de búsqueda de UDM:
- Busca un campo de UDM
- Ingresa una búsqueda de UDM
- Establece un filtro de tiempo en la búsqueda
- Ejemplos de búsquedas de UDM
- Genera búsquedas de UDM con Gemini
Ejemplo de la herramienta de búsqueda de UDM
Por ejemplo, si tienes un campo de origen en el registro sin procesar llamado "paquetes", usa la herramienta de búsqueda de UDM para encontrar posibles campos de UDM de destino con "paquetes" en su nombre:
Ve a Investigación > Búsqueda de SIEM.
En la página Búsqueda de SIEM, haz clic en Búsqueda de UDM.
Se abrirá el diálogo Búsqueda de UDM. La herramienta de búsqueda hace coincidir los campos de UDM por nombre de campo o valor de campo:
- Búsqueda por nombre de campo: Coincide con la cadena de texto que ingresas en los nombres de campo que contienen ese texto.
- Búsqueda por valor de campo: Coincide con el valor que ingresas en los campos que contienen ese valor en sus datos de registro almacenados.
En el cuadro de diálogo Búsqueda de UDM, ingresa "packets" en el campo Buscar campos/valores de UDM y selecciona Campos de UDM.
La función de búsqueda mostrará una lista de posibles campos de UDM que contienen el texto "packets" en sus nombres de campo de UDM.
Haz clic en cada fila, una por una, para ver la descripción de cada campo de UDM.
Consideraciones importantes sobre el UDM para evitar errores
- Campos de aspecto similar: La estructura jerárquica de UDM puede generar campos con nombres similares. Consulta los analizadores predeterminados para obtener orientación. Para obtener más detalles, consulta Comprende la asignación de datos que usa el analizador existente.
- Asignación de campos arbitrarios: Usa el objeto
additionalpara los datos que no se asignan directamente a un campo de UDM. Para obtener más detalles, consulta Asignación de campos arbitrarios a UDM. - Campos repetidos: Ten cuidado cuando trabajes con campos repetidos en fragmentos de código. Reemplazar un objeto completo podría reemplazar los datos originales. El enfoque sin código ofrece más control sobre los campos repetidos. Para obtener más detalles, consulta Selector de campos repetidos.
- Campos de UDM obligatorios para los tipos de eventos de UDM: Cuando se asigna un campo de UDM
metadata.event_typea un registro de UDM, cadaevent_typerequiere que haya un conjunto diferente de campos relacionados en el registro de UDM. Para obtener más detalles, consulta Más información para asignar campos de UDM demetadata.event_type. - Problemas con el analizador base: Las extensiones del analizador no pueden corregir errores del analizador base. El analizador base es el analizador predeterminado (o personalizado) que creó el registro de UDM. Considera opciones como mejorar la extensión del analizador, modificar el analizador base o el prefiltrado de registros.
Asignación de campos arbitrarios en UDM
Cuando no puedas encontrar un campo de UDM estándar adecuado para almacenar tus datos, usa el
objeto additional para almacenar los datos como un par clave-valor personalizado. Esto te permite
almacenar información valiosa en el registro de UDM, incluso si no tiene un campo de UDM
coincidente.
Elige un enfoque de definición de extensión del analizador
Antes de elegir un enfoque de definición de extensión del analizador, debes haber trabajado en estas secciones:
Los siguientes pasos son abrir la página Parser Extension y seleccionar el enfoque de extensión que se usará para definir la extensión del analizador:
Abre la página Extensión del analizador
La página Extensión del analizador te permite definir la nueva extensión del analizador.
Puedes abrir la página Extensión del analizador de las siguientes maneras, desde el menú Configuración, desde una Búsqueda de registros sin procesar o desde una Búsqueda de registros sin procesar heredada:
Abre desde el menú Configuración
Para abrir la página Extensión del analizador desde el menú Configuración, sigue estos pasos:
En la barra de navegación, selecciona Configuración > Administración de datos > Analizadores. Si estás en una plataforma solo de SIEM, ve a Configuración > Analizadores.
En la tabla Analizadores, se muestra una lista de analizadores predeterminados por tipo de registro.
Busca el tipo de registro que deseas extender, haz clic en el Menú > Extender analizador > Crear extensión.
Se abrirá la página Parser Extension.
Abrir desde una búsqueda de registros sin procesar
Para abrir la página Extensión del analizador desde una búsqueda de registros sin procesar, haz lo siguiente:
- Ve a Investigación > Búsqueda de SIEM.
- En el campo de búsqueda, agrega el prefijo
raw =al argumento de búsqueda y encierra el término de búsqueda entre comillas. Por ejemplo,raw = "example.com" - Haz clic en Ejecutar búsqueda. Los resultados se muestran en el panel Registros sin procesar.
- Haz clic en un registro (fila) en el panel Registros sin procesar. Se muestra el panel Visor de eventos.
- Haz clic en la pestaña Registro sin procesar en el panel Visualizador de eventos. Se muestra el registro sin procesar.
Haz clic en Administrar analizador > Extender analizador > Crear extensión (o selecciona Crear extensión > Siguiente).
Se abrirá la página Parser Extension.
Abrir desde una búsqueda de registros sin procesar heredada
Para abrir la página Parser Extension desde una búsqueda de registros sin procesar heredada, haz lo siguiente:
- Usa la búsqueda de registros sin procesar heredada para buscar registros similares a los que se analizarán.
- Selecciona un evento (o haz clic en el ícono de registro sin procesar) en el panel Línea de tiempo para abrir el registro sin procesar.
Haz clic en Administrar analizador > Extender analizador > Crear extensión (o selecciona Crear extensión > Siguiente).
Se abrirá la página Parser Extension.
Página Extensión del analizador
En la página, se muestran los paneles Registro sin procesar y Extensión (definición de la extensión):
Panel Registro sin procesar:
Se mostrarán datos de registro sin procesar de muestra para el tipo de registro seleccionado. Si abriste la página desde la Búsqueda de registros sin procesar, la muestra de datos es el resultado de tu búsqueda. Puedes dar formato a la muestra con el menú Ver como (Sin procesar, JSON, CSV, XML o Hex/ASCII) y la casilla de verificación Ajustar texto.
Verifica que la muestra de datos de registro sin procesar que se muestra sea representativa de los registros que procesará la extensión del analizador.
Haz clic en Vista previa de la salida de UDM (o Mostrar salida de UDM) para ver la salida de UDM de los datos de registro sin procesar de muestra.
Panel Extensión (definición de extensión):
Esto te permite definir una extensión de analizador con uno de los dos enfoques de instrucciones de asignación: Asignar campos de datos (sin código) o Escribir fragmentos de código (o Escribir fragmento de código). No puedes usar ambos enfoques en la misma extensión del analizador.
Según el enfoque que elijas, puedes especificar los campos de datos de registro de origen que se extraerán de los registros sin procesar entrantes y asignarlos a los campos de UDM correspondientes, o bien escribir un fragmento de código para realizar estas tareas y mucho más.
Selecciona el enfoque de extensión
En la página Extensión del analizador, panel Extensión, en el campo Método de extensión, selecciona uno de los siguientes enfoques para crear la extensión del analizador:
Enfoque de Asignar campos de datos (sin código):
Este enfoque te permite especificar los campos en el registro sin procesar y asignarlos a los campos de UDM de destino.
Este enfoque funciona con los siguientes formatos de registro sin procesar:
- JSON nativo, XML nativo o CSV.
- Encabezado de Syslog más JSON nativo, XML nativo o CSV. Puedes crear instrucciones de asignación de tipos de campos de datos para registros sin procesar en estos formatos:
JSON,XML,CSV,SYSLOG + JSON,SYSLOG + XMLySYSLOG + CSV.
Consulta los próximos pasos, Crea instrucciones sin código (Asigna campos de datos).
Enfoque Escribir fragmentos de código (o Escribir un fragmento de código):
Este enfoque te permite usar una sintaxis similar a la de Logstash para especificar instrucciones que extraigan y transformen valores del registro sin procesar y los asignen a campos de UDM en el registro de UDM.
Los fragmentos de código usan la misma sintaxis y secciones que los analizadores predeterminados (o personalizados). Para obtener más información, consulta Sintaxis del analizador.
Este enfoque funciona con todos los formatos de datos admitidos para ese tipo de registro.
Consulta los próximos pasos, Crea instrucciones para el fragmento de código.
Instrucciones para crear mapas sin código (asignar campos de datos)
El enfoque sin código (también llamado método Asignar campos de datos) te permite especificar las rutas de acceso de los campos de registro sin procesar y asignarlos a los campos de UDM de destino correspondientes.
Antes de crear una extensión de analizador con el enfoque sin código, debes haber trabajado en estas secciones:
- Crea extensiones de analizador
- Comenzar
- Selecciona el enfoque de extensión y, luego, la opción Asignar campos de datos.
Los siguientes pasos para definir la extensión del analizador son los siguientes:
- Configura el selector de campos repetidos
- Define una instrucción de asignación de datos para cada campo
- Envía y activa la extensión del analizador
Define una instrucción de asignación de datos para cada campo
Define una instrucción de asignación de datos para cada campo que quieras extraer del registro sin procesar. La instrucción debe especificar la ruta de acceso del campo de origen en el registro sin procesar y asignarla al campo de UDM de destino.
Si la muestra de registro sin procesar que se muestra en el panel Registro sin procesar contiene un encabezado de Syslog, se muestran los campos Syslog y Destino. (Algunos formatos de registro no contienen un encabezado de Syslog, por ejemplo, JSON nativo, XML nativo o CSV).
Google SecOps necesitará los campos Syslog y Target para preprocesar el encabezado de Syslog y extraer la parte estructurada del registro.
Define estos campos:
Syslog: Es un patrón definido por el usuario que preprocesa y separa un encabezado de Syslog de la parte estructurada de un registro sin procesar.
Especifica el patrón de extracción, con Grok y expresiones regulares, que identifica el encabezado de Syslog y el mensaje de registro sin procesar. Para obtener más detalles, consulta Define los campos del extractor de Syslog.
Destino: Es el nombre de la variable en el campo Syslog que almacena la parte estructurada del registro.
Especifica el nombre de la variable en el patrón de extracción que almacena la parte estructurada del registro.
Este es un ejemplo de un patrón de extracción y un nombre de variable para los campos Syslog y Destino, respectivamente.

Después de ingresar los valores en los campos Syslog y Destino, haz clic en el botón Validar.
El proceso de validación verifica si hay errores de sintaxis y de análisis y, luego, devuelve una de las siguientes opciones:
- Listo: Aparecen los campos de asignación de datos. Define el resto de la extensión del analizador.
- Falla: Aparece un mensaje de error. Corrige la condición de error antes de continuar.
De manera opcional, define una instrucción de condición previa.
Una instrucción de condición previa identifica un subconjunto de los registros sin procesar que procesa la extensión del analizador haciendo coincidir un valor estático con un campo en el registro sin procesar. Si un registro sin procesar entrante cumple con los criterios de condición previa, la extensión del analizador aplica la instrucción de asignación. Si los valores no coinciden, la extensión del analizador no aplica la instrucción de asignación.
Completa los siguientes campos:
- Campo de condición previa (o Columna de condición previa para CSV): Es el identificador de campo en el registro sin procesar que contiene el valor que se comparará. Ingresa la ruta de acceso completa al campo si el formato de los datos de registro es JSON o XML, o la posición de la columna si el formato de datos es CSV.
- Operador de condición previa: Selecciona Es igual a o No es igual a.
- Valor de condición previa: Es el valor estático que se comparará con el Campo de condición previa en el registro sin procesar.
Para ver otro ejemplo de una instrucción de condición previa, consulta Sin código: Extrae campos con valor de condición previa.
Asigna el campo de datos de registro sin procesar al campo de UDM de destino:
Campo de datos sin procesar (o Columna de datos sin procesar para CSV): Ingresa la ruta de acceso completa al campo si el formato de los datos de registro es JSON (por ejemplo:
jsonPayload.connection.dest_ip) o XML (por ejemplo:/Event/Reason-Code), o la posición de la columna si el formato de los datos es CSV (nota: las posiciones del índice comienzan en 1).Campo de destino: Ingresa el nombre del campo de UDM completamente calificado en el que se almacenará el valor, por ejemplo,
udm.metadata.collected_timestamp.seconds.
Para seguir agregando más campos, haz clic en Agregar y, luego, ingresa todos los detalles de las instrucciones de asignación para el siguiente campo.
Para ver otro ejemplo de asignación de campos, consulta Sin código: Extrae campos.
Envía y activa la extensión del analizador
Una vez que hayas definido las instrucciones de asignación de datos para todos los campos que pretendes extraer del registro sin procesar, envía y activa la extensión del analizador.
Haz clic en Enviar para guardar y validar la instrucción de asignación.
Google SecOps valida las instrucciones de asignación:
- Si el proceso de validación se realiza de forma correcta, el estado cambia a Activo y las instrucciones de asignación comienzan a procesar los datos de registro entrantes.
Si el proceso de validación falla, el estado cambia a Con errores y se muestra un error en el campo Registro sin procesar.
Este es un ejemplo de un error de validación:
ERROR: generic::unknown: pipeline.ParseLogEntry failed: LOG_PARSING_CBN_ERROR: "generic::invalid_argument: pipeline failed: filter mutate (7) failed: copy failure: copy source field \"jsonPayload.dest_instance.region\" must not be empty (try using replace to provide the value before calling copy) "LOG: {"insertId":"14suym9fw9f63r","jsonPayload":{"bytes_sent":"492", "connection":{"dest_ip":"10.12.12.33","dest_port":32768,"protocol":6, "src_ip":"10.142.0.238","src_port":22},"end_time":"2023-02-13T22:38:30.490546349Z", "packets_sent":"15","reporter":"SRC","src_instance":{"project_id":"example-labs", "region":"us-east1","vm_name":"example-us-east1","zone":"us-east1-b"}, "src_vpc":{"project_id":"example-labs","subnetwork_name":"default", "vpc_name":"default"},"start_time":"2023-02-13T22:38:29.024032655Z"}, "logName":"projects/example-labs/logs/compute.googleapis.com%2Fvpc_flows", "receiveTimestamp":"2023-02-13T22:38:37.443315735Z","resource":{"labels": {"location":"us-east1-b","project_id":"example-labs", "subnetwork_id":"00000000000000000000","subnetwork_name":"default"}, "type":"gce_subnetwork"},"timestamp":"2023-02-13T22:38:37.443315735Z"}Estados del ciclo de vida de una extensión del analizador
Las extensiones de analizador tienen los siguientes estados de ciclo de vida:
DRAFT: Es la extensión del analizador recién creada que aún no se envió.VALIDATING: Google SecOps valida las instrucciones de asignación con los registros sin procesar existentes para garantizar que los campos se analicen sin errores.LIVE: La extensión del analizador se validó y ahora está en producción. Extrae y transforma los datos de los registros sin procesar entrantes en registros de UDM.FAILED: No se pudo validar la extensión del analizador.
Más información sobre los campos del extractor de Syslog
Los campos del extractor de Syslog te permiten separar el encabezado de Syslog de un registro estructurado definiendo el Grok, la expresión regular y un token con nombre en el patrón de expresión regular para almacenar el resultado.
Define los campos del extractor de Syslog
Los valores de los campos Syslog y Destino funcionan juntos para definir cómo la extensión del analizador separa el encabezado de Syslog de la parte estructurada de un registro sin procesar. En el campo Syslog, define una expresión con una combinación de sintaxis de Grok y expresiones regulares. La expresión incluye un nombre de variable que identifica la parte estructurada del registro sin procesar. En el campo Destino, especifica el nombre de esa variable.
En el siguiente ejemplo, se muestra cómo funcionan estos campos en conjunto.
Este es un ejemplo de un registro sin procesar:
<13>1 2022-09-14T15:03:04+00:00 fieldname fieldname - - - {"timestamp": "2021-03-14T14:54:40.842152+0000","flow_id": 1885148860701096, "src_ip": "10.11.22.1","src_port": 51972,"dest_ip": "1.2.3.4","dest_port": 55291,"proto": "TCP"}
El registro sin procesar contiene las siguientes secciones:
Encabezado de Syslog:
<13> 2022-09-14T15:03:04+00:00 fieldname fieldname - - -Evento con formato JSON:
{"timestamp": "2021-03-14T14:54:40.842152+0000","flow_id": 1885148860701096, "src_ip": "10.11.22.1","src_port": 51972,"dest_ip": "1.2.3.4","dest_port": 55291,"proto": "TCP"}
Para separar el encabezado de Syslog de la parte JSON del registro sin procesar, usa la
siguiente expresión de ejemplo en el campo Syslog:
%{TIMESTAMP_ISO8601} %{WORD} %{WORD} ([- ]+)?%{GREEDYDATA:msg}
- Esta parte de la expresión identifica el encabezado de Syslog:
%{TIMESTAMP\_ISO8601} %{WORD} %{WORD} ([- ]+)? - Esta parte de la expresión captura el segmento JSON del registro sin procesar:
%{GREEDYDATA:msg}
En este ejemplo, se incluye el nombre de variable msg. Tú eliges el nombre de la variable.
La extensión del analizador extrae el segmento JSON del registro sin procesar y lo asigna
a la variable msg.
En el campo Destino, ingresa el nombre de la variable msg. El valor almacenado en la
variable msg se ingresa en las instrucciones de asignación de campos de datos que creas
en la extensión del analizador.
Con el registro sin procesar de ejemplo, el siguiente segmento se ingresa en la instrucción de asignación de datos:
{"timestamp": "2021-03-14T14:54:40.842152+0000","flow_id": 1885148860701096, "src_ip": "10.11.22.1","src_port": 51972,"dest_ip": "1.2.3.4","dest_port": 55291,"proto": "TCP"}
A continuación, se muestran los campos Syslog y Destino completados:

En la siguiente tabla, se proporcionan más ejemplos con registros de muestra, el patrón de extracción de Syslog, el nombre de la variable de destino y el resultado.
| Registro sin procesar de ejemplo | Campo de Syslog | Campo objetivo | Resultado |
|---|---|---|---|
<13>1 2022-07-14T15:03:04+00:00 suricata suricata - - - {\"timestamp\": \"2021-03-14T14:54:40.842152+0000\",\"flow_id\": 1885148860701096,\"in_iface\": \"enp94s0\",\"event_type\": \"alert\",\"vlan\": 522,\"src_ip\": \"1.1.2.1\",\"src_port\": 51972,\"dest_ip\": \"1.2.3.4\",\"dest_port\": 55291,\"proto\": \"TCP\"}" |
%{TIMESTAMP_ISO8601} %{WORD} %{WORD} ([- ]+)?%{GREEDYDATA:msg} |
msg | field_mappings {
field: "msg"
value: "{\"timestamp\": \"2021-03-14T14:54:40.842152+0000\",\"flow_id\": 1885148860701096,\"in_iface\": \"enp94s0\",\"event_type\": \"alert\",\"vlan\": 522,\"src_ip\": \"1.1.2.1\",\"src_port\": 51972,\"dest_ip\": \"1.2.3.4\",\"dest_port\": 55291,\"proto\": \"TCP\"}"
}
|
<13>1 2022-07-14T15:03:04+00:00 suricata suricata - - - {\"timestamp\": \"2021-03-14T14:54:40.842152+0000\"} - - - {\"timestamp\": \"2021-03-14T14:54:40.842152+0000\",\"flow_id\": 1885148860701096,\"in_iface\": \"enp94s0\",\"event_type\": \"alert\",\"vlan\": 522,\"src_ip\": \"1.1.2.1\",\"src_port\": 51972,\"dest_ip\": \"1.2.3.4\",\"dest_port\": 55291,\"proto\": \"TCP\"} |
%{TIMESTAMP_ISO8601} %{WORD} %{WORD} ([- ]+)?%{GREEDYDATA:msg1} ([- ]+)?%{GREEDYDATA:msg2} |
msg2 | field_mappings {
field: "msg2"
value: "{\"timestamp\": \"2021-03-14T14:54:40.842152+0000\",\"flow_id\": 1885148860701096,\"in_iface\": \"enp94s0\",\"event_type\": \"alert\",\"vlan\": 522,\"src_ip\": \"1.1.2.1\",\"src_port\": 51972,\"dest_ip\": \"1.2.3.4\",\"dest_port\": 55291,\"proto\": \"TCP\"}"
} |
"<13>1 2022-07-14T15:03:04+00:00 suricata suricata - - - {\"timestamp\": \"2021-03-14T14:54:40.842152+0000\"} - - - {\"timestamp\": \"2021-03-14T14:54:40.842152+0000\",\"flow_id\": 1885148860701096,\"in_iface\": \"enp94s0\",\"event_type\": \"alert\",\"vlan\": 522,\"src_ip\": \"1.1.2.1\",\"src_port\": 51972,\"dest_ip\": \"1.2.3.4\",\"dest_port\": 55291,\"proto\": \"TCP\"}" |
%{TIMESTAMP_ISO8601} %{WORD} %{WORD} ([- ]+)?%{GREEDYDATA:message} ([- ]+)?%{GREEDYDATA:msg2} |
msg2 | Error - message already exists in state and not overwritable. |
Más información para asignar campos de UDM metadata.event_type
Cuando se asigna un campo metadata.event_type de UDM a un registro de UDM, se
valida para garantizar que los campos relacionados obligatorios estén presentes en el registro de
UDM. Cada metadata.event_type de UDM requiere un conjunto diferente de campos relacionados, por ejemplo, un evento USER_LOGIN sin un user no es útil.
Si falta un campo relacionado obligatorio, la validación de UDM devuelve un error:
"error": {
"code": 400,
"message": "Request contains an invalid argument.",
"status": "INVALID_ARGUMENT"
}
Un analizador de grok devuelve un error más detallado:
generic::unknown:
invalid event 0: LOG_PARSING_GENERATED_INVALID_EVENT:
"generic::invalid_argument: udm validation failed: target field is not set"
Para encontrar los campos obligatorios de un event_type de UDM que se asignará, usa los
siguientes recursos, en los que las guías de adopción complementan la Guía de uso de UDM, ya que proporcionan los campos de UDM obligatorios mínimos necesarios para propagar un metadata.event_type de UDM determinado.
Documentación de Google SecOps: Guía de uso de UDM: Campos de UDM obligatorios y opcionales para cada tipo de evento
Guía de adopción: Análisis detallado de la conversión de UDM, parte 1.1
Guía de adopción: Conceptos básicos del análisis de GoStaash
Por ejemplo, abre el documento y busca el tipo de evento GROUP_CREATION.
Deberías ver los siguientes campos mínimos de UDM, presentados como un objeto de UDM:
{
"metadata": {
"event_timestamp": "2023-07-03T13:01:10.957803Z",
"event_type": "GROUP_CREATION"
},
"principal": {
"user": {
"userid": "pinguino"
}
},
"target": {
"group": {
"group_display_name": "foobar_users"
}
}
}
Crea instrucciones para fragmentos de código
El enfoque de fragmento de código te permite usar una sintaxis similar a la de Logstash para definir cómo extraer y transformar valores del registro sin procesar, y asignarlos a campos de UDM en el registro de UDM.
Antes de crear una extensión de analizador con el enfoque de fragmento de código, debes haber trabajado en estas secciones:
- Crea extensiones de analizador
- Comenzar
- Selecciona el enfoque de la extensión y, luego, la opción Escribir fragmentos de código (o Escribir fragmento de código).
Los siguientes pasos para definir la extensión del analizador son los siguientes:
- Para obtener sugerencias y conocer las prácticas recomendadas, consulta Sugerencias y prácticas recomendadas para escribir instrucciones de fragmentos de código.
- Cómo crear una instrucción de fragmento de código
- Envía una instrucción de fragmento de código
Sugerencias y prácticas recomendadas para escribir instrucciones de fragmentos de código
Las instrucciones de fragmentos de código pueden fallar debido a problemas como patrones de Grok incorrectos, operaciones de cambio de nombre o reemplazo fallidas, o errores de sintaxis. Consulta la siguiente información para obtener sugerencias y prácticas recomendadas:
Crea una instrucción de fragmento de código
Las instrucciones del fragmento de código usan la misma sintaxis y las mismas secciones que el analizador predeterminado (o personalizado):
- Sección 1: Extraer datos del registro sin procesar
- Sección 2: Transformar los datos extraídos
- Sección 3: Asigna uno o más valores a un campo de UDM.
- Sección 4: Vincula los campos de eventos de UDM a la clave
@output.
Para crear una extensión de analizador con el enfoque de fragmento de código, haz lo siguiente:
- En la página Extensión del analizador, en el panel Fragmento de CBN, ingresa un fragmento de código para crear la extensión del analizador.
- Haz clic en Validar para validar las instrucciones de asignación.
Ejemplos de instrucciones de fragmentos de código
En el siguiente ejemplo, se ilustra un fragmento de código.
Este es un ejemplo del registro sin procesar (con campos jsonPayload adicionales omitidos
por motivos de brevedad):
{
"insertId": "00000000",
"jsonPayload": {
"packets_sent": "4"
},
"timestamp": "2022-05-03T01:45:00.150614953Z"
}
Este es un ejemplo de un fragmento de código que asigna el valor en
jsonPayload.packets_sent al campo de UDM network.sent_bytes:
filter {
mutate {
replace => {
"jsonPayload.packets_sent" => ""
}
}
# Section 1. extract data from the raw JSON log
json {
source => "message"
array_function => "split_columns"
on_error => "_not_json"
}
if [_not_json] {
drop {
tag => "TAG_UNSUPPORTED"
}
} else {
# Section 2. transform the extracted data
if [jsonPayload][packets_sent] not in ["", 0] {
mutate {
convert => {
"jsonPayload.packets_sent" => "uinteger"
}
on_error => "_exception1"
}
# Section 3. assign the value to a UDM field
mutate {
Replace => {
"event.idm.read_only_udm.network.sent_bytes" => "jsonPayload.packets_sent"
}
on_error => "_exception2"
}
if ![_exception1] and![_exception2] {
# Section 4. Bind the UDM fields to the @output key
mutate {
merge => {
"@output" => "event"
}
}
}
}
}
}
Envía una instrucción de fragmento de código
Haz clic en Enviar para guardar las instrucciones de asignación.
Google SecOps valida las instrucciones de asignación.
- Si el proceso de validación se realiza de forma correcta, el estado cambia a Activo y las instrucciones de asignación comienzan a procesar los datos de registro entrantes.
- Si el proceso de validación falla, el estado cambia a Con errores y se muestra un error en el campo Registro sin procesar.
Administra las extensiones de analizador existentes
Puedes ver, editar, borrar y controlar el acceso a las extensiones de analizador existentes.
Visualiza una extensión de analizador existente
- En la barra de navegación, selecciona Configuración > Administración de datos > Analizadores. Si estás en una plataforma solo de SIEM, ve a Configuración > Analizadores.
- En la lista de analizadores, busca el analizador (tipo de registro) que deseas ver.
Los analizadores con una extensión de analizador se indican con el texto
EXTENSION(oEXTN) junto a su nombre. Ve a esa fila y, luego, haz clic en el Menú > Extender analizador > Ver extensión.
Aparecerá la pestaña Ver analizador personalizado o compilado previamente > Extensión (o la pestaña Extensiones) con detalles sobre la extensión del analizador. En el panel de resumen, se muestra la extensión del analizador
LIVEde forma predeterminada.
Editar una extensión del analizador
Abre la pestaña Ver analizador personalizado o compilado previamente > Extensión (o la pestaña Extensiones), como se describe en Visualiza una extensión de analizador existente.
Haz clic en el botón Editar extensión (o Editar).
Aparecerá la página Parser Extension.
Edita la extensión del analizador.
Para cancelar la edición y descartar los cambios, haz clic en Descartar borrador (o Descartar extensión).
Para borrar la extensión del analizador en cualquier momento, haz clic en Borrar extensión con errores (o Borrar extensión).
Cuando termines de editar la extensión del analizador, haz clic en Enviar.
Se ejecuta el proceso de validación para validar la configuración nueva.
Borra una extensión del analizador
Abre la pestaña Ver analizador personalizado o compilado previamente > Extensión (o la pestaña Extensiones), como se describe en Visualiza una extensión de analizador existente.
Haz clic en el botón Borrar extensión.
Controla el acceso a las extensiones del analizador
De forma predeterminada, los usuarios con el rol de administrador pueden acceder a las extensiones del analizador. Puedes controlar quién puede ver y administrar las extensiones del analizador. Para obtener más información sobre cómo administrar usuarios y grupos, o asignar roles, consulta Control de acceso basado en roles.
Los roles nuevos en Google SecOps se resumen en la siguiente tabla.
| Función | Acción | Descripción |
|---|---|---|
| Analizador | Borrar | Borra las extensiones del analizador. |
| Analizador | Editar | Crear y editar extensiones de analizador |
| Analizador | Ver | Ver extensiones del analizador |
Quita las asignaciones de campos de UDM con extensiones del analizador
Puedes usar extensiones de analizador para quitar una asignación de campo de UDM existente.
- Haz clic en Configuración > Administración de datos > Analizadores. Si estás en una plataforma solo de SIEM, ve a Configuración > Analizadores.
- Usa cualquiera de los siguientes métodos para ver la página Parser Extension:
- Para una extensión existente, haz clic en Menú > Extender analizador > Ver extensión.
- Para las extensiones de analizador nuevas, haz clic en Menú > Extender analizador > Crear extensión.
Selecciona Escribir fragmentos de código (o Escribir fragmento de código) como el método de extensión para agregar un fragmento de código personalizado que quite los valores de campos de UDM específicos.
Para una extensión existente, en la pestaña Extensión (o Extensiones), haz clic en Editar extensión (o Editar) y, luego, agrega el fragmento de código.
Consulta Fragmento de código: Quita las asignaciones existentes para ver fragmentos de ejemplo.
Sigue los pasos que se indican en Envía una instrucción de fragmento de código para enviar la extensión.
Manejo de zonas horarias y formato de marcas de tiempo
Google SecOps estandariza y serializa las marcas de tiempo en formato RFC 3339 UTC con precisión de microsegundos (YYYY-MM-DDTHH:MM:SS.ffffffZ). Si los registros de origen solo proporcionan precisión de segundo nivel, la plataforma completa automáticamente los dígitos fraccionarios faltantes con ceros finales (.000000Z) para mantener la uniformidad del esquema.
Si una marca de tiempo de evento aparece antes de la hora de transferencia (ingested_timestamp < event_timestamp), la discrepancia suele ocurrir cuando una fuente emite marcas de tiempo de reloj local sin compensaciones de zona horaria ISO (que se establecen de forma predeterminada en UTC) o experimenta una desviación del reloj. Puedes resolver las discrepancias de zona horaria con uno de los siguientes métodos:
Ajusta las marcas de tiempo en una extensión de analizador: Usa el filtro
dateen una extensión de analizador de fragmentos de código para especificar la zona horaria de origen:if [raw_log] =~ /EST/ { date { match => [ "timestamp_str", "MMM dd HH:mm:ss" ] timezone => "America/New_York" target => "event.metadata.event_timestamp" } }Configura una anulación de la zona horaria del recopilador de reenvío: Ve a Configuración > Administración de datos > Reenviadores, edita el recopilador de destino, habilita Anular zona horaria y selecciona la zona horaria de origen de la IANA en el menú Zona horaria (por ejemplo,
Europe/Paris) para ajustar las marcas de tiempo automáticamente durante la transferencia.
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.