Mengelola Pemberitahuan Pemantauan

Dokumen ini memberikan deskripsi dan item tindakan untuk pemberitahuan yang ditetapkan di dasbor pemantauan. Jika tidak dapat memecahkan masalah, Anda dapat mengirimkan tiket Dukungan Langsung dengan melampirkan cuplikan layar dasbor dan catatan.

Pemberitahuan Dasbor Klien Bisnis

Pemberitahuan Kegagalan API Kritis

Deskripsi

Tingkat keberhasilan API contacts atau API messages rendah

Item Tindakan

  1. Temukan kode kesalahan API di panel Requests/sec untuk API contacts atau messages.
  2. Lihat dokumentasi Kode Kesalahan.
  3. Periksa panel CoreApp Request/sec dan DB Queries/sec untuk melihat apakah kegagalan berkorelasi dengan kegagalan CoreApp atau kegagalan database.
  4. Periksa dasbor CoreApp Overview (isi variabel Node dengan CoreApp yang bermasalah) dan dasbor MySQL Overview untuk informasi selengkapnya.

Pemberitahuan Tidak Ada Statistik

Deskripsi

Tidak ditemukan data untuk pemantauan

Item Tindakan

  1. Akses endpoint target Prometheus (yaitu http://your-monitoring-hostname:9090/targets) untuk memverifikasi bahwa status endpoint statistik web dan statistik aplikasi adalah UP.
  2. Jika Prometheus gagal terhubung ke WebApp, jalankan WADebug untuk memecahkan kesalahan.
  3. Jika kontainer WebApp dan CoreApp berjalan, periksa apakah WA_WEB_ENDPOINT, WA_WEB_USERNAME, dan WA_WEB_PASSWORD di file .env valid.

Pemberitahuan Dasbor Ringkasan CoreApp

Pemberitahuan Kegagalan Panggilan Balik

Deskripsi

Tingkat keberhasilan mengirimkan panggilan balik ke URL Webhooks yang ditetapkan dalam pengaturan aplikasi rendah

Item Tindakan

  1. Temukan kode kesalahan tanggapan panggilan balik dari panel Callback Request/sec.
  2. Grep catatan CoreApp untuk network error untuk melihat pesan kesalahan yang sebenarnya.
  3. Berdasarkan kode dan pesan kesalahan:
    • Verifikasi apakah Webhook Anda dapat dijangkau oleh CoreApp.
    • Verifikasi apakah Webhook selalu memberikan tanggapan HTTPS 200 OK setelah memproses notifikasi.
    • Verifikasi apakah Webhook Anda memerlukan waktu lama untuk menanggapi.

Pemberitahuan Penundaan Pesan Keluar Tinggi

Deskripsi

Antrean pesan keluar hampir penuh; Permintaan API akan gagal dengan System overloaded error (1016) tidak lama lagi

Item Tindakan

  1. Periksa baris panel Outgoing Messages untuk peningkatan traffic yang tidak biasa. Jika terjadi peningkatan traffic yang tidak biasa, cobalah untuk mengurangi muatan traffic hingga pemberitahuan dihapus.
  2. Verifikasi apakah database Anda gagal dan dialihkan ke wilayah lain baru-baru ini. API WhatsApp Business mungkin belum mendapatkan muatan terbaru karena latensi lintas wilayah.
  3. Jika pesan keluar mengantre makin lambat, Anda sebaiknya melaporkan bug itu kepada kami.
  4. Jika satu Klien API WhatsApp Business tidak mampu memenuhi persyaratan muatan Anda, siapkan Multikoneksi untuk mendukung muatan yang jauh lebih besar.

Catatan: Ini kasus yang jarang terjadi, dasbor mungkin menunjukkan lebih dari 100% penggunaan antrean pesan keluar karena penerapan antrean yang mendasar. Item tindakan tetap sama.

Pemberitahuan Antrean Panggilan Balik Tinggi

Deskripsi

Antrean panggilan balik hampir penuh; Permintaan API akan gagal dengan System overloaded error (1016) tidak lama lagi

Item Tindakan

  1. Periksa panel Callback Error Rate untuk memverifikasi bahwa panggilan balik berhasil diproses.
  2. Kurangi waktu pemrosesan panggilan balik untuk Webhooks Anda.
  3. Konfigurasikan max_concurrent_requests di pengaturan aplikasi untuk meningkatkan jumlah permintaan panggilan balik dalam penerbangan (default-nya adalah 6).

Pemberitahuan Tingkat Kesalahan Transaksi Database

Deskripsi

Tingkat kesalahan operasi transaksi database (transaksi, komitmen, kembali ke versi sebelumnya) tinggi.

Item Tindakan

  1. Temukan database dan operasi yang bermasalah dari panel DB Transaction/sec.
  2. Grep catatan CoreApp untuk QSqlError untuk melihat kode pesan kesalahan SQL yang sebenarnya.
  3. Berdasarkan kode dan pesan kesalahan:
    1. Periksa apakah database Anda berjalan sehat dengan memeriksa Dasbor MySQL Overview atau dasbor database Anda sendiri.
    2. Jika kesalahan menunjukkan masalah skema atau kueri SQL yang buruk, kirimkan Tiket Dukungan Langsung untuk investigasi.

Pemberitahuan Tingkat Kesalahan Kueri Baca Database

Deskripsi

Tingkat kesalahan operasi transaksi database (pilih, persiapkan) tinggi.

Item Tindakan

  1. Temukan database dan operasi yang bermasalah dari panel DB Read Queries/sec.
  2. Grep catatan CoreApp untuk QSqlError untuk melihat kode pesan kesalahan SQL yang sebenarnya.
  3. Berdasarkan kode dan pesan kesalahan:
    1. Periksa apakah database Anda berjalan sehat dengan memeriksa Dasbor MySQL Overview atau dasbor database Anda sendiri.
    2. Jika kesalahan menunjukkan masalah skema atau kueri SQL yang buruk, kirimkan Tiket Dukungan Langsung untuk investigasi.

Pemberitahuan Tingkat Kesalahan Kueri Tulis Database

Deskripsi

Tingkat kesalahan operasi transaksi database (sisipkan, perbarui, hapus, dsb.) tinggi.

Item Tindakan

  1. Temukan database dan operasi yang bermasalah dari panel DB Write Queries/sec.
  2. Grep catatan CoreApp untuk QSqlError untuk melihat kode pesan kesalahan SQL yang sebenarnya.
  3. Berdasarkan kode dan pesan kesalahan:
    1. Periksa apakah database Anda berjalan sehat dengan memeriksa Dasbor MySQL Overview atau dasbor database Anda sendiri.
    2. Jika kesalahan menunjukkan masalah skema atau kueri SQL yang buruk, kirimkan Tiket Dukungan Langsung untuk investigasi.

Pemberitahuan Rata-rata Latensi Transaksi (ms)

Deskripsi

Rata-rata latensi operasi transaksi database (transaksi, komitmen, kembali ke versi sebelumnya) tinggi.

Item Tindakan

Kami merekomendasikan latensi database agar kurang dari 15ms untuk mencapai throughput berkirim pesan yang tinggi.

  1. Temukan database yang pelan dari panel Average DB Transaction Latency (ms).
  2. Periksa apakah database Anda berjalan sehat dengan memeriksa Dasbor MySQL Overview atau dasbor database Anda sendiri.
  3. Gunakan mysqlslap atau pgbench untuk mengukur latensi XACT dengan klien bersamaan.
  4. Ikuti Rekomendasi Throughput Tinggi untuk menyiapkan database Anda dengan konfigurasi yang serupa.

Masalah umum

  • Instance database kehabisan CPU/Memori/Diska/IOPS/Koneksi.
  • Instance database berjalan di atas diska magnetik, dan bukan SSD.
  • Instance database berada di wilayah yang berbeda dari CoreApp Anda dan memiliki waktu perjalanan bolak-balik jaringan yang tinggi.

Pemberitahuan Rata-rata Latensi Kueri Baca Database (ms)

Deskripsi

Rata-rata latensi operasi baca database (pilih, persiapkan) tinggi.

Item Tindakan

Kami merekomendasikan latensi database agar kurang dari 15ms untuk mencapai throughput berkirim pesan yang tinggi.

  1. Temukan database yang pelan dari panel Average DB Read Latency (ms).
  2. Periksa apakah database Anda berjalan sehat dengan memeriksa Dasbor MySQL Overview atau dasbor database Anda sendiri.
  3. Gunakan mysqlslap atau pgbench untuk mengukur latensi baca dengan klien bersamaan.
  4. Ikuti Rekomendasi Throughput Tinggi untuk menyiapkan database Anda dengan konfigurasi yang serupa.

Masalah umum

  • Instance database kehabisan CPU/Memori/Koneksi.
  • Instance database berada di wilayah yang berbeda dari CoreApp Anda dan memiliki waktu perjalanan bolak-balik jaringan yang tinggi.

Pemberitahuan Rata-rata Latensi Kueri Tulis Database (ms)

Deskripsi

Rata-rata latensi operasi tulis database (sisipkan, perbarui, hapus, dsb.) tinggi.

Item Tindakan

Kami merekomendasikan latensi database agar kurang dari 15ms untuk mencapai throughput berkirim pesan yang tinggi.

  1. Temukan database yang pelan dari panel Average DB Write Latency (ms).
  2. Periksa apakah database Anda berjalan sehat dengan memeriksa Dasbor MySQL Overview atau dasbor database Anda sendiri.
  3. Gunakan mysqlslap atau pgbench untuk mengukur latensi tulis dengan klien bersamaan.
  4. Ikuti Rekomendasi Throughput Tinggi untuk menyiapkan database Anda dengan konfigurasi yang serupa.

Masalah umum

  • Instance database kehabisan CPU/Memori/Diska/IOPS/Koneksi.
  • Instance database berjalan di atas diska magnetik, dan bukan SSD.
  • Instance database berada di wilayah yang berbeda dari CoreApp Anda dan memiliki waktu perjalanan bolak-balik jaringan yang tinggi.

Pemberitahuan Latensi Permintaan Panggilan Balik Rata-rata (ms)

Deskripsi

Latensi rata-rata permintaan panggilan balik ke URL Webhooks yang ditentukan dalam pengaturan aplikasi itu tinggi.

Item Tindakan

Kami merekomendasikan latensi panggilan balik agar kurang dari 80ms untuk mencapai throughput tinggi.

  1. Menjalankan benchmark terhadap server Webhooks Anda dan lakukan pemrofilan untuk mengidentifikasi hambatan.
  2. Lakukan operasi tidak kritis asinkron dan berikan tanggapan HTTPS 200 OK segera.
  3. Tingkatkan jumlah server Webhooks di belakang penyeimbang muatan Anda jika server kehabisan sumber daya sistem.

Pemberitahuan Permintaan Koneksi Server

Deskripsi

CoreApp selalu kehilangan koneksi ke server WhatsApp. Koneksi yang tidak stabil akan memengaruhi kinerja berkirim pesan dari CoreApp dan menyebabkan kegagalan API.

Item Tindakan

  1. Grep catatan CoreApp untuk “Stream error” untuk melihat koneksi sebenarnya kehilangan error dan pesan dan frekuensi.
  2. Jika koneksi hilang secara berkala selama berjam-jam, memulai ulang CoreApp dapat mengurangi masalah.
  3. Pertahankan catatan dan kirimkan Tiket Dukungan Langsung untuk investigasi selengkapnya.

Pemberitahuan Pesan Didekripsi/detik

Deskripsi

CoreApp tidak dapat mendekripsi pesan masuk dari server WhatsApp dengan cukup cepat, yang akan memicu kehilangan koneksi.

Item Tindakan

  1. Verifikasi bahwa database berjalan dengan baik dengan memeriksa panel DB Read/Write/Transaction Latency. Kami merekomendasikan latensi database agar kurang dari 15ms untuk mencapai throughput tinggi. Ikuti Item Tindakan Pemberitahuan Rata-rata Latensi Kueri DB Tulis (ms) di atas untuk menyelesaikan masalah database.
  2. Periksa apakah instance CoreApp Anda kehabisan CPU. Jika ya, tingkatkan ke instance yang lebih besar.
  3. Pertahankan catatan dan kirimkan Tiket Dukungan Langsung untuk membatasi laju pesan masuk dari sisi server WhatsApp.

Pemberitahuan Dasbor Ringkasan Mesin

Pemberitahuan Penggunaan CPU Tinggi

Deskripsi

Penggunaan CPU mesin terlalu tinggi

Item Tindakan

  1. Periksa panel CPU Detail Util % untuk mendapatkan distribusi penggunaan.
  2. Jalankan atop atau top pada mesin untuk menemukan proses yang paling banyak mengonsumsi CPU. Mungkin Anda juga perlu memeriksa dasbor Container Overview untuk metrik CPU level kontainer dengan mengisi variabel Machine dengan mesin yang bermasalah.
  3. Jika WebApp, CoreApp, atau database mengonsumsi sebagian besar CPU, cari mesin yang lebih bertenaga untuk meng-hosting ketiganya. Untuk mode Ketersediaan Tinggi/Multikoneksi, jika kontainer WebApp dan CoreApp berjalan di mesin yang sama, cobalah untuk memindahkannya ke mesin yang terpisah.

Pemberitahuan Penggunaan Diska Tinggi

Deskripsi

Penggunaan Disk perangkat di mesin terlalu tinggi

Item Tindakan

  1. Jalankan perintah du dan df di perangkat untuk menganalisis penggunaan disk. Mungkin Anda juga perlu memeriksa dasbor Container Overview untuk metrik disk level kontainer dengan mengisi variabel Machine dengan mesin yang bermasalah.
  2. Bersihkan data pengonsumsi ruang yang tidak diperlukan di perangkat; jika terdapat file media atau catatan, siapkan tugas cron untuk menghapus data lama secara berkala.

Pemberitahuan Penggunaan Memori Tinggi

Deskripsi

Penggunaan Memori mesin terlalu tinggi

Item Tindakan

  1. Periksa panel Memory Detail untuk mendapatkan distribusi penggunaan.
  2. Jalankan atop atau top pada mesin untuk menemukan proses yang paling banyak mengonsumsi memori. Mungkin Anda juga perlu memeriksa dasbor Container Overview untuk metrik memori level kontainer dengan mengisi variabel Machine dengan mesin yang bermasalah.
  3. Jika WebApp, CoreApp, atau database mengonsumsi sebagian besar memori, cari mesin yang lebih bertenaga untuk meng-hosting ketiganya.
  4. Jika penggunaan memori CoreApp makin meningkat, mungkin itu disebabkan oleh kebocoran memori; Anda sebaiknya melaporkan bug itu kepada kami. Mulai ulang CoreApp untuk memitigasi masalah memori.

Pemberitahuan Terlalu Banyak File Dibuka

Deskripsi

Mesin akan segera kehabisan deskriptor file

Item Tindakan

  1. Periksa panel File Deskriptor untuk batas file terbuka.
  2. Konfigurasi nilai lebih tinggi (misalnya: fs.file-max = 600000) di file /etc/sysctl.conf untuk meningkatkan batas file terbuka.
  3. Jalankan sysctl -p untuk menerapkan perubahan.

Pemberitahuan Dasbor Ringkasan MySQL

Pemberitahuan Terlalu Banyak Koneksi DB

Deskripsi

Penggunaan pool koneksi DB tinggi; permintaan DB baru mungkin gagal dengan kesalahan Too many connections tidak lama lagi

Item Tindakan

  1. Periksa panel Connections untuk batas koneksi saat ini.
  2. Tingkatkan variabel sistem MySQL max_connections (secara default, 151) dalam my.cnf dan mulai ulang server MySQL. Lihat dokumentasi Variabel Sistem Server MySQL untuk informasi selengkapnya.
  3. Untuk AWS RDS, Anda perlu bermigrasi ke instance RDS yang lebih besar. Lihat bagian RDS Instance Sizing dari Detail Penerapan AWS untuk panduan.

Pemberitahuan Dasbor Ringkasan WebApp

Pemberitahuan Penundaan Koneksi Server HTTP Tinggi

Deskripsi

Antrean koneksi server HTTP internal WebApp hampir penuh

Item Tindakan

  1. Periksa dasbor Business Client untuk traffic API yang tidak biasa atau latensi permintaan API yang tinggi.
  2. Periksa catatan WebApp untuk informasi selengkapnya.
  3. Periksa apakah penggunaan CPU WebApp tinggi, dan jika demikian, temukan mesin yang lebih bertenaga untuk WebApp.