Raccogli i log da Apache con Ops Agent
Scopri come raccogliere e visualizzare i log syslog
raccolti da un server web Apache installato su un'istanza di una macchina virtuale (VM) Compute Engine utilizzando Ops Agent. Puoi utilizzare una procedura simile a quella in questa guida rapida per monitorare altre applicazioni di terze parti.
In questa guida rapida, esegui le seguenti operazioni:
- Crea un'istanza VM di Compute Engine e installa Ops Agent.
- Installa un server web Apache.
- Configura Ops Agent per il server web Apache.
- Visualizzare i log in Esplora log.
- Creare un avviso basato su log.
- Verifica l'avviso.
- Eseguire la pulizia.
Per seguire le indicazioni dettagliate per questa attività direttamente nella console Google Cloud, fai clic su Aiuto:
Prima di iniziare
-
I vincoli di sicurezza definiti dalla tua organizzazione potrebbero impedirti di completare i passaggi seguenti. Per informazioni sulla risoluzione dei problemi, consulta Sviluppare applicazioni in un ambiente Google Cloud vincolato.
- Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
-
Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.
-
Abilita le API Compute Engine, Cloud Monitoring, and Cloud Logging.
-
Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.
-
Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.
-
Abilita le API Compute Engine, Cloud Monitoring, and Cloud Logging.
Crea un'istanza VM
-
Nel pannello di navigazione della console Google Cloud, seleziona Compute Engine e poi Istanze VM:
Crea una VM facendo clic su Crea istanza.
- Nel campo
Nome , inserisci un nome descrittivo. - Nel campo
Tipo di macchina , seleziona e2-small. - Nella sezione
Disco di avvio , mantieni l'impostazione predefinita Debian GNU/Linux. - Nella sezione
Firewall , seleziona sia Consenti traffico HTTP sia Consenti traffico HTTPS. - Nella sezione Observability - Ops Agent, seleziona Installa Ops Agent per il monitoraggio e il logging.
- Fai clic su
Crea .
Installa un server web Apache
Per installare un server web Apache sulla tua istanza VM di Compute Engine, segui questi passaggi:
Nella pagina Istanze VM, individua la nuova VM, vai alla colonna Connetti e fai clic su SSH.
Hai problemi con la connessione? Fai riferimento all'articolo Risoluzione dei problemi relativi a SSH.
Per aggiornare gli elenchi di pacchetti, copia il seguente comando negli appunti, incollalo nel terminale SSH e premi Invio:
sudo apt-get update
Dopo aver visualizzato il messaggio "Lettura degli elenchi di pacchetti in corso... Fatto", nel terminale SSH, esegui questo comando per installare un server web Apache2:
sudo apt-get install apache2 php7.0
Quando ti viene chiesto di continuare l'installazione, inserisci
Y
. Se il comando di installazione non riesce, utilizzasudo apt-get install apache2 php
.Quando viene restituito il prompt dei comandi, vai alla pagina Istanze VM e copia l'indirizzo IP esterno della VM nel seguente URL:
http://EXTERNAL_IP
Per connetterti al server web Apache, apri una nuova scheda del browser e inserisci l'URL del passaggio precedente.
Una volta installato correttamente il server web, nella scheda del browser viene visualizzata la pagina predefinita di Apache2 Debian.
Raccogli i log e le metriche del server web Apache
In questi passaggi, configurerai Ops Agent in modo che raccolga log e metriche dal server web Apache:Vai al terminale SSH per l'istanza VM. Se non hai un terminale aperto, procedi nel seguente modo:
-
Nel pannello di navigazione della console Google Cloud, seleziona Compute Engine e poi Istanze VM:
- Individua la nuova VM e fai clic su SSH.
-
Copia il seguente comando, quindi incollalo nel terminale per la tua istanza, quindi premi Invio:
Il comando precedente crea la configurazione per raccogliere e importare log e metriche dal server web Apache. Per maggiori informazioni, consulta Configurare il server web Ops Agent per il server web Apache.
- Attendi fino alla visualizzazione del prompt dei comandi. L'operazione richiede almeno 60 secondi.
Visualizza i log del server web Apache
Per visualizzare i log nella console Google Cloud, utilizza Esplora log:
-
Nel pannello di navigazione della console Google Cloud, seleziona Logging e poi Esplora log:
I log più recenti vengono visualizzati nel riquadro Risultati delle query.
Nella barra degli strumenti, assicurati che l'opzione Mostra query sia attivata.
Per visualizzare i log del server web Apache, crea ed esegui una query:
Espandi l'elenco dei progetti Google Cloud dal selettore di progetti Google Cloud, quindi copia l'ID progetto Google Cloud negli appunti.
Nell'espressione seguente, incolla l'ID copiato nel campo PROJECT_ID, quindi copia l'espressione nell'Editor query:
resource.type="gce_instance" logName=("projects/PROJECT_ID/logs/apache_access" OR "projects/PROJECT_ID/logs/apache_error")
Quando viene eseguita la query precedente, vengono mostrate solo le voci di log
apache_access
eapache_error
.Fai clic su
Esegui query .I risultati della query vengono visualizzati nel riquadro Risultati query.
Hai configurato Ops Agent per raccogliere log e metriche dal server web Apache e hai visualizzato i log. Il passaggio successivo consiste nella creazione di un criterio di avviso, in modo da ricevere una notifica quando viene visualizzato un pattern specifico in un log.
Crea un canale di notifica via email
Prima di creare un criterio di avviso, configura i canali di notifica che devono essere utilizzati dal criterio di avviso. Cloud Monitoring supporta numerosi tipi di canali di notifica, tra cui email, Slack, PagerDuty e Pub/Sub. Per maggiori informazioni, consulta Creare e gestire canali di notifica. Per ricevere notifiche via email:-
Nel pannello di navigazione della console Google Cloud, seleziona Monitoring e poi notifications Avvisi:
- Nella barra degli strumenti, fai clic su Modifica canali di notifica.
- Nella pagina Canali di notifica, scorri fino a
Email , quindi fai clic su Aggiungi nuovo. - Inserisci il tuo indirizzo email, un nome visualizzato, ad esempio
My email
, e fai clic su Salva.
Crea un avviso basato su log
Per ricevere una notifica quando nelle voci di log viene visualizzato un messaggio specifico, crea un avviso basato su log. In questa sezione creerai un avviso basato su log in modo da ricevere una notifica quando viene visualizzato un messaggio 404 Not Found
nelle voci di log.
-
Nel pannello di navigazione della console Google Cloud, seleziona Logging e poi Esplora log:
Nella barra degli strumenti Risultati query, fai clic su add_alert Crea avviso. Viene visualizzato il riquadro dei criteri di avviso basati su log.
In Dettagli avviso, inserisci
404 Not Found
nel campo Nome criterio di avviso.In Scegli i log da includere in questo avviso, procedi nel seguente modo:
- Rimuovi tutti i contenuti presenti nella casella di testo del filtro dei log.
Copia la seguente query e incollala nella casella di testo del filtro di log:
severity>=DEFAULT /help httpRequest.status=404
Il filtro di log precedente cerca le voci di log con un livello
severity
di almenoDEFAULT
, che contengono il testo/help
e uno statohttpRequest
pari ad404
.
Nella sezione Imposta la frequenza delle notifiche e la durata della chiusura automatica, procedi nel seguente modo:
- Imposta il campo Tempo tra le notifiche su 5 min.
- Imposta il campo Durata chiusura automatica incidenti su 30 min.
In Chi dovrebbe ricevere le notifiche?, seleziona l'email dal menu Canali di notifica, quindi fai clic su Salva.
Testa il criterio di avviso
Per testare il criterio di avviso:
Vai al terminale SSH per l'istanza VM. Se non hai un terminale aperto, procedi nel seguente modo:
-
Nel pannello di navigazione della console Google Cloud, seleziona Compute Engine e poi Istanze VM:
- Individua la nuova VM e fai clic su SSH.
-
Per cercare sul server la pagina falsa
localhost/help
, esegui questo comando:curl localhost/help
Dopo aver visualizzato un messaggio
404 Not Found
nel terminale, viene inviata una notifica email. Il completamento della procedura richiede diversi minuti.La notifica via email che ricevi è simile alla seguente:
Per visualizzare le nuove voci di log:
-
Nel pannello di navigazione della console Google Cloud, seleziona Logging e poi Esplora log:
- Nella barra degli strumenti, fai clic su Vai a ora.
-
Hai configurato Ops Agent per raccogliere log e metriche dal server web Apache, ma hai visualizzato solo i log. Per informazioni su come visualizzare le metriche del server web Apache, consulta Raccogliere metriche del server web Apache con Ops Agent: generare traffico.
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.
Se hai creato un nuovo progetto, ma non ne hai più bisogno, elimina il progetto.
Se hai utilizzato un progetto esistente:
Se hai creato una VM, eliminala:
- Nella console Google Cloud, vai alla pagina Istanze VM.
- Seleziona la casella di controllo per l'istanza che vuoi eliminare.
- Per eliminare l'istanza, fai clic su Altre azioni, quindi su Elimina e segui le istruzioni.
Elimina il criterio di avviso che hai creato:
-
Nel pannello di navigazione della console Google Cloud, seleziona Monitoring e poi notifications Avvisi:
- Seleziona il criterio di avviso che hai creato, quindi fai clic su
Elimina .
-
Passaggi successivi
Per saperne di più su Ops Agent e sulle integrazioni supportate, vedi:
Per informazioni su come visualizzare i log in Esplora log, consulta Visualizzare i log utilizzando Esplora log.
Per informazioni sulle query in Esplora log, vedi Creare query in Esplora log.
Per informazioni su come raccogliere e visualizzare le metriche del server web Apache, consulta la guida rapida Raccogliere metriche del server web Apache con Ops Agent.
Per ulteriori informazioni su Monitoring e sulla sua relazione con Cloud Logging, consulta Monitoring.