diff --git a/modules/metrics.py b/modules/metrics.py index 60a77e7..c9d683a 100644 --- a/modules/metrics.py +++ b/modules/metrics.py @@ -2,6 +2,12 @@ import prometheus_client class Metrics(enum.Enum): + + WAV_FILE_GENERATION_SECONDS = ( + "wav_file_generation_seconds", + "Time taken to generate the phone script wav file in seconds", + prometheus_client.Summary, + ) API_RESPONSE_CODES = ( "leetcode_api_response_codes", @@ -94,4 +100,4 @@ def instance(cls): if cls._instance is None: cls._instance = cls.__new__(cls) cls.init(cls) - return cls._instance \ No newline at end of file + return cls._instance diff --git a/server.py b/server.py index 10ebd6f..96ae7f2 100644 --- a/server.py +++ b/server.py @@ -147,6 +147,7 @@ async def get_phone_script(): with wav_generation_lock: if last_wav_generation_time is None or current_time - last_wav_generation_time > 1800: logger.info("Regenerating phone script audio file on demand") + with metrics_handler.wav_file_generation_seconds.time(): my_big_dumb_generation_life() MetricsHandler.wav_last_sent.set(time.time())