Mattermost 웹훅 URL 설정 확인 로직 추가
All checks were successful
Run Report Table / run-script (push) Successful in 7s
All checks were successful
Run Report Table / run-script (push) Successful in 7s
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
name: Run Report Table
|
name: Run Report Table
|
||||||
on:
|
on:
|
||||||
schedule:
|
schedule:
|
||||||
- cron: "11 4 * * *"
|
- cron: "18 4 * * *"
|
||||||
jobs:
|
jobs:
|
||||||
run-script:
|
run-script:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|||||||
@@ -1,27 +1,31 @@
|
|||||||
import logging
|
import logging
|
||||||
from typing import List
|
from typing import List
|
||||||
|
|
||||||
import requests
|
import requests
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
def post_mattermost(webhook: str, lines: List[str]) -> None:
|
def post_mattermost(webhook: str, lines: List[str]) -> None:
|
||||||
"""
|
"""
|
||||||
Mattermost Webhook으로 메시지 전송.
|
Mattermost Webhook으로 메시지 전송.
|
||||||
"""
|
"""
|
||||||
payload = {
|
if not webhook:
|
||||||
"username": "Grafana Reporter",
|
logger.error("[MATTERMOST ERROR] Webhook URL is not configured.")
|
||||||
"icon_url": "https://grafana.com/static/assets/img/fav32.png",
|
return
|
||||||
"text": "\n".join(lines),
|
|
||||||
}
|
payload = {
|
||||||
logger.info(f"[MATTERMOST POST] url={webhook}")
|
"username": "Grafana Reporter",
|
||||||
logger.info(f"[MATTERMOST PAYLOAD] {payload}")
|
"icon_url": "https://grafana.com/static/assets/img/fav32.png",
|
||||||
|
"text": "\n".join(lines),
|
||||||
try:
|
}
|
||||||
r = requests.post(webhook, json=payload, timeout=30)
|
logger.info(f"[MATTERMOST POST] url={webhook}")
|
||||||
r.raise_for_status()
|
logger.info(f"[MATTERMOST PAYLOAD] {payload}")
|
||||||
logger.info(f"[MATTERMOST STATUS] {r.status_code}")
|
|
||||||
except Exception as e:
|
try:
|
||||||
logger.exception(f"[MATTERMOST ERROR] {e}")
|
r = requests.post(webhook, json=payload, timeout=30)
|
||||||
raise
|
r.raise_for_status()
|
||||||
|
logger.info(f"[MATTERMOST STATUS] {r.status_code}")
|
||||||
|
except Exception as e:
|
||||||
|
logger.exception(f"[MATTERMOST ERROR] {e}")
|
||||||
|
raise
|
||||||
|
|||||||
Reference in New Issue
Block a user