Mengumpulkan log dari Apache dengan Agen Operasional

Pelajari cara mengumpulkan dan melihat log syslog yang dikumpulkan dari server web Apache yang diinstal di instance virtual machine (VM) Compute Engine menggunakan Ops Agent. Anda dapat menggunakan proses yang serupa dengan yang ada dalam panduan memulai ini untuk memantau aplikasi pihak ketiga lainnya.

Dalam panduan memulai ini, Anda akan melakukan hal berikut:

  1. Buat instance VM Compute Engine dan instal Agen Operasional.
  2. Instal server web Apache.
  3. Konfigurasi Agen Operasional untuk server web Apache.
  4. Lihat log Anda di Logs Explorer.
  5. Membuat pemberitahuan berbasis log.
  6. Uji pemberitahuan Anda.
  7. Jalankan pembersihan.

Untuk mengikuti panduan langkah demi langkah tugas ini langsung di Google Cloud konsol, klik Pandu saya:

Pandu saya


Sebelum memulai

  1. Batasan keamanan yang ditentukan oleh organisasi mungkin mencegah Anda menyelesaikan langkah-langkah berikut. Untuk mengetahui informasi pemecahan masalah, lihat Mengembangkan aplikasi di lingkungan yang terbatas Google Cloud .

  2. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  3. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  4. Make sure that billing is enabled for your Google Cloud project.

  5. Enable the Compute Engine, Cloud Monitoring, and Cloud Logging APIs.

    Enable the APIs

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Make sure that billing is enabled for your Google Cloud project.

  8. Enable the Compute Engine, Cloud Monitoring, and Cloud Logging APIs.

    Enable the APIs

  9. Membuat instance VM

    1. Di konsol Google Cloud , buka halaman VM instances:

      Buka instance VM

      Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Compute Engine.

    2. Buat VM dengan mengklik Create instance. Konfigurasi instance Anda menggunakan opsi di menu navigasi.
    3. Di opsi Machine configuration, lakukan hal berikut:
      1. Di kolom Name, masukkan nama deskriptif.
      2. Di drop-down preset Machine type, pilih Shared-core > e2-small.
    4. Pastikan opsi OS and storage menampilkan Debian GNU/Linux. Jika tidak, klik opsi OS and storage, lalu klik Change. Dalam dialog Boot disk, tetapkan Version ke Debian GNU/Linux.
    5. Pada opsi Networking, untuk Firewall, pilih Allow HTTP traffic dan Allow HTTPS traffic.
    6. Verifikasi bahwa opsi Observability menampilkan Install Ops Agent. Jika tidak, klik opsi Observability, lalu pilih Install Ops Agent for Monitoring and Logging.
    7. Klik Buat.

    Menginstal server web Apache

    Untuk menginstal server web Apache di instance VM Compute Engine, lakukan hal berikut:

    1. Di halaman VM instances, temukan VM baru Anda, buka kolom Connect, lalu klik SSH.

      Mengalami masalah saat menghubungkan? Lihat Memecahkan masalah SSH.

    2. Untuk memperbarui daftar paket, salin perintah berikut ke papan klip Anda, tempel perintah ke terminal SSH, lalu tekan enter:

      sudo apt-get update
      
    3. Setelah Anda melihat pesan "Reading package lists... Done", di terminal SSH, jalankan perintah berikut untuk menginstal server web Apache2:

      sudo apt-get install apache2 php7.0
      

      Jika diminta untuk melanjutkan penginstalan, masukkan Y. Jika perintah penginstalan gagal, gunakan sudo apt-get install apache2 php.

    4. Setelah command prompt Anda kembali, buka halaman VM instances dan salin alamat IP eksternal VM ke URL berikut:

      http://EXTERNAL_IP
      
    5. Untuk terhubung ke server web Apache, buka tab browser baru, lalu masukkan URL dari langkah sebelumnya.

      Jika server web berhasil diinstal, tab browser akan menampilkan halaman default Apache2 Debian.

      Tampilkan halaman default Apache2.

    Mengumpulkan log dan metrik server web Apache

    Pada langkah-langkah ini, Anda mengonfigurasi Agen Operasional untuk mengumpulkan log dan metrik dari server web Apache Anda:
    1. Buka terminal SSH untuk instance VM Anda. Jika Anda tidak membuka terminal, lakukan hal berikut:

      1. Di konsol Google Cloud , buka halaman VM instances:

        Buka instance VM

        Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Compute Engine.

      2. Temukan VM baru Anda, lalu klik SSH.

    2. Salin perintah berikut, lalu tempelkan ke terminal untuk instance Anda, lalu tekan enter:

      # Configures Ops Agent to collect telemetry from the app. You must restart the agent for the configuration to take effect.
      
      set -e
      
      # Check if the file exists
      if [ ! -f /etc/google-cloud-ops-agent/config.yaml ]; then
        # Create the file if it doesn't exist.
        sudo mkdir -p /etc/google-cloud-ops-agent
        sudo touch /etc/google-cloud-ops-agent/config.yaml
      fi
      
      # 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
      

      Perintah sebelumnya membuat konfigurasi untuk mengumpulkan dan menyerap log dan metrik dari server web Apache. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi Agen Operasional untuk server web Apache.

    3. Mulai ulang Agen Operasional:
      1. Untuk memulai ulang agen, jalankan perintah berikut di instance Anda:
        sudo systemctl restart google-cloud-ops-agent
        
      2. Untuk mengonfirmasi bahwa agen telah dimulai ulang, jalankan perintah berikut dan verifikasi bahwa komponen "Metrics Agent" dan "Logging Agent" telah dimulai:
        sudo systemctl status "google-cloud-ops-agent*"
        

    Melihat log server web Apache

    Untuk melihat log Anda di konsol Google Cloud , gunakan Logs Explorer:

    1. Di konsol Google Cloud , buka halaman Logs Explorer:

      Buka Logs Explorer

      Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

      Log terbaru Anda ditampilkan di panel Query results.

    2. Di toolbar, pastikan Tampilkan kueri diaktifkan.

    3. Untuk melihat log server web Apache, buat dan jalankan kueri:

      1. Luaskan daftar project Google Cloud dari pemilih projectGoogle Cloud , lalu salin ID projectGoogle Cloud ke papan klip Anda.

      2. Dalam ekspresi berikut, tempelkan ID yang disalin ke dalam kolom PROJECT_ID, lalu salin ekspresi ke editor kueri:

        resource.type="gce_instance"
        logName=("projects/PROJECT_ID/logs/apache_access" OR "projects/PROJECT_ID/logs/apache_error")
        

        Saat kueri sebelumnya dijalankan, hanya entri log apache_access dan apache_error yang ditampilkan.

      3. Klik Jalankan kueri.

        Hasil kueri ditampilkan di panel Query results.

    Anda telah mengonfigurasi Agen Operasional untuk mengumpulkan log dan metrik dari server web Apache, dan Anda telah melihat log tersebut. Langkah berikutnya adalah membuat kebijakan pemberitahuan agar Anda diberi tahu saat pola tertentu muncul dalam log.

    Membuat saluran notifikasi email

    Sebelum membuat kebijakan pemberitahuan, konfigurasi saluran notifikasi yang ingin digunakan oleh kebijakan pemberitahuan. Cloud Monitoring mendukung berbagai jenis saluran notifikasi, termasuk email, Slack, PagerDuty, dan Pub/Sub. Untuk mengetahui informasi selengkapnya, lihat Membuat dan mengelola saluran notifikasi. Untuk mendapatkan notifikasi melalui email, lakukan tindakan berikut:
    1. Di konsol Google Cloud , buka halaman  Pemberitahuan:

      Buka Alerting

      Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

    2. Di toolbar, klik Edit Notification Channels.
    3. Di halaman Notification channels, scroll ke Email, lalu klik Add new.
    4. Masukkan alamat email Anda, nama tampilan seperti My email, lalu klik Simpan.

    Membuat pemberitahuan berbasis log

    Untuk mendapatkan notifikasi saat pesan tertentu muncul di entri log, buat pemberitahuan berbasis log. Di bagian ini, Anda akan membuat pemberitahuan berbasis log agar Anda mendapatkan notifikasi saat pesan 404 Not Found muncul di entri log Anda.

    1. Di konsol Google Cloud , buka halaman Logs Explorer:

      Buka Logs Explorer

      Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

    2. Di toolbar Hasil kueri, klik Buat pemberitahuan. Panel kebijakan pemberitahuan berbasis log akan terbuka.

    3. Di Alert details, untuk kolom Alert Policy Name, masukkan 404 Not Found.

    4. Di bagian Pilih log untuk disertakan dalam pemberitahuan ini, lakukan hal berikut:

      1. Hapus konten apa pun yang ada di kotak teks filter log.
      2. Salin kueri berikut dan tempelkan ke dalam kotak teks filter log:

        severity>=DEFAULT /help httpRequest.status=404
        

        Filter log sebelumnya menelusuri entri log dengan tingkat severity setidaknya DEFAULT, yang berisi teks /help, dan yang berisi status httpRequest 404.

    5. Di bagian Set notification frequency and autoclose duration, lakukan hal berikut:

      1. Tetapkan kolom Time between notifications ke 5 min.
      2. Tetapkan kolom Durasi penutupan insiden otomatis ke 30 min.
    6. Di bagian Siapa yang akan diberi tahu?, pilih email Anda dari menu Saluran Notifikasi, lalu klik Simpan.

    Menguji kebijakan pemberitahuan

    Untuk menguji kebijakan pemberitahuan, lakukan langkah berikut:

    1. Buka terminal SSH untuk instance VM Anda. Jika Anda tidak membuka terminal, lakukan hal berikut:

      1. Di konsol Google Cloud , buka halaman VM instances:

        Buka instance VM

        Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Compute Engine.

      2. Temukan VM baru Anda, lalu klik SSH.
    2. Untuk menelusuri halaman palsu localhost/help di server, jalankan perintah berikut:

      curl localhost/help
      

      Setelah Anda melihat pesan 404 Not Found di terminal, notifikasi email akan dikirim. Proses ini membutuhkan waktu beberapa menit hingga selesai.

      Notifikasi email yang Anda terima akan terlihat seperti berikut:

      Contoh pemberitahuan berbasis log akan menghasilkan notifikasi email.

    3. Untuk melihat entri log baru, lakukan hal berikut:

      1. Di konsol Google Cloud , buka halaman Logs Explorer:

        Buka Logs Explorer

        Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

      2. Di toolbar, klik Lompat ke sekarang.

    Anda telah mengonfigurasi Agen Operasional untuk mengumpulkan log dan metrik dari server web Apache, tetapi Anda hanya melihat log. Untuk mengetahui informasi tentang cara melihat metrik server web Apache, lihat Mengumpulkan metrik server web Apache dengan Agen Operasional: Membuat traffic.

Pembersihan

Agar akun Google Cloud Anda tidak dikenai biaya untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut.

Jika Anda membuat project baru dan tidak lagi memerlukannya, hapus project tersebut.

Jika Anda menggunakan project yang sudah ada, lakukan hal berikut:

  1. Jika Anda membuat VM, lalu hapus VM tersebut:

    1. In the Google Cloud console, go to the VM instances page.

      Go to VM instances

    2. Select the checkbox for the instance that you want to delete.
    3. To delete the instance, click More actions, click Delete, and then follow the instructions.
  2. Hapus kebijakan pemberitahuan yang Anda buat:

    1. Di konsol Google Cloud , buka halaman  Pemberitahuan:

      Buka Alerting

      Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

    2. Pilih kebijakan pemberitahuan yang Anda buat, lalu klik Hapus.

Langkah berikutnya