Selasa, 28 Mei 2024

Install Log Di slack monitor error

 1. register dan buat channels

https://app.slack.com/

2. buat api di https://api.slack.com/ -> Incomming Webhooks


referensi : 

https://dev-to.translate.goog/hummingbed/step-by-step-guide-on-how-to-send-error-messages-from-laravel-app-to-slack-using-webhooks-894?_x_tr_sl=en&_x_tr_tl=id&_x_tr_hl=id&_x_tr_pto=tc



Panduan Langkah demi Langkah tentang Cara Mengirim Pesan Kesalahan dari Aplikasi Laravel ke Slack Menggunakan Webhook

Pesan kesalahan berperan penting dalam pengembangan web dengan mengidentifikasi dan mengatasi masalah dalam aplikasi. Pengembang mengandalkan pesan-pesan ini untuk mendapatkan informasi berharga yang memfasilitasi proses debug dan pemecahan masalah. Biasanya berisi detail tentang sifat dan lokasi kesalahan, pesan-pesan ini membantu pengembang dengan cepat menemukan dan menyelesaikan masalah. Signifikansinya mencakup seluruh fase pengembangan, pengujian, dan produksi, berkontribusi pada siklus pengembangan yang lebih lancar dan efisien.

Pentingnya Pesan Kesalahan HTTP dalam Pengembangan Web:

Identifikasi Masalah: Pesan kesalahan memainkan peran penting dalam menunjukkan masalah dalam kode, termasuk kesalahan sintaksis, masalah runtime, dan kesalahan logis.

Dukungan Debugging: Informasi yang diberikan dalam pesan kesalahan membantu pengembang dalam melakukan debug, membantu mereka melacak dan menyelesaikan akar penyebab masalah.

Pertimbangan Keamanan: Pengelolaan pesan kesalahan yang hati-hati sangat penting untuk menghindari pengungkapan informasi sensitif, sehingga membuat pesan umum lebih disukai dalam lingkungan produksi.

Pencatatan dan Pemantauan: Pesan kesalahan dicatat untuk analisis lebih lanjut, memungkinkan alat pemantauan melacak kesehatan dan kinerja aplikasi.

Dengan mengatasi pesan kesalahan secara komprehensif, pengembang meningkatkan keandalan, keamanan, dan kualitas aplikasi web secara keseluruhan.

kait web

Webhook adalah pesan otomatis yang dikirim dari satu aplikasi ke aplikasi lainnya ketika peristiwa tertentu terjadi. Mereka memiliki pesan, atau muatan, dan dikirim ke URL unik. Hal ini memungkinkan aplikasi untuk saling mengirim data dan tidak membuang waktu untuk memeriksa dan menunggu. Demikian pula, Slack menggunakan panggilan balik HTTP yang ditentukan pengguna, yang dikenal sebagai Webhooks, untuk memberi tahu aplikasi Slack Anda tentang kejadian dari layanan eksternal seperti Laravel secara real-time. Intinya, URL webhook bertindak sebagai saluran, mengirimkan pesan dari aplikasi Laravel Anda ke saluran Slack Anda dengan lancar.

diagram webhook kendur

Apa tujuan meneruskan pesan kesalahan dari aplikasi Laravel ke ruang kerja Slack Anda?

Bayangkan menjadi anggota tim yang sedang membangun aplikasi Laravel berukuran besar. Setelah menyelesaikan proyek, aplikasi Laravel diterapkan ke lingkungan produksi; sengaja menyetel konfigurasi APP_DEBUG di file lingkungan Anda ke false . Pilihan yang disengaja ini berarti bahwa hanya pesan kesalahan server HTTP 500 standar yang ditampilkan, bukan pesan kesalahan terperinci ketika masalah muncul. Dalam skenario ini, jika pengguna menghadapi masalah saat menggunakan aplikasi Laravel di lingkungan produksi, tim pengembangan tidak menyadari kesalahan ini dan ketika pengguna melaporkan masalah tersebut, tim pengembangan mungkin kesulitan untuk menentukan penyebab sebenarnya dari masalah tersebut. mereka kekurangan informasi tentang kesalahan spesifik. Untuk mengatasi tantangan ini, webhook Slack dapat digunakan untuk segera memberi tahu tim pengembangan jika ada kesalahan yang terjadi, memberikan wawasan waktu nyata mengenai pesan kesalahan yang sebenarnya dan memfasilitasi penyelesaian yang cepat.

Prasyarat

  • Dasar-dasar Laravel dan PHP
  • Komposer dan PHP diinstal
  • Ruang kerja kendur

Sekarang setelah Anda memiliki pemahaman mendasar tentang webhook dan memahami manfaat mengintegrasikan webhook Slack dalam aplikasi Laravel, langkah berikutnya adalah mempelajari lebih dalam dengan mengintegrasikan webhook Slack ke dalam aplikasi. Untuk memulai, kita perlu:

  1. Buat aplikasi Laravel baru.

  2. Siapkan akun Slack dan konfigurasikan webhook Slack.

  3. Integrasikan webhook Slack ke dalam aplikasi Laravel Anda.

Langkah 1: Buat aplikasi Laravel baru.

Buka terminal atau command prompt Anda dan tempelkan perintah berikut untuk membuat aplikasi Laravel baru bernama slack-webhook.

composer create-project laravel/laravel slack-webhook

Langkah 2: Siapkan akun Slack dan konfigurasikan webhook Slack.

Buka dokumentasi Slack untuk membuat ruang kerja baru jika Anda belum memilikinya. Setelah menyiapkan ruang kerja slack Anda, klik tombol Tambahkan saluran di navigasi sebelah kiri untuk membuat saluran baru yang akan menerima pesan kesalahan. Untuk tutorial ini, berikan nama laravel-error-message .

Saluran kendur

Setelah saluran Anda berhasil dibuat, mari beralih ke mengonfigurasi webhook Slack. Klik menu tarik-turun di samping nama ruang kerja Slack Anda di bagian atas navigasi sisi kiri layar Anda. Selanjutnya, pilih Alat & pengaturan dan lanjutkan dengan mengklik tombol Kelola aplikasi . Ini akan mengarahkan Anda ke halaman baru.

Konfigurasi webhook kendur

Lanjutkan dengan mengklik Build yang terletak di sisi kanan bilah navigasi atas.

Konfigurasi webhook kendur

Setelah itu, klik tombol Buat Aplikasi . Tindakan ini akan memunculkan kartu pop-up modal. Pada kartu pop-up modal, pilih opsi Dari Awal .

Konfigurasi webhook kendur

Lanjutkan dengan memasukkan nama di kolom input Nama Aplikasi , lalu pilih nama ruang kerja Slack Anda dari menu tarik-turun di bawah.

Konfigurasi webhook kendur

Selanjutnya, Aktifkan webhook Slack Anda dengan:

  1. Menavigasi ke Webhook Masuk di navigasi sisi kiri
  2. Alihkan tombol Aktifkan Webhook Masuk untuk mengaktifkannya.

Konfigurasi webhook kendur

Setelah webhook Anda diaktifkan, gulir ke bawah halaman dan pilih Tambahkan Webhook Baru ke Ruang Kerja . Ini akan mengarahkan Anda ke halaman baru tempat Anda dapat memilih saluran.

Konfigurasi webhook kendur

Terakhir, pilih saluran pesan kesalahan laravel yang dibuat sebelumnya. Klik tombol Izinkan untuk memberikan izin pengiriman pesan ke saluran Slack.

Konfigurasi webhook kendur

Kami telah berhasil membuat URL webhook Slack kami. Gulir ke bagian bawah halaman web untuk menemukan webhook Slack yang kami buat. Jika Anda telah menginstal cURL di mesin lokal Anda, Anda dapat menguji webhook dengan menyalin permintaan Sample curl untuk diposkan ke URL saluran dan menjalankannya di terminal Anda. Setelah itu, periksa saluran Slack Anda; Anda akan menerima pesan "halo dunia". Harap dicatat bahwa kami tidak akan menggunakan permintaan Sample curl untuk memposting ke URL saluran di aplikasi Laravel kami.

Konfigurasi webhook kendur

Langkah 3: Integrasikan webhook Slack ke dalam aplikasi Laravel Anda.

Pada artikel ini, kami akan menggunakan webhook masuk Slack untuk mengirim pesan dari aplikasi Laravel kami dengan mengirimkan payload JSON ke saluran Slack kami. Kami akan menerapkan skenario pesan kesalahan yang disebutkan sebelumnya dalam aplikasi kami. Berikut adalah diagram alir proses yang menggambarkan bagaimana aplikasi akan berfungsi.

Diagram alur proses webhook kendur

Mulailah dengan meluncurkan aplikasi Laravel yang dibuat sebelumnya menggunakan editor kode pilihan Anda. Kemudian, lanjutkan ke direktori config dan buka file logging.php . Di dalam file logging.php, temukan driver slack, dan salin LOG_SLACK_WEBHOOK_URL .

'slack' => [
  'driver' => 'slack',
  'url' => env('LOG_SLACK_WEBHOOK_URL'),
  'username' => 'Laravel Log',
  'emoji' => ':boom:',
  'level' => env('LOG_LEVEL', 'critical'),
  'replace_placeholders' => true,
],

Konfigurasi di atas membantu menyesuaikan cara Laravel mencatat pesan ke saluran Slack, menentukan detail seperti ke mana log akan dikirim, cara memformatnya, dan dalam kondisi apa log tersebut harus dicatat.

Sekarang, cari file .env dan ikuti langkah-langkah berikut:

  • rekatkan LOG_SLACK_WEBHOOK_URL

  • Salin URL webhook yang dihasilkan dalam konfigurasi Slack dan tetapkan ke 'LOG_SLACK_WEBHOOK_URL.

  • gulir ke bagian atas file .env dan konfigurasikan APP_DEBUG=false.

URL WEBHOOK KENDUR

Buka file web.php di direktori rute dan tingkatkan rute default dengan memasukkan pengecualian.

Route::get('/', function () {
  throw new Exception("Error Processing Request", 1);
  return view('welcome');
});

Arahkan ke file Handler.php di direktori app/Exceptions dan revisi metode register dengan kode yang disediakan. Kode berikut mengambil rincian pesan kesalahan yang akan dikirim ke Slack.

<?php

use Illuminate\Support\Facades\Log;

public function register(): void
  {
      $this->reportable(function (Throwable $e) {
          Log::channel('slack')->error($e->getMessage(),[
              'file' => $e->getFile(),
              'Line' => $e->getLine(),
              'code' => $e->getCode(),
          ]);
      });
  }

Mulai aplikasi dengan menjalankan perintah di bawah ini.

php artisan serve

Buka halaman beranda Anda dan segarkan; Anda akan mengalami kesalahan 500 server.

halaman kesalahan http 500

Terakhir, periksa saluran Slack Anda untuk melihat pesan kesalahan yang dikirim dari aplikasi Laravel Anda.

Keluaran kendur

Kesimpulan

Selamat Anda telah berhasil menyelesaikan panduan langkah demi langkah ini. Pada titik ini, Anda telah memperoleh pengetahuan penting tentang pentingnya mengimplementasikan proses ini dalam aplikasi Laravel Anda. Jangan ragu untuk meninggalkan komentar di bagian bawah, dan juga bagikan pemikiran Anda tentang apakah saya harus membuat tutorial serupa atau menyempurnakan artikel ini.

Tidak ada komentar:

Posting Komentar