diff --git a/.gitea/workflows/main.yml b/.gitea/workflows/main.yml index 299da48..c59ce09 100644 --- a/.gitea/workflows/main.yml +++ b/.gitea/workflows/main.yml @@ -2,7 +2,7 @@ name: Run Report Table on: schedule: - - cron: "11 4 * * *" + - cron: "18 4 * * *" jobs: run-script: runs-on: ubuntu-latest diff --git a/src/services/reporter.py b/src/services/reporter.py index 9f58f18..2f985a7 100644 --- a/src/services/reporter.py +++ b/src/services/reporter.py @@ -1,27 +1,31 @@ -import logging -from typing import List - -import requests - -logger = logging.getLogger(__name__) - - -def post_mattermost(webhook: str, lines: List[str]) -> None: - """ - Mattermost Webhook으로 메시지 전송. - """ - payload = { - "username": "Grafana Reporter", - "icon_url": "https://grafana.com/static/assets/img/fav32.png", - "text": "\n".join(lines), - } - logger.info(f"[MATTERMOST POST] url={webhook}") - logger.info(f"[MATTERMOST PAYLOAD] {payload}") - - try: - r = requests.post(webhook, json=payload, timeout=30) - r.raise_for_status() - logger.info(f"[MATTERMOST STATUS] {r.status_code}") - except Exception as e: - logger.exception(f"[MATTERMOST ERROR] {e}") - raise +import logging +from typing import List + +import requests + +logger = logging.getLogger(__name__) + + +def post_mattermost(webhook: str, lines: List[str]) -> None: + """ + Mattermost Webhook으로 메시지 전송. + """ + if not webhook: + logger.error("[MATTERMOST ERROR] Webhook URL is not configured.") + return + + payload = { + "username": "Grafana Reporter", + "icon_url": "https://grafana.com/static/assets/img/fav32.png", + "text": "\n".join(lines), + } + logger.info(f"[MATTERMOST POST] url={webhook}") + logger.info(f"[MATTERMOST PAYLOAD] {payload}") + + try: + r = requests.post(webhook, json=payload, timeout=30) + r.raise_for_status() + logger.info(f"[MATTERMOST STATUS] {r.status_code}") + except Exception as e: + logger.exception(f"[MATTERMOST ERROR] {e}") + raise