Skip to content

Commit aef8d98

Browse files
committed
add and set alert_end_time prometheus metric
1 parent c8ba61c commit aef8d98

2 files changed

Lines changed: 9 additions & 1 deletion

File tree

src/murfey/server/api/session_info.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
from sqlmodel import select
1111

1212
import murfey.server.api.websocket as ws
13+
import murfey.server.prometheus as prom
1314
from murfey.server import _transport_object
1415
from murfey.server.api import templates
1516
from murfey.server.api.auth import (
@@ -186,6 +187,11 @@ def create_session(
186187
db.add(s)
187188
db.commit()
188189
sid = s.id
190+
alert_end_time = prom.alert_end_time._value.get() # timestamp
191+
if visit_end_time.end_time:
192+
visit_end_timestamp = visit_end_time.end_time.timestamp()
193+
if alert_end_time < visit_end_timestamp:
194+
prom.alert_end_time.set(visit_end_timestamp)
189195
return sid
190196

191197

@@ -300,7 +306,7 @@ def get_silences(instrument_name: MurfeyInstrumentName):
300306
response = requests.get(f"{alertmanager_url}/api/v2/silences?{query_params}")
301307
if response.status_code != 200:
302308
logger.warning(
303-
f"Tried to get silences for {sanitise(instrument_name)}, but received status {response.status_code} from alertmanager API"
309+
f"Get silences for {sanitise(instrument_name)} received status {response.status_code} from alertmanager API"
304310
)
305311
active_silences = []
306312
for silence in response.json():

src/murfey/server/prometheus.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,3 +43,5 @@
4343
"Whether the corresponding visit should be monitored or not",
4444
["visit"],
4545
)
46+
47+
alert_end_time = Gauge("alert_end_time", "End time for alerts", [])

0 commit comments

Comments
 (0)