Guida rapida: Cloud Logging per le VM di Compute Engine

Guida rapida: Cloud Logging per le VM di Compute Engine

Questo documento mostra come visualizzare i log di syslog raccolti da un server web Apache installato su un'istanza di macchina virtuale (VM) Compute Engine. Puoi utilizzare una procedura simile a quella descritta in questa guida rapida per monitorare le applicazioni di terze parti.

In questa guida rapida, procedi nel seguente modo:

  1. Creare un'istanza VM di Compute Engine.
  2. Installare un server web Apache.
  3. Installare e configurare Ops Agent per il server web Apache.
  4. Visualizzare i log in Esplora log.
  5. Creare un avviso basato su log.
  6. Eseguire la pulizia.

Per seguire le indicazioni dettagliate per questa attività direttamente nella console Google Cloud, fai clic su Procedura guidata:

Procedura guidata


Prima di iniziare

Alcuni dei passaggi in questo documento potrebbero non funzionare correttamente se la tua organizzazione applica vincoli al tuo ambiente Google Cloud. In questo caso, potresti non essere in grado di completare attività come la creazione di indirizzi IP pubblici o di chiavi dell'account di servizio. Se effettui una richiesta che restituisce un errore per i vincoli, scopri come sviluppare applicazioni in un ambiente Google Cloud limitato.

Per completare questa guida rapida devi avere un progetto Google Cloud con fatturazione abilitata. Se non hai un progetto Google Cloud o se non hai abilitato la fatturazione per il tuo progetto Google Cloud, procedi nel seguente modo:

  1. 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.
  2. Nella console di Google Cloud Console, nella pagina del selettore dei progetti, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  3. Verifica che la fatturazione sia attivata per il tuo progetto Google Cloud. Scopri come verificare se la fatturazione è abilitata per un progetto.

  4. Nella console di Google Cloud Console, nella pagina del selettore dei progetti, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  5. Verifica che la fatturazione sia attivata per il tuo progetto Google Cloud. Scopri come verificare se la fatturazione è abilitata per un progetto.

  6. Se hai configurato un canale di notifica via email, salta questo passaggio.

    Per configurare un canale di notifica via email:

    1. Nella console Google Cloud, seleziona Cloud Monitoring o fai clic sul pulsante seguente:

      Vai a Monitoring
    2. Seleziona Avvisi.
    3. Fai clic su Modifica canali di notifica.
    4. Nella sezione Email, fai clic su Aggiungi nuovo e completa la finestra di dialogo.

Crea un'istanza VM di Compute Engine

Ti consigliamo di creare una nuova istanza VM di Compute Engine per questa guida rapida perché installi e configuri il software.

  1. Nella console Google Cloud, vai a Compute e seleziona Compute Engine:

    Vai a Compute Engine

  2. Per creare un'istanza VM, fai clic su Crea istanza.

  3. Compila i campi della tua istanza come indicato di seguito:

    • Nel campo Nome, inserisci quickstart-vm.
    • Nel campo Tipo di macchina, seleziona Small.
    • Assicurati che il disco di avvio sia configurato per Debian GNU/Linux.
    • Nel campo Firewall, seleziona sia Consenti traffico HTTP sia Consenti traffico HTTPS.

    Lascia invariati i valori predefiniti dei restanti campi.

  4. Fai clic su Crea. Quando la VM è pronta, viene visualizzata nell'elenco delle istanze nella scheda Istanze.

Installa un server web Apache

Per eseguire il deployment di un server web Apache sulla tua istanza VM di Compute Engine, segui questi passaggi:

  1. Per aprire un terminale per l'istanza, fai clic su SSH nella colonna Connetti.

  2. Per aggiornare gli elenchi di pacchetti nella tua istanza, esegui questo comando:

    sudo apt-get update
    
  3. Per installare un server HTTP Apache2, esegui questo comando:

    sudo apt-get install apache2 php7.0
    
  4. Apri il browser e connettiti al tuo server HTTP Apache2 utilizzando l'URL http://EXTERNAL_IP, dove EXTERNAL_IP è l'indirizzo IP esterno della VM. Puoi trovare questo indirizzo nella colonna IP esterno della tua istanza VM.

    Viene visualizzata la pagina predefinita di Apache2:

    Visualizza la pagina predefinita di Apache2.

Installa e configura Ops Agent

Per raccogliere log e metriche dal server web Apache, installa Ops Agent utilizzando il terminale:

  1. Per aprire un terminale per l'istanza VM, fai clic su SSH nella colonna Connetti.

  2. Per installare Ops Agent, esegui questo comando:

       curl -sSO https://dl.google.com/cloudagents/add-google-cloud-ops-agent-repo.sh
       sudo bash add-google-cloud-ops-agent-repo.sh --also-install
    

    Le voci della tabella sono google-cloud-ops-agent installation succeeded.

  3. Copia il seguente comando e incollalo nel terminale:

    # Configures Ops Agent to collect telemetry from the app and restart Ops Agent.
    
    set -e
    
    # Create a back up of the existing file so existing configurations are not lost.
    sudo cp /etc/google-cloud-ops-agent/config.yaml /etc/google-cloud-ops-agent/config.yaml.bak
    
    # Configure the Ops Agent.
    sudo tee /etc/google-cloud-ops-agent/config.yaml > /dev/null << EOF
    metrics:
      receivers:
        apache:
          type: apache
      service:
        pipelines:
          apache:
            receivers:
              - apache
    logging:
      receivers:
        apache_access:
          type: apache_access
        apache_error:
          type: apache_error
      service:
        pipelines:
          apache:
            receivers:
              - apache_access
              - apache_error
    EOF
    
    sudo service google-cloud-ops-agent restart
    sleep 60
    

    Il comando precedente crea la configurazione per raccogliere e importare log e metriche dal server web Apache. Per saperne di più sull'importazione dei log dal server web Apache, consulta Configurare l'agente operativo per il server web Apache.

Visualizza i log

Puoi utilizzare Esplora log per visualizzare i log nella console Google Cloud. Per selezionare determinate voci di log, puoi eseguire una query.

Per visualizzare i log nella console Google Cloud:

  1. Nella console Google Cloud, seleziona Logging dal menu di navigazione, quindi fai clic su Esplora log:

    Vai a Esplora log

  2. Nel riquadro Query, attiva Mostra query. Si apre l'Editor query.

  3. Per individuare l'ID del progetto Google Cloud, espandi l'elenco dei progetti di Google Cloud dal selettore di progetti di Google Cloud. Nella colonna ID, copia l'ID progetto Google Cloud negli appunti.

  4. Nell'espressione seguente, incolla l'ID copiato nel campo PROJECT_ID, quindi copia l'espressione nell'editor di 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 e apache_error.

  5. Fai clic su Esegui query o premi il tasto Invio. I risultati della query vengono visualizzati nel riquadro Risultati query.

Crea un avviso basato su log

Per ricevere una notifica quando viene visualizzato un messaggio specifico nelle voci del log, crea un avviso basato su log. In questa sezione, creerai un avviso basato su log in modo da ricevere una notifica quando nelle voci del log viene visualizzato un messaggio 404 Not Found.

Per creare un avviso basato su log:

  1. Per creare un avviso basato su log, devi configurare un canale di notifica. Per questa guida rapida, crea un canale di notifica via email. Consulta la sezione Configurare le notifiche via email nella sezione Prima di iniziare di questa guida rapida.

  2. Vai a Esplora log nella console Google Cloud:

    Vai a Esplora log

  3. Nella barra degli strumenti Risultati delle query, fai clic su Crea avviso. Viene visualizzato il riquadro dei criteri di avviso basati su log. Compila i campi come segue:

    1. In Dettagli avviso, inserisci 404 Not Found nel campo Nome criterio di avviso.

    2. In Scegli i log da includere in questo avviso, copia la seguente query e incollala nella casella di testo del filtro del log:

       severity>=DEFAULT /help httpRequest.status=404
      

      Il filtro di log precedente cerca voci di log con un valore severity di almeno DEFAULT, che contengono il testo /help e con stato httpRequest pari a 404.

    3. In Imposta la frequenza delle notifiche e la durata della chiusura automatica, seleziona i seguenti valori:

      1. Tempo tra le notifiche: 5 min

      2. Durata di chiusura automatica degli incidenti: 30 min

    4. In Chi dovrebbe ricevere le notifiche?, seleziona un'email da Canali di notifica e fai clic su Salva per configurare il criterio di avviso.

Per testare l'avviso basato sui log appena creato:

  1. Nella console Google Cloud, vai a Compute e seleziona Compute Engine:

    Vai a Compute Engine

  2. Per aprire un terminale per l'istanza, nella colonna Connetti fai clic su SSH.

  3. 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 via email. Il completamento di questo processo potrebbe richiedere diversi minuti.

    La notifica via email che ricevi è simile alla seguente:

    L'esempio di avviso basato su log genera una notifica via email.

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 Google Cloud per questa guida rapida, elimina il progetto Google Cloud:

    1. Nella console Google Cloud, vai alla pagina Gestisci risorse.

      Vai a Gestisci risorse

    2. Nell'elenco dei progetti, seleziona il progetto che vuoi eliminare, quindi fai clic su Elimina.
    3. Nella finestra di dialogo, digita l'ID del progetto e fai clic su Chiudi per eliminare il progetto.

  • Se hai creato una nuova VM in un progetto esistente, elimina l'istanza VM:

    1. In Google Cloud Console, vai alla pagina Istanze VM.

      Vai alle istanze VM

    2. Seleziona la casella di controllo l'istanza che vuoi eliminare.
    3. Per eliminare l'istanza, fai clic su Altre azioni, poi su Elimina e segui le istruzioni.

  • Se hai utilizzato un'istanza VM esistente per questa guida rapida, disinstalla Ops Agent:

    1. Per disinstallare l'agente Ops, apri il terminale ed esegui questo comando:

      sudo bash add-google-cloud-ops-agent-repo.sh --uninstall
      

Passaggi successivi