ตั้งค่าการแจ้งเตือนการเฝ้าสังเกต

มีการแจ้งเตือนที่กำหนดค่าไว้ล่วงหน้าหลายรายการในแดชบอร์ดการเฝ้าสังเกต เมื่อการแจ้งเตือนเปลี่ยนสถานะ จะมีการส่งการแจ้งเตือน ในการรับการแจ้งเตือนจาก Grafana คุณต้องกำหนดค่าช่องทางการแจ้งเตือน

Grafana รองรับการแจ้งเตือนหลายประเภท (อีเมล, Slack, Webhooks ฯลฯ) โปรดดูประเภทการแจ้งเตือนเพิ่มเติมที่รองรับได้ที่เอกสารประกอบของ Grafana

เอกสารนี้ครอบคลุมถึงการตั้งค่าช่องทางการแจ้งเตือนทั่วไป เช่น อีเมล, Slack, PagerDuty และ Webhooks

ก่อนการตั้งค่าการแจ้งเตือน โปรดตรวจสอบให้แน่ใจว่าคอนเทนเนอร์การเฝ้าสังเกตของคุณทำงานอยู่

อีเมล

  1. กำหนดการตั้งค่า SMTP ในไฟล์ monitoring-compose.yml
    services:
      ...
      grafana:
      ...
        environment:
          GF_SECURITY_ADMIN_PASSWORD: ${GF_SECURITY_ADMIN_PASSWORD:?Missing env GF_SECURITY_ADMIN_PASSWORD for Grafana admin password}
          WA_PROMETHEUS_ENDPOINT: ${WA_PROMETHEUS_ENDPOINT:-http://prometheus:9090}
          GF_SERVER_ROOT_URL: your-grafana-public-endpoint #(ex. https://foo.bar.com:3000)
          GF_SMTP_ENABLED: 1
          GF_SMTP_HOST: your-smtp-host #(ex. smtp.gmail.com:465)
          GF_SMTP_USER: your-smtp-auth-user #(ex. you@email.com)
          GF_SMTP_PASSWORD: your-smtp-auth-password
          GF_SMTP_SKIP_VERIFY: 1
        depends_on:
          - 'prometheus'
    
  2. รีสตาร์ท Grafana
    docker-compose -f monitoring-compose.yml up -d
  3. เข้าถึงช่องทางการแจ้งเตือนในแผงการแจ้งเตือน
    ช่องทางการแจ้งเตือน
  4. ป้อนอีเมลของคุณและทดสอบการตั้งค่าโดยคลิกที่ปุ่ม "ส่งการทดสอบ"
    ส่งการทดสอบ
    หากกำหนดค่าถูกต้อง คุณควรได้รับอีเมลในลักษณะนี้
    อีเมล Grafana
    หากไม่เป็นเช่นนี้ ให้ตรวจสอบบันทึกคอนเทนเนอร์ Grafana ของคุณเพื่อแก้ไขจุดบกพร่อง
  5. คลิก "บันทึก" เพื่อบันทึกการตั้งค่าของคุณ หลังจากนั้น คุณจะได้รับการแจ้งเตือนจาก Grafana โปรดดูรายละเอียดเพิ่มเติมได้ที่เอกสารประกอบเกี่ยวกับการแจ้งเตือนทางอีเมล

Slack

  1. สร้างแอพ Slack โดยป้อนชื่อ (เช่น การแจ้งเตือน) แล้วเลือกพื้นที่ทำงานเพื่อติดตั้งแอพของคุณ
  2. คลิกปุ่ม "Webhooks ขาเข้า" เพื่อเพิ่มฟีเจอร์นี้ลงในแอพของคุณ
    Webhooks ขาเข้า
  3. คลิกปุ่มสลับ "เปิดใช้งาน Webhooks ขาเข้า" เพื่อเปิด จากนั้นคลิก "เพิ่ม Webhooks ใหม่ไปยังพื้นที่ทำงาน"
    เพิ่ม Webhooks ใหม่ให้กับพื้นที่ทำงาน
  4. เลือกช่องทางที่แอพจะใช้เพื่อโพสต์ แล้วคลิกปุ่ม "อนุญาต" เพื่อให้อนุญาตแอพของคุณ
  5. คัดลอก URL ของ Webhook (เช่น https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX) เพื่อตั้งค่าการแจ้งเตือน Slack ใน Grafana ทดสอบการตั้งค่าโดยคลิกที่ปุ่ม "ส่งการทดสอบ" หากกำหนดค่าถูกต้อง คุณควรได้รับข้อความในช่องทางที่กำหนดค่าไว้ในลักษณะนี้
    การแจ้งเตือน Slack
    หากไม่เป็นเช่นนี้ ให้ตรวจสอบบันทึกคอนเทนเนอร์ Grafana ของคุณเพื่อแก้ไขจุดบกพร่อง
  6. คลิก "บันทึก" เพื่อบันทึกการตั้งค่าของคุณ หลังจากนั้น คุณจะได้รับการแจ้งเตือนจาก Grafana โปรดดูรายละเอียดเพิ่มเติมได้ที่เอกสารประกอบเกี่ยวกับการแจ้งเตือน Slack

PagerDuty

  1. เพิ่มบริการใหม่ (เช่น https://XXXX.pagerduty.com/services/new) แล้วเลือก "ใช้ API ของเราโดยตรง" เป็นประเภทของการผสานการทำงาน
    เพิ่มการบริการ
  2. คัดลอกคีย์การผสานการทำงาน (เช่น de7439f367354513b9e1ba4042f0e3b8) เพื่อตั้งค่าการแจ้งเตือน PagerDuty ใน Grafana ทดสอบการตั้งค่าโดยคลิกที่ปุ่ม "ส่งการทดสอบ" หากกำหนดค่าถูกต้อง คุณควรได้รับการแจ้งเตือนบนเพจการแจ้งเตือน PagerDuty ในลักษณะนี้
    การแจ้งเตือน PagerDuty
    หากไม่เป็นเช่นนี้ โปรดตรวจสอบบันทึกคอนเทนเนอร์ Grafana ของคุณเพื่อแก้ไขจุดบกพร่อง
  3. คลิก "บันทึก" เพื่อบันทึกการตั้งค่าของคุณ หลังจากนั้น คุณจะได้รับการแจ้งเตือนจาก Grafana โปรดดูรายละเอียดเพิ่มเติมได้ที่เอกสารประกอบเกี่ยวกับการแจ้งเตือน PagerDuty ของ Grafana

Webhooks

นอกจากนี้ คุณยังสามารถตั้งค่าเซิร์ฟเวอร์ Webhooks ให้รับการแจ้งเตือน

  1. ตั้งค่าการแจ้งเตือน Webhooks ใน Grafana ทดสอบการตั้งค่าโดยคลิกที่ปุ่ม "ส่งการทดสอบ" หากกำหนดค่าถูกต้อง คุณควรได้รับเพย์โหลด JSON ในลักษณะนี้
    {
        "evalMatches": [
            {
                "metric": "High value",
                "tags": null,
                "value": 100
            },
            {
                "metric": "Higher Value",
                "tags": null,
                "value": 200
            }
        ],
        "message": "Someone is testing the alert notification within grafana.",
        "ruleId": 0,
        "ruleName": "Test notification",
        "ruleUrl": "http://localhost:3000/",
        "state": "alerting",
        "title": "[Alerting] Test notification"
    }
    
    หากไม่เป็นเช่นนี้ ให้ตรวจสอบบันทึกคอนเทนเนอร์ Grafana ของคุณเพื่อแก้ไขจุดบกพร่อง
  2. คลิก "บันทึก" เพื่อบันทึกการตั้งค่าของคุณ หลังจากนั้น คุณจะได้รับการแจ้งเตือนจาก Grafana โปรดดูรายละเอียดเพิ่มเติมได้ที่เอกสารประกอบเกี่ยวกับการแจ้งเตือน Webhooks