Come analizzare log Nginx con un LLM locale? | Antonio Pedoto
Scopri come analizzare i log Nginx con un LLM locale usando Ollama e Python. Script pratico e prompt ottimizzati per Llama 3.
Perché usare un LLM locale per analizzare i log Nginx?
Hai mai guardato migliaia di righe di log Nginx senza capire cosa cercare? Io sì. Ho risolto usando un LLM locale. Il modello comprende il formato Nginx e suggerisce anomalie. Non sposto dati su cloud. Il tempo di risposta è quasi istantaneo.
Benefici rispetto ai servizi cloud
Sicurezza. Riduci il rischio di esposizione. Costo. Non paghi per richieste API. Velocità. La latenza è minima.
Requisiti di sicurezza e privacy
Mantieni i log sul server. Usa HTTPS per comunicare con l'LLM. Archivia i risultati anonimizzati. Conserva la cronologia solo se necessario.
Preparare l'ambiente: installare Ollama e il modello Llama 3
Ho scaricato Ollama su un server Ubuntu. Ecco i passi rapidi.
Installazione di Ollama
Questo comando installa l'eseguibile. Verifica l'installazione:
Se vedi la versione, tutto ok.
Download del modello Llama 3
Il download dura pochi minuti. Una volta pronto, avvia il modello:
Controlla la porta 11434. Se non risponde, riavvia Ollama.
Analizzare log Nginx con LLM locale: estrarre e anonimizzare
I log di Nginx sono linee di testo. Ecco un esempio:
Struttura tipica dei log Nginx
IP, data, metodo, URL, status, bytes, referrer, user-agent. Il modello ha bisogno di una struttura chiara. Senza formattazione, il modello confonde.
Script di anonimizzazione
Il risultato:
Scrivere lo script Python per il parsing e l'invio al LLM
Il codice è testato in produzione. Ecco la versione completa.
Parsing dei campi chiave
Formattare prompt per Llama 3
Esempio di utilizzo:
Interpretare i risultati e ottimizzare il prompt
Analizzare le risposte del modello
Leggi il testo. Confronta con le tue aspettative. Se l'output è vago, riformula il prompt.
Iterare per migliorare precisione
Aggiungi contesto. Esempio: specifica che vuoi evidenziare richieste 4xx. Modifica la frase finale del prompt.
Il modello diventerà più mirato.
In sintesi Installa Ollama, scarica Llama 3, avvia il servizio. Anonimizza i log con uno script Python. Parsa i campi chiave, costruisci un prompt chiaro. Invia al modello, interpreta la risposta. Itera il prompt per precisione crescente.
FAQ
Come posso garantire che i log siano anonimizzati prima di inviarli al LLM? Usa uno script Python che sostituisce IP, user-agent e percorsi sensibili con placeholder prima di inviare la stringa al modello.
Qual è la dimensione massima del prompt che posso inviare a Llama 3? Il contesto massimo è di 8.000 token. Per log più lunghi, suddividili in blocchi più piccoli.
Posso usare un modello diverso da Llama 3 con Ollama? Sì. Ollama supporta diversi modelli open-source come Mistral, Phi, Gemma. Scaricali con ollama pull .
Errore comune
Ollama non risponde: verifica che la porta 11434 sia libera e che il modello sia in esecuzione. Se il problema persiste, riavvia Ollama e controlla i log di errore con journalctl -u ollama.