Automatizzare l'analisi dei log con BERTOps
BERTOps migliora l'analisi dei log per le operazioni IT, aiutando i team di affidabilità del sito.
― 9 leggere min
Indice
- Il Ruolo dei Log nella Gestione dei Sistemi
- Sfide nell'Analisi dei Log
- Entrando nel Mondo dei Modelli di Linguaggio di Grandi Dimensioni
- Componenti dell'Analisi dei Log
- La Necessità di un Modello Specifico per il Settore
- Addestramento di BERTOps
- I Tre Compiti Principali
- Preparazione dei Dataset Etichettati
- Sperimentazione con BERTOps
- Risultati Chiave
- Analisi Qualitativa delle Previsioni
- Lavori Correlati nell'Analisi dei Log
- Conclusione e Direzioni Future
- Fonte originale
- Link di riferimento
L'AI per le Operazioni IT, spesso chiamata AIOps, è uno strumento che aiuta i team IT, in particolare gli Ingegneri di Affidabilità del Sito (SRE), ad automatizzare il loro lavoro. Una parte importante di AIOps è l'Analisi dei log. I log sono registrazioni create dalle applicazioni che dettagliano cosa sta succedendo in un dato momento. Contengono informazioni cruciali che aiutano gli SRE a riconoscere i problemi e a risolverli rapidamente. Tuttavia, analizzare i log manualmente può essere difficile, specialmente con l'aumento delle applicazioni e della produzione di log.
Il Ruolo dei Log nella Gestione dei Sistemi
Con l'adozione dell'architettura a microservizi, le aziende creano molte piccole applicazioni che si connettono e lavorano insieme. Ogni applicazione produce log, il che significa che c'è un sacco di dati da esaminare. Se un'applicazione smette di funzionare, gli SRE devono analizzare rapidamente i log per scoprire cosa è successo. Cercano modelli che indicano problemi e valutano la salute del sistema.
Per rendere l'analisi dei log efficiente, è essenziale analizzare i log correttamente, ovvero suddividerli in parti comprensibili. Conoscere il formato del log aiuta gli SRE a concentrarsi sui dati rilevanti e a comprenderli meglio. Per mantenere i sistemi funzionanti senza intoppi, è fondamentale monitorare i log per eventuali segnali di problemi. Categorizzando i log in indicatori chiave di prestazione, gli SRE possono rilevare rapidamente e affrontare i problemi.
Sfide nell'Analisi dei Log
L'analisi dei log non è priva di sfide. Un problema principale è che i log spesso arrivano senza etichette, rendendo difficile addestrare modelli che li analizzano automaticamente. La varietà nei formati dei log contribuisce a questa complessità, poiché ogni applicazione potrebbe avere il proprio modo di generare log. Questa mancanza di standardizzazione significa che le tecniche comuni di machine learning potrebbero non funzionare bene senza ampie modifiche.
Recentemente, i modelli di linguaggio di grandi dimensioni (LLM) sono emersi come una soluzione promettente per i compiti di rappresentazione testuale, compresa l'analisi dei log. Questi modelli sono addestrati su enormi quantità di dati per comprendere i modelli linguistici. Tuttavia, usare i LLM per i log può essere complicato perché la struttura e il linguaggio dei log differiscono dal testo regolare. Ad esempio, i log includono spesso una terminologia specializzata che i modelli di linguaggio comuni potrebbero non riconoscere.
Entrando nel Mondo dei Modelli di Linguaggio di Grandi Dimensioni
I modelli di linguaggio di grandi dimensioni hanno mostrato un grande potenziale in vari campi grazie alla loro capacità di apprendere dai dati. Possono elaborare una quantità significativa di informazioni e apprendere rappresentazioni generalizzate che possono essere perfezionate per compiti specifici. Questo significa che possono essere applicati a diverse applicazioni, anche quando ci sono pochi dati etichettati disponibili.
Questo documento presenta un nuovo LLM progettato specificamente per i dati di log. Questo modello, chiamato BERTOps, è addestrato utilizzando dati di log sia pubblici che proprietari. L'obiettivo è aiutare ad automatizzare compiti di analisi dei log come la rilevazione del formato dei log, l'identificazione dei segnali chiave e la previsione delle categorie di guasto.
Componenti dell'Analisi dei Log
La rilevazione del formato dei log riguarda il riconoscimento del tipo di formato di log in uso. Conoscere il formato aiuta a analizzare i log accuratamente ed estrarre informazioni utili. La classificazione dei segnali chiave si riferisce all'identificazione degli indicatori chiave di prestazione che i membri del team monitorano per mantenere la salute del sistema. Infine, la previsione delle categorie di guasto implica la classificazione dei log che indicano problemi di sistema in categorie specifiche come guasti di memoria o di rete.
Ognuno di questi compiti gioca un ruolo vitale nel rendere i sistemi robusti. Più accuratamente vengono completati questi compiti, meglio gli SRE possono affrontare i problemi prima che escano di controllo.
La Necessità di un Modello Specifico per il Settore
Mentre gli LLM esistenti sono addestrati su dati generali, non si comportano bene con i dati di log. Questa limitazione è dovuta alla mancanza di esposizione alla struttura unica e al lessico che si trova nei log. Ad esempio, espressioni comuni nei log potrebbero non esistere nella lingua comune, rendendo difficile per i modelli generici interpretarli con precisione.
BERTOps è progettato per superare queste sfide addestrandosi direttamente sui dati di log. Questo modello mira a fornire migliori prestazioni sui compiti specifici per l'analisi dei log. Con il giusto addestramento, BERTOps può automatizzare parti del flusso di lavoro di analisi dei log, consentendo agli SRE di concentrarsi su compiti di livello superiore che richiedono l'intervento umano.
Addestramento di BERTOps
Per addestrare BERTOps, è stata raccolta una grande quantità di dati di log da varie fonti. Il processo di addestramento ha coinvolto l'uso di tecniche che consentono al modello di apprendere da esempi, adattando i suoi parametri interni per produrre risultati migliori per i compiti di classificazione.
L'addestramento ha incluso una combinazione di pre-addestramento e perfezionamento. Durante il pre-addestramento, il modello ha appreso a comprendere la struttura e i modelli nei log. Il perfezionamento ha adattato le conoscenze del modello a compiti specifici come la rilevazione del formato dei log e la previsione delle categorie di guasto.
I Tre Compiti Principali
1. Rilevazione del Formato dei Log (LFD)
Questo compito riguarda la determinazione del formato dei log in arrivo. Identificare i formati dei log correttamente è essenziale perché consente al sistema di estrarre le informazioni necessarie in modo più efficiente. Con molte variazioni nei log, insegnare al modello a riconoscere diversi formati, anche con solo pochi esempi, è difficile ma cruciale.
2. Classificazione dei Segnali Chiave (GSC)
I segnali chiave rappresentano metriche di salute fondamentali per un'applicazione. Monitorare questi segnali aiuta gli SRE a rispondere rapidamente a potenziali problemi. Questo compito di classificazione identifica quali log corrispondono a queste metriche essenziali, consentendo ai team di monitorare facilmente le prestazioni dell'applicazione.
3. Previsione delle Categorie di Guasto (FCP)
Le categorie di guasto aiutano a identificare che tipo di problemi sta affrontando un sistema, guidando i team su come rispondere. Questo compito mira a classificare i log che suggeriscono guasti in categorie predefinite, come guasti di memoria o di rete. L'obiettivo è garantire che gli SRE possano indirizzare rapidamente i problemi ai team giusti per la risoluzione.
Preparazione dei Dataset Etichettati
Creare dataset etichettati è fondamentale per addestrare i modelli. Tuttavia, etichettare manualmente i log è dispendioso in termini di tempo e difficile. Per alleviare questo problema, i formati di log esistenti sono stati categorizzati in modelli con strutture simili. Gli annotatori hanno etichettato questi modelli invece di singoli log, riducendo significativamente il carico di lavoro mantenendo una copertura ampia.
L'obiettivo era sviluppare un dataset completo che possa essere utilizzato per tutti e tre i compiti. Una volta etichettati i modelli, potrebbero essere utilizzati per generare set di addestramento per BERTOps.
Sperimentazione con BERTOps
L'efficacia di BERTOps è stata valutata rispetto a vari modelli di riferimento, compresi modelli di machine learning tradizionali e LLM consolidati. Ogni modello è stato testato sulla sua capacità di eseguire i tre compiti. Confrontando i risultati delle prestazioni, è stato possibile valutare quanto bene BERTOps funzionasse nella pratica.
I risultati hanno indicato che BERTOps ha superato molti modelli esistenti, specialmente nei compiti in cui erano disponibili pochi dati. Il modello ha mostrato una forte capacità di apprendere rapidamente anche con esempi di addestramento limitati.
Risultati Chiave
Gli esperimenti hanno rivelato diversi punti chiave su BERTOps:
Prestazioni Specifiche per il Settore: L'addestramento specializzato sui dati di log ha portato a migliori prestazioni nei compiti di analisi dei log rispetto ai modelli generici. BERTOps si è adattato rapidamente alle esigenze di ciascun compito, mostrando un chiaro vantaggio.
Apprendimento con Pochi Esempi: BERTOps ha eccelso nei compiti con dati etichettati limitati, dimostrando di potersi adattare a nuove classificazioni in modo efficiente. Questa abilità è cruciale per applicazioni del mondo reale dove potrebbero non essere disponibili ampi dataset etichettati.
Apprendimento Rapido con Maggiori Dati: Quando fornito di dataset più grandi, BERTOps ha mostrato significativi miglioramenti in accuratezza e prestazioni. Questa tendenza evidenzia l'importanza della disponibilità di dati nel migliorare le prestazioni del modello.
Analisi Qualitativa delle Previsioni
Per capire quanto bene funzioni BERTOps, è stata condotta un'analisi qualitativa. Esaminando esempi specifici di log e le loro classificazioni, è stato possibile identificare sia punti di forza che debolezze nel modello.
Esempi di Rilevazione del Formato dei Log
Nella rilevazione del formato dei log, BERTOps ha avuto un'alta percentuale di accuratezza nel riconoscere i formati corretti. Il modello ha particolarmente eccelso con formati non visti, dimostrando la sua capacità di generalizzare oltre i dati di addestramento. Le classificazioni errate erano generalmente dovute a somiglianze tra alcuni formati, indicando aree di potenziale miglioramento.
Intuizioni sulla Classificazione dei Segnali Chiave
Quando si trattava di classificare segnali chiave, BERTOps ha performato bene nel distinguere gli indicatori di prestazione chiave. Tuttavia, ha mostrato un po' di confusione con la classe di disponibilità, classificandola erroneamente come un errore. Questa errata classificazione sottolinea la complessità di etichettare con precisione i log che contengono più segnali.
Osservazioni sulla Previsione delle Categorie di Guasto
Nella previsione delle categorie di guasto, BERTOps ha identificato guasti di memoria e I/O con alta accuratezza. Tuttavia, ha affrontato sfide con log ambigui che potrebbero rientrare in più categorie. La complessità nella struttura dei dati di log spesso ha portato a interpretazioni sovrapposte, risultando in previsioni miste.
Lavori Correlati nell'Analisi dei Log
Sono stati utilizzati vari approcci nell'analisi dei log, che vanno dai metodi basati su regole ai modelli di machine learning tradizionali. I sistemi basati su regole richiedono spesso un notevole sforzo manuale per mantenere e scalare, rendendoli ingombranti per ambienti frenetici.
Recentemente, sono emersi modelli transformer su misura per l'analisi dei log, ma tendono a concentrarsi su compiti specifici come la rilevazione di anomalie piuttosto che essere versatili tra diverse applicazioni. BERTOps colma questa lacuna fornendo un approccio più generalista, capace di affrontare più compiti nel campo dell'AIOps.
Conclusione e Direzioni Future
Lo sviluppo di BERTOps rappresenta un passo significativo avanti nell'automazione dell'analisi dei log per le operazioni IT. Con la sua capacità di apprendere dai dati di log e di eseguire efficacemente compiti essenziali, si distingue come uno strumento prezioso per gli SRE.
Guardando al futuro, BERTOps può essere ampliato per includere altri compiti all'interno di AIOps, come l'analisi dei log e la previsione degli incidenti. Incorporando diversi tipi di dati, come le tracce delle richieste e le metriche di monitoraggio, BERTOps potrebbe evolversi in una soluzione olistica per gestire le operazioni IT in modo più efficiente.
Con l'aumento della domanda di sistemi IT affidabili, strumenti come BERTOps giocheranno un ruolo critico nell'assicurare operazioni fluide, migliorando infine la stabilità e le prestazioni delle applicazioni.
Titolo: Learning Representations on Logs for AIOps
Estratto: 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.
Autori: Pranjal Gupta, Harshit Kumar, Debanjana Kar, Karan Bhukar, Pooja Aggarwal, Prateeti Mohapatra
Ultimo aggiornamento: 2023-08-18 00:00:00
Lingua: English
URL di origine: https://arxiv.org/abs/2308.11526
Fonte PDF: https://arxiv.org/pdf/2308.11526
Licenza: https://creativecommons.org/licenses/by/4.0/
Modifiche: Questa sintesi è stata creata con l'assistenza di AI e potrebbe presentare delle imprecisioni. Per informazioni accurate, consultare i documenti originali collegati qui.
Si ringrazia arxiv per l'utilizzo della sua interoperabilità ad accesso aperto.
Link di riferimento
- 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/