feat: Telegram notifications from SAC on ingest
Send Telegram alerts for high/critical events and new Problems. Configurable via TELEGRAM_* env vars; ingest never fails on send errors.
This commit is contained in:
@@ -15,6 +15,7 @@ from app.schemas.list_models import EventDetail, EventListResponse, EventSummary
|
||||
from app.services.ingest import ingest_event
|
||||
from app.services.problems import maybe_create_problem
|
||||
from app.services.schema_validate import validate_event_payload
|
||||
from app.services.telegram_notify import notify_event, notify_problem
|
||||
|
||||
router = APIRouter(prefix="/events", tags=["events"])
|
||||
|
||||
@@ -39,8 +40,12 @@ def post_event(
|
||||
|
||||
event, created = ingest_event(db, payload)
|
||||
problem = None
|
||||
problem_created = False
|
||||
if created:
|
||||
problem = maybe_create_problem(db, event)
|
||||
problem, problem_created = maybe_create_problem(db, event)
|
||||
notify_event(event)
|
||||
if problem is not None and problem_created:
|
||||
notify_problem(problem, event)
|
||||
db.commit()
|
||||
|
||||
settings = get_settings()
|
||||
|
||||
Reference in New Issue
Block a user