Extracción de valores específicos como claves JSON
En IBM® Cloud Logs, puede utilizar la regla Extraer para extraer valores específicos que necesita como claves JSON sin tener que analizar todo el registro.
A diferencia de una regla de análisis, una regla de extracción deja intacto el registro original y le añade campos en la raíz.
Antes de empezar
Las reglas de análisis se organizan dentro de Grupos de reglas. Cada grupo tiene un nombre y un conjunto de reglas con una relación lógica entre ellos. Los registros se procesan según el orden del grupo de reglas (desde el principio
hasta el final). A continuación, se procesan mediante el orden de las reglas dentro del grupo de reglas y de acuerdo con los operadores lógicos entre ellas (AND/OR). Las reglas le ayudan a procesar, analizar y reestructurar datos
de registro para prepararse para la supervisión y el análisis. Para obtener más información, consulte Trabajar con grupos de reglas.
Utilización de grupos capturados con nombre para definir campos nuevos
La regla de extracción utiliza grupos de captura RegEx-named para definir nuevos campos.
- Los grupos capturados se convierten en los campos de registro analizados.
- El valor asociado a cada grupo se convierte en el valor del campo.
- RegEx no tiene que coincidir con todo el registro.
- Sólo los grupos de captura con nombre RegEx (los valores dentro de
< >) y el valor que capturan forman parte del registro reconstruido.
Configuración de una regla de extracción
Complete los pasossiguientes:
-
Pulse el icono Conducto de datos
> Reglas de análisis y pulse Nuevo grupo de reglas.
-
En la sección Detalles, especifique el Nombre de grupo de reglas y la Descripción de grupo de reglas.
-
En la sección Buscador de coincidencias de reglas, configure las aplicaciones, subsistemas y gravedades que definen los registros en los que aplicar las reglas que se incluyen en el grupo de reglas.
-
En la sección Reglas, seleccione Extraer
.
-
Especifique un nombre.
-
Puede especificar una descripción opcional.
-
Seleccione un campo fuente. Es el campo en el que se aplica RegEx.
-
Especifique la Expresión regular (RegEx).
-
Conmute el estado a ACTIVE si desea que la regla esté habilitada.
-
-
Añada grupos de reglas adicionales pulsando Añadir regla y seleccionando el tipo de regla deseado. Conmute AND/OR para seleccionar cómo desea que se procesen las reglas adicionales.
-
Haga clic en Crear grupo de reglas.
Ejemplo: Creación de dos campos nuevos
El ejemplo siguiente extrae información del mensaje de campo y crea dos campos nuevos, 'bytes' y 'estado' que se pueden consultar y visualizar.
El registro original es:
{"level":"INFO", "message": "200 bytes sent status is OK"}
RegEx es:
message"\s*:\s*"(?P<bytes>\d+)\s*.*?status\sis\s(?P<status>[^"]+)
El registro formateado es:
{
"level": "INFO",
"message": "200 bytes sent status is OK",
"Bytes": "200",
"status": "OK"
}
Si el registro original no está estructurado, los campos se añaden basándose en los grupos de captura con nombre y el registro original se almacena dentro de un campo denominado text. Utilizando el ejemplo anterior, cambia el registro
original para que no esté estructurado.
El registro original:
"level":"INFO", "message": "200 bytes sent status is OK",
El registro resultante:
{
"bytes": "200",
"text": "\"level\":\"INFO\", \"message\": \"200 bytes sent status is OK\"",
"status": "OK"
}