Mengatasi Error WhatsApp, Timezone, & Crash Aplikasi: Panduan Lengkap

Kesimpulan Masalah dan Solusinya
Masalah yang Terjadi:
1. Error 414 Request-URI Too Large
- Penyebab: Aplikasi WhatsApp menggunakan metode GET untuk mengirim notifikasi. Ketika pesan WhatsApp sangat panjang (berisi detail banyak ONU yang bermasalah), URL menjadi terlalu panjang dan server WhatsApp menolak dengan error 414.
- Dampak: Notifikasi WhatsApp gagal terkirim, monitoring tetap jalan tapi tidak ada pemberitahuan.
2. Masalah Timezone
- Penyebab: Aplikasi menggunakan
datetime.utcnow()
yang selalu menampilkan waktu UTC, padahal server sudah di-set ke timezone Jakarta (+7). - Dampak: Waktu di dashboard dan log menampilkan waktu yang salah (7 jam lebih cepat).
3. Indentation Error
- Penyebab: Ada kesalahan penulisan kode di file multi_monitor.py pada baris 76-77 dimana statement
if
tidak diikuti dengan blok kode yang benar. - Dampak: Aplikasi crash tidak bisa dibuka sama sekali.
Solusi yang Diterapkan:
1. Perbaikan WhatsApp (Error 414)
- Solusi: Mengubah metode pengiriman dari GET ke POST
- Cara Kerja: Pesan dikirim sebagai data POST body, bukan URL parameter
- Tambahan: Membatasi panjang pesan maksimal 4000 karakter dan memprioritaskan informasi penting
- Hasil: WhatsApp bisa mengirim pesan panjang tanpa error
2. Perbaikan Timezone
- Solusi: Membuat sistem timezone khusus Jakarta
- Cara Kerja:
- Membuat file
timezone_fix.py
dengan fungsijakarta_now_naive()
- Mengganti semua
datetime.utcnow()
denganjakarta_now_naive()
- Set environment timezone ke Asia/Jakarta
- Hasil: Semua waktu di aplikasi sekarang menampilkan waktu Jakarta yang benar
3. Perbaikan Code Error
- Solusi: Memperbaiki indentasi dan struktur kode
- Cara Kerja: Memastikan setiap
if
statement memiliki blok kode yang benar - Hasil: Aplikasi bisa berjalan normal tanpa crash
Dampak Setelah Perbaikan:
Sebelum Perbaikan:
- WhatsApp notifikasi sering gagal jika ada banyak masalah
- Waktu ditampilkan salah (UTC bukan Jakarta)
- Aplikasi crash karena syntax error
Setelah Perbaikan:
- WhatsApp notifikasi selalu berhasil terkirim
- Waktu ditampilkan benar sesuai timezone Jakarta
- Aplikasi berjalan stabil tanpa error
- Pesan WhatsApp lebih ringkas dan informatif
- Semua fungsi aplikasi tetap lengkap dan bekerja normal
Cara Mencegah Masalah Serupa:
- Testing WhatsApp dengan Data Besar: Selalu test notifikasi dengan banyak ONU bermasalah
- Konsistensi Timezone: Selalu gunakan fungsi timezone yang sudah dibuat, jangan campur dengan datetime biasa
- Code Review: Selalu cek indentasi dan syntax sebelum deploy
- Monitoring Log: Pantau log aplikasi secara berkala untuk deteksi error dini
Perbaikan ini memastikan sistem monitoring OLT berjalan stabil, reliable, dan menampilkan informasi dengan waktu yang akurat sesuai lokasi server di Indonesia.