Automatizando el Análisis de Registros con BERTOps
BERTOps mejora el análisis de logs para operaciones de TI, ayudando a los equipos de fiabilidad del sitio.
― 10 minilectura
Tabla de contenidos
- El papel de los registros en la gestión del sistema
- Desafíos en el análisis de registros
- Entrando en el mundo de los modelos de lenguaje grandes
- Componentes del análisis de registros
- La necesidad de un modelo específico del dominio
- Entrenando a BERTOps
- Las tres tareas principales
- Preparando conjuntos de datos etiquetados
- Experimentando con BERTOps
- Hallazgos clave
- Análisis cualitativo de las predicciones
- Trabajos relacionados en análisis de registros
- Conclusión y direcciones futuras
- Fuente original
- Enlaces de referencia
La IA para las operaciones de TI, a menudo llamada AIOps, es una herramienta que ayuda a los equipos de TI, especialmente a los ingenieros de fiabilidad de sitios (SRES), a automatizar su trabajo. Una parte importante de AIOps es el Análisis de registros. Los registros son documentos creados por aplicaciones que detallan lo que está sucediendo en un momento dado. Contienen información crucial que ayuda a los SREs a reconocer problemas y solucionarlos rápidamente. Sin embargo, analizar los registros manualmente puede ser complicado, especialmente a medida que se construyen más aplicaciones y se producen más registros.
El papel de los registros en la gestión del sistema
A medida que las empresas adoptan la arquitectura de microservicios, crean numerosas pequeñas aplicaciones que se conectan y trabajan juntas. Cada aplicación produce registros, lo que significa que hay un montón de datos que procesar. Si una aplicación falla, los SREs deben analizar rápidamente los registros para averiguar qué sucedió. Buscan patrones que indiquen problemas y evalúan la salud del sistema.
Para que el análisis de registros sea eficiente, es esencial analizar los registros correctamente, lo que significa descomponerlos en partes comprensibles. Conocer el formato del registro ayuda a los SREs a centrarse en los datos relevantes y comprenderlo mejor. Para mantener los sistemas funcionando sin problemas, es fundamental monitorizar los registros en busca de señales de problemas. Al categorizar los registros en indicadores clave de rendimiento, los SREs pueden detectar y abordar problemas rápidamente.
Desafíos en el análisis de registros
El análisis de registros no está exento de desafíos. Un problema importante es que los registros a menudo vienen sin etiquetas, lo que hace difícil entrenar modelos que los analicen automáticamente. La variedad en los formatos de registro añade a esta complejidad, ya que cada aplicación puede tener su propia manera de generar registros. Esta falta de estandarización significa que las técnicas comunes de aprendizaje automático pueden no funcionar bien sin ajustes extensos.
Recientemente, los modelos de lenguaje grandes (LLMs) han surgido como una solución prometedora para tareas de representación de texto, incluido el análisis de registros. Estos modelos se entrenan con grandes cantidades de datos para entender los patrones del lenguaje. Sin embargo, usar LLMs para registros puede ser complicado porque la estructura y el lenguaje de los registros difieren del texto regular. Por ejemplo, los registros a menudo incluyen terminología especializada que los modelos de lenguaje casual pueden no reconocer.
Entrando en el mundo de los modelos de lenguaje grandes
Los modelos de lenguaje grandes han mostrado un gran potencial en varios campos debido a su capacidad de aprender de los datos. Pueden procesar una cantidad significativa de información y aprender representaciones generalizadas que se pueden ajustar para tareas específicas. Esto significa que se pueden aplicar a diferentes aplicaciones, incluso cuando hay pocos datos etiquetados disponibles.
Este documento presenta un nuevo LLM diseñado específicamente para datos de registro. Este modelo, llamado BERTOps, se entrena usando datos de registro públicos y propietarios. El objetivo es ayudar a automatizar tareas de análisis de registros como la detección de formatos de registro, la identificación de señales doradas y la predicción de categorías de fallos.
Componentes del análisis de registros
La detección de formatos de registro implica reconocer el tipo de formato de registro en uso. Conocer el formato ayuda a analizar los registros con precisión y extraer información útil. La clasificación de señales doradas se refiere a identificar indicadores clave de rendimiento que los miembros del equipo supervisan para mantener la salud del sistema. Finalmente, la predicción de categorías de fallos implica clasificar los registros que indican problemas del sistema en categorías específicas como fallos de memoria o de red.
Cada una de estas tareas desempeña un papel vital en la robustez de los sistemas. Cuanto más precisas sean estas tareas, mejor podrán los SREs abordar los problemas antes de que se agraven.
La necesidad de un modelo específico del dominio
Si bien los LLM existentes están entrenados en datos generales, no funcionan bien con datos de registro. Esta limitación se debe a que carecen de exposición a la estructura y el léxico únicos que se encuentran en los registros. Por ejemplo, las expresiones comunes en los registros pueden no existir en el lenguaje regular, lo que dificulta que los modelos genéricos los interpreten con precisión.
BERTOps está diseñado para superar estos desafíos al ser entrenado directamente en datos de registro. Este modelo tiene como objetivo proporcionar un mejor rendimiento en tareas específicas del análisis de registros. Con el entrenamiento adecuado, BERTOps puede automatizar partes del flujo de trabajo del análisis de registros, permitiendo a los SREs centrarse en tareas de mayor nivel que requieren intervención humana.
Entrenando a BERTOps
Para entrenar a BERTOps, se recopiló una gran cantidad de datos de registro de varias fuentes. El proceso de entrenamiento implicó el uso de técnicas que permiten al modelo aprender de ejemplos, ajustando sus parámetros internos para obtener mejores resultados en tareas de clasificación.
El entrenamiento incluyó una combinación de preentrenamiento y afinado. Durante el preentrenamiento, el modelo aprendió a entender la estructura y los patrones en los registros. La afinación adaptó el conocimiento del modelo a tareas específicas posteriores, como la detección de formatos de registro y la predicción de categorías de fallos.
Las tres tareas principales
1. Detección de formato de registro (LFD)
Esta tarea implica determinar el formato de los registros entrantes. Identificar los formatos de registro correctamente es esencial porque permite al sistema extraer la información necesaria de manera más eficiente. Con tantas variaciones en los registros, enseñar al modelo a reconocer diferentes formatos, incluso con solo unos pocos ejemplos, es un desafío pero crucial.
2. Clasificación de señales doradas (GSC)
Las señales doradas representan métricas clave de salud para una aplicación. Monitorear estas señales ayuda a los SREs a responder rápidamente a problemas potenciales. Esta tarea de clasificación identifica qué registros corresponden a estas métricas esenciales, lo que permite a los equipos rastrear el rendimiento de la aplicación fácilmente.
3. Predicción de categoría de fallo (FCP)
Las categorías de fallo ayudan a identificar qué tipo de problemas enfrenta un sistema, guiando a los equipos sobre cómo responder. Esta tarea tiene como objetivo clasificar los registros que sugieren fallos en categorías predefinidas, como fallos de memoria o de red. La meta es asegurar que los SREs puedan dirigir rápidamente los problemas a los equipos adecuados para su resolución.
Preparando conjuntos de datos etiquetados
Crear conjuntos de datos etiquetados es vital para entrenar modelos. Sin embargo, etiquetar registros manualmente lleva mucho tiempo y es complicado. Para aliviar este problema, los formatos de registros existentes se categorizaron en plantillas con estructuras similares. Los anotadores etiquetaron estas plantillas en lugar de registros individuales, lo que redujo significativamente la carga de trabajo mientras mantenía una amplia cobertura.
El objetivo era desarrollar un conjunto de datos integral que pudiera utilizarse en las tres tareas. Una vez que las plantillas fueron etiquetadas, podrían usarse para generar conjuntos de entrenamiento para BERTOps.
Experimentando con BERTOps
La efectividad de BERTOps se evaluó en comparación con varios modelos de referencia, incluidos modelos de aprendizaje automático tradicionales y LLM establecidos. Cada modelo se probó en su capacidad para realizar las tres tareas. Al comparar los resultados de rendimiento, fue posible evaluar qué tan bien funcionó BERTOps en la práctica.
Los resultados indicaron que BERTOps superó a muchos modelos existentes, especialmente en tareas donde había pocos datos disponibles. El modelo mostró una fuerte capacidad para aprender rápidamente cuando se le proporcionaron incluso ejemplos de entrenamiento limitados.
Hallazgos clave
Los experimentos revelaron varios puntos clave sobre BERTOps:
Rendimiento específico del dominio: El entrenamiento especializado en datos de registro resultó en un mejor rendimiento en tareas de análisis de registros en comparación con modelos genéricos. BERTOps se adaptó rápidamente a los requisitos de cada tarea, mostrando una clara ventaja.
Aprendizaje con pocos ejemplos: BERTOps destacó en tareas con datos etiquetados limitados, demostrando que puede ajustarse a nuevas clasificaciones con eficiencia. Esta capacidad es crucial para aplicaciones del mundo real donde es posible que no haya conjuntos de datos etiquetados extensos disponibles.
Aprendizaje rápido con más datos: Cuando se le proporcionaron conjuntos de datos más grandes, BERTOps mostró mejoras significativas en precisión y rendimiento. Esta tendencia resalta la importancia de la disponibilidad de datos para mejorar el rendimiento del modelo.
Análisis cualitativo de las predicciones
Para entender qué tan bien funciona BERTOps, se realizó un análisis cualitativo. Al examinar ejemplos específicos de registros y sus clasificaciones, fue posible identificar tanto fortalezas como debilidades en el modelo.
Ejemplos de detección de formato de registro
En la detección de formato de registro, BERTOps tuvo una alta tasa de precisión al reconocer los formatos correctos. El modelo destacó especialmente con formatos no vistos, mostrando su capacidad para generalizar más allá de sus datos de entrenamiento. Las clasificaciones erróneas generalmente se debieron a similitudes entre ciertos formatos, lo que indica áreas de mejora potencial.
Perspectivas de clasificación de señales doradas
Al clasificar señales doradas, BERTOps tuvo un buen desempeño al distinguir los indicadores clave de rendimiento. Sin embargo, mostró algo de confusión con la clase de disponibilidad, clasificándola erróneamente como un error. Esta clasificación incorrecta subraya la complejidad de etiquetar con precisión los registros que contienen múltiples señales.
Observaciones de predicción de categoría de fallo
En la predicción de categoría de fallo, BERTOps identificó fallos de memoria y de I/O con alta precisión. No obstante, enfrentó desafíos con registros ambiguos que podrían encajar en múltiples categorías. La complejidad en la estructura de los datos de registro a menudo llevó a interpretaciones superpuestas, resultando en predicciones mezcladas.
Trabajos relacionados en análisis de registros
Se han utilizado varios enfoques en el análisis de registros, desde métodos basados en reglas hasta modelos de aprendizaje automático tradicionales. Los sistemas basados en reglas a menudo requieren un esfuerzo manual significativo para mantener y escalar, lo que los hace engorrosos para entornos de ritmo rápido.
Recientemente, han surgido modelos de transformadores diseñados para el análisis de registros, pero tienden a centrarse en tareas específicas como la detección de anomalías en lugar de ser versátiles en diferentes aplicaciones. BERTOps llena este vacío al proporcionar un enfoque más generalista, capaz de abordar múltiples tareas en el ámbito de AIOps.
Conclusión y direcciones futuras
El desarrollo de BERTOps representa un paso importante hacia la automatización del análisis de registros para operaciones de TI. Con su capacidad para aprender de los datos de registro y realizar eficazmente tareas esenciales, se destaca como una herramienta valiosa para los SREs.
Mirando hacia el futuro, se puede expandir BERTOps para incluir otras tareas dentro de AIOps, como el análisis de registros y la predicción de incidentes. Al incorporar diferentes tipos de datos, como trazas de solicitudes y métricas de monitoreo, BERTOps podría evolucionar hacia una solución integral para gestionar las operaciones de TI de manera más eficiente.
A medida que crece la demanda de sistemas de TI fiables, herramientas como BERTOps desempeñarán un papel crítico en garantizar operaciones fluidas, mejorando en última instancia la estabilidad y el rendimiento de las aplicaciones.
Título: Learning Representations on Logs for AIOps
Resumen: AI for IT Operations (AIOps) is a powerful platform that Site Reliability Engineers (SREs) use to automate and streamline operational workflows with minimal human intervention. Automated log analysis is a critical task in AIOps as it provides key insights for SREs to identify and address ongoing faults. Tasks such as log format detection, log classification, and log parsing are key components of automated log analysis. Most of these tasks require supervised learning; however, there are multiple challenges due to limited labelled log data and the diverse nature of log data. Large Language Models (LLMs) such as BERT and GPT3 are trained using self-supervision on a vast amount of unlabeled data. These models provide generalized representations that can be effectively used for various downstream tasks with limited labelled data. Motivated by the success of LLMs in specific domains like science and biology, this paper introduces a LLM for log data which is trained on public and proprietary log data. The results of our experiments demonstrate that the proposed LLM outperforms existing models on multiple downstream tasks. In summary, AIOps powered by LLMs offers an efficient and effective solution for automating log analysis tasks and enabling SREs to focus on higher-level tasks. Our proposed LLM, trained on public and proprietary log data, offers superior performance on multiple downstream tasks, making it a valuable addition to the AIOps platform.
Autores: Pranjal Gupta, Harshit Kumar, Debanjana Kar, Karan Bhukar, Pooja Aggarwal, Prateeti Mohapatra
Última actualización: 2023-08-18 00:00:00
Idioma: English
Fuente URL: https://arxiv.org/abs/2308.11526
Fuente PDF: https://arxiv.org/pdf/2308.11526
Licencia: https://creativecommons.org/licenses/by/4.0/
Cambios: Este resumen se ha elaborado con la ayuda de AI y puede contener imprecisiones. Para obtener información precisa, consulte los documentos originales enlazados aquí.
Gracias a arxiv por el uso de su interoperabilidad de acceso abierto.
Enlaces de referencia
- https://github.com/huggingface/transformers/blob/main/examples/pytorch/language-modeling/run
- https://ilesb.southindia.cloudapp.azure.com:443
- https://scikit-learn.org/stable/
- https://www.tandfonline.com/doi/full/10.1080/08839514.2022.2145642
- https://arxiv.org/pdf/2112.03159.pdf
- https://simpletransformers.ai/