mirror of
https://forgejo.altau.su/lego/lego-monitoring.git
synced 2026-03-10 12:45:19 +00:00
persistent alerts
This commit is contained in:
parent
eef6ec59b0
commit
2c234b2fd0
5 changed files with 31 additions and 21 deletions
|
|
@ -16,7 +16,7 @@ async def get_client() -> TelegramClient:
|
|||
return client
|
||||
|
||||
|
||||
def format_message(alert: Alert) -> str:
|
||||
def format_message(alert: Alert, persistent: bool) -> str:
|
||||
match alert.severity:
|
||||
case Severity.OK:
|
||||
severity_emoji = "🟢"
|
||||
|
|
@ -26,11 +26,12 @@ def format_message(alert: Alert) -> str:
|
|||
severity_emoji = "⚠️"
|
||||
case Severity.CRITICAL:
|
||||
severity_emoji = "🆘"
|
||||
message = f"{severity_emoji} {alert.alert_type} Alert\n{alert.message}"
|
||||
persistent_marker = " - <i>ongoing</i>" if persistent else ""
|
||||
message = f"{severity_emoji} {alert.alert_type} Alert{persistent_marker}\n{alert.message}"
|
||||
return message
|
||||
|
||||
|
||||
async def send_alert(alert: Alert) -> None:
|
||||
async def send_alert(alert: Alert, persistent: bool = False) -> None:
|
||||
try:
|
||||
client = cvars.tg_client.get()
|
||||
except LookupError: # being called standalone
|
||||
|
|
@ -42,7 +43,7 @@ async def send_alert(alert: Alert) -> None:
|
|||
else:
|
||||
... # temp_client = False
|
||||
room_id = cvars.config.get().telegram.room_id
|
||||
message = format_message(alert)
|
||||
message = format_message(alert, persistent)
|
||||
await client.send_message(entity=room_id, message=message)
|
||||
# if temp_client:
|
||||
# await client.close()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue