¿Por qué no veo resultados de mis búsquedas en Información prioritaria?
Al buscar en IBM® Cloud Logs utilizando Información prioritaria no obtengo los resultados esperados. Sé que los campos que busco en mis registros existen, pero IBM Cloud Logs no parece encontrarlos con mis búsquedas.
La búsqueda de valores de campo no devuelve los resultados esperados.
El problema suele estar relacionado con una excepción de mapeo.
Puede producirse una excepción de asignación si se ingestan nuevos campos de registro con nombres de campo que fueron ingestados previamente por IBM Cloud Logs, pero tienen un tipo de valor diferente. Cuando IBM Cloud Logs indexa los datos ingestados, intenta asignar los campos a uno de los siguientes tipos:
StringNumericObjectArray
Si, por ejemplo, se ha ingestado el campo user y el primer valor recibido es "nombre de usuario", IBM Cloud Logs creará un índice de tipo string para el campo user:
"user": “username”`
Si más tarde se ingiere un nuevo registro que también tiene un campo llamado "usuario" que tiene el siguiente formato:
"user": {
“email”: “username@yourcompany.com”,
”login”: “username”`
}
Se crea una excepción de asignación en IBM Cloud Logs. Cualquier búsqueda en Información prioritaria que busque un campo llamado user debería tener un valor string basado en el primer registro ingestado con un campo user.
Cualquier búsqueda en Información prioritaria que busque un user con el tipo array (user.email o user.login) no devolverá ningún resultado debido a la excepción de asignación.
Puede determinar si hay excepciones de asignación mediante la IU IBM Cloud Logs.
Para identificar las excepciones de mapeo, complete los siguientes pasos:
-
Compruebe la interfaz de usuario IBM Cloud Logs para ver si hay un icono junto al recuento de registros:
Icono de excepciones de mapeo Al pasar el ratón por encima del icono, se mostrará el número de registros con excepciones de asignación dentro de los resultados de la consulta en el marco temporal seleccionado.
-
Para identificar los registros específicos que no se han indexado correctamente, active la opción
Show Mapping errors:
Seleccionando cómo mostrar los errores de mapeo -
Después de activar esta opción, actualice su navegador.
Aparecerá un signo de exclamación en los campos que tengan excepciones de asignación y no se hayan indexado.
Etiquetado de campos con excepciones de mapeo Otra forma de identificar rápidamente qué campos tienen una excepción de mapeo es ejecutar la consulta:
_exists_: coralogix.failed_reason
Consulta para mostrar excepciones de mapeo. Esta consulta devolverá sólo las líneas de registro que tengan una excepción de asignación para el marco temporal seleccionado.
Hay dos maneras de resolver las excepciones de mapeo:
-
Opción 1: Búsqueda sin indexación.
Si no encuentra un campo al consultar debido a excepciones de asignación, puede buscar en
All Logsen lugar dePriority Insights. Al buscar enAll Logs, la búsqueda omite las excepciones de indexación y asignación. -
Opción 2: Fijar los registros en el momento de la ingesta.
Puede corregir los nuevos registros que se ingestan con los mismos nombres de campo pero con diferentes tipos de datos.
-
Cree una expresión RegEx para sustituir el nombre del campo por el sufijo apropiado. Por ejemplo:
field_obj- Si IBM Cloud Logs está esperando una cadena, pero encontró un objeto:
- Expresión regular:
("field"\s*:\s*{) - Sustituir por:
"field_obj":{
- Expresión regular:
field_arr- Si IBM Cloud Logs está esperando una cadena, pero encontró un array:
- Expresión regular:
("field"\s*:\s*[) - Sustituir por:
"field_arr":[
- Expresión regular:
field_str- Si IBM Cloud Logs está esperando un objeto, pero encontró una cadena:
- Expresión regular:
("field"\s*:\s*") - Sustituir por:
"field_str":"
- Expresión regular:
-
Cree una regla de reemplazo de análisis sintáctico para fijar los nuevos registros utilizando la RegEx.
-