Kirim Debug Error Projek Laravel Lewat Bot Telegram

Suko Widodo
3 min readMay 17, 2020

--

Saya akan membagikan cara untuk membuat error report langsung secara realtime dan pesan error akan langsung dikirim ke akun / grup telegram kita sendiri. Tutorial ini berdasarkan pengalaman saya waktu develop aplikasi menggunakan framework laravel.

Cara ini berguna ketika kita ingin membuat aplikasi dengan cepat tapi kita malas atau tidak ada waktu untuk membuat unit test, sehingga ketika digunakan oleh tester/user untuk testing ada bug sehingga kita bisa perbaiki sebelum dilaporkan ke developer.

Awalnya saya akan membuat error reportnya ke email tapi karena ada beberapa keterbatasan jika dikirim lewat email menurut saya maka saya pakai bot telegram sebagai alternative.

Beberapa kekurangan jika dikirim via email dibandingkan via telegram antara lain :

  1. Adanya limitasi jumlah email perhari dari smtp provider.
  2. Jika tidak punya smtp yang terpercaya atau sudah SSL/TLS, maka email akan masuk ke spam. Dan jika masuk spam maka kita tidak tahu kalau ada error di server kita.
  3. Jika pakai bot telegram bisa dapat notif error secara real time ke device kita.
  4. Bisa kirim pesan error ke grup telegram, dengan begitu jika kita punya tim development. Tim yang tahu paling dulu bisa handle error tanpa harus saling tunggu.
  5. Bisa resolve bug kode, tanpa harus menunggu aduan dari tester atau dari user.
  6. Kita bisa memilih untuk silent atau tidak notifikasi dari telegram.
  7. Gratis.

Tutorial Pembuatan Bot Telegram

Caranya pertama kali buat dulu bot telegram dengan masuk ke botfather dengan cara masuk ke pencarian, ketikkan botfather nanti logonya seperti dibawah ini.

Kemudian ketikkan /newbot untuk buat bot telegram baru selanjutnya masukkan nama dan username(harus diakhiri dengan “bot” dibelakangnya) dan selanjutnya kita akan dapat token.

Selanjutnya kita tes dulu access token yang tadi kita dapat tadi https://api.telegram.org/bot<token>/getMe untuk mendapat informasi tentang bot baru yang kita buat.

lalu kirim pesan testing ke bot telegram yang sudah kita buat tadi tujuannya supaya kita dapat id_message untuk akun kita.

Selanjutnya kita ambil id_message dari pesan testing kita yang tadi caranya https://api.telegram.org/bot<token>/getUpdates

Walla kita sudah dapat message_id. Message_id ini ibarat alamat yang digunakan untuk mengirim ke akun kita, selanjutnya masuk projek laravel kita app/Exceptions/Handler.php rubah diblok fungsi report() seperti dibawah ini. Pada cara ini saya pakai library guzzle sebagai http request atau kalian bisa pakai library lain yang serupa.

Selanjutnya Jika ada error maka kita akan dapat pesan error seperti ini.

Untuk kirim ke grup caranya sama kita cuma tinggal buat grup telegram kemudian invite si bot tadi.Message_id yang akan kita dapat jika dari grup biasanya diawali dengan “-”.

Oh iya untuk dapat baca pesan dari grup untuk mendapatkan chat_id harus diset dulu privacy seperti gambar di bawah ini

Terima kasih sudah membaca semoga dapat bermanfaat.

Catatan : projek harus dalam mode debugging.

--

--