Una vez que haya decidido qué log ingerir y almacenar, es hora de organizarlo. Es probable que todavía estés ingiriendo cientos de gigabytes o docenas de terabytes de logs. Si bien es mucho menos de lo que tenía originalmente, aún tendrá que esforzarse al intentar usarlos de manera efectiva.
Para resolver esto, agruparemos estos logs restantes en particiones temáticas y analizaremos el log para extraerlo y etiquetarlo como atributo valioso. Al organizar su log de esta manera, puede:
- Consulta por cualquier atributo dentro de tu log
- Administre particiones específicas a la vez, como el log de frontend versus el log de backend
- Reducir los tiempos de carga de consultas
¿Por qué particionar su log?
Puede obtener mejoras significativas en el rendimiento con el uso adecuado de las particiones de datos. Organizar sus datos en particiones discretas le permite consultar sólo los datos que necesita. Puede consultar una sola partición o una lista de particiones separadas por comas. Los objetivos de particionar sus datos deben ser:
- Cree particiones de datos que se alineen con las categorías de su entorno u organización que son estáticas o cambian con poca frecuencia (por ejemplo, por unidad de negocios, equipo, entorno, servicio, etc.).
- Crea particiones para optimizar la cantidad de eventos que deben escanear para tu consulta más común. No hay una regla establecido, pero generalmente, a medida que log de eventos escaneado supera los 500 millones (especialmente más de mil millones) para su consulta
common
, puede considerar ajustar su partición.
El namespace de nombres de una partición determina su período de retención. Ofrecemos dos opciones de retención:
- Standard: La retención predeterminada de la cuenta está determinada por su suscripción a New Relic. Este es el período de retención máximo disponible en su cuenta y es el namespace que seleccionará para la mayoría de sus particiones.
- Secondary: Retención de 30 días. Todos los registros enviados a una partición que sea miembro del namespace secundario se eliminarán de forma continua 30 días luego de ser ingeridos.
¿Por qué analizar el log?
Analizar su log durante la ingesta es la mejor manera de hacer que usted y otros usuarios de su organización puedan utilizar mejor sus datos log . Por ejemplo, compare estos dos logs antes y después del análisis utilizando una regla de análisis de Grok:
Análisis previo:
{ "message": "32 4329 store_Portland"}
Análisis posterior:
{ "transaction_total": "32", "purchase_number": "4329", "store_location": "store_Portland",}
Esto le permite consultar fácilmente el atributo recién definido, como transaction_total
en el panel y alerta.
Organiza tu log
Digamos que ACME Corp sabe que consumirán alrededor de 2 TB de logs en los próximos meses. Quieren crear particiones para los logs provenientes de su aplicación Java y de su agente de infraestructura. Piensan que es posible que necesiten consultar su log de Java en el futuro, por lo que deciden utilizar una retención estándar. Mientras tanto, solo necesitan un log de infraestructura reciente, por lo que utilizarán la retención secundaria para ellos.
Para hacerlo:
Navega a la UI
Particiona tu log
- Desde Manage data en el panel de navegación izquierdo, haga clic en Data partitions y luego haga clic en Create partition rule.
- Defina un nombre de partición como una cadena alfanumérica que comience con
Log_
. En este casoLog_java
. - Agregue una descripción opcional.
- Seleccione la retención de namespace estándar para la partición.
- Establezca los criterios de coincidencia de su regla: ingrese una cláusula NRQL
WHERE
válida para que coincida con el log que se almacenará en esta partición. En este casologtype=java
. - Haga clic en Create para guardar su nueva partición.
Esto crea una partición de datos con retención de datos estándar para todos los logs de Java. Para organizar su log de infraestructura, debe seguir los mismos pasos anteriores, solo cambiando la retención a secundaria y la consulta a logtype=infrastructure
.
Analiza tu log
Ahora que su log está particionado, es hora de analizarlo. Analizarlos le permite extraer datos relevantes dentro de su log para facilitar las consultas y la accesibilidad.
Para analizar su log:
- Desde Manage Data en el panel de navegación izquierdo de la UI de log, haga clic en Parsing y luego haga clic en Create parsing rule.
- Introduzca un nombre para la nueva regla de análisis.
- Seleccione un campo existente para analizar (el valor predeterminado es
message
) o ingrese un nuevo nombre de campo. - Introduzca una cláusula NRQL
WHERE
válida que coincida con el log que desea analizar. - Seleccione un log coincidente, si existe, o haga clic en la pestaña pegar log para pegar un log de muestra.
- Ingrese la regla de análisis y valide que esté funcionando viendo los resultados en la sección Output . (Ver ejemplo a continuación)
- Habilite y guarde la regla de análisis personalizada.
El siguiente ejemplo le guía a través de un ejemplo específico de creación de una regla de análisis:
Para obtener una visión más profunda de la creación de patrones de Grok para analizar logs, lea nuestra publicación de blog.
Que sigue
¡Felicitaciones por descubrir el verdadero valor de su log y ahorrarle a su equipo horas de frustración con su log! A medida que su sistema crece y ingiere, deberá garantizar el mantenimiento de las reglas de análisis y las particiones. Si está interesado en profundizar en lo que New Relic puede hacer por usted, consulte estos documentos:
- Análisis de datos log : una mirada más profunda al análisis de logs con Grok y aprenda cómo crear, consultar y administrar sus reglas de análisis de logs utilizando NerdGraph, nuestra API GraphQL.
- Patrones de logs: los patrones de logs son la forma más rápida de descubrir valor en los datos de log sin necesidad de buscar.
- Ofuscación de logs: Con log regla de ofuscación, puedes evitar que ciertos tipos de información se guarden en New Relic.
- Buscar datos en logs largos (blobs): los datos log extensos pueden ayudarle a solucionar problemas. Pero, ¿qué pasa si un atributo de su log contiene miles de caracteres? ¿Cuántos de estos datos puede almacenar New Relic? ¿Y cómo encontrar información útil en todos estos datos?