mirror of
https://github.com/open-webui/open-webui
synced 2025-06-04 03:37:35 +00:00
28 lines
827 B
Python
28 lines
827 B
Python
from typing import Optional
|
|
|
|
|
|
class TelemetryMetrics:
|
|
def __init__(self, meter):
|
|
self.login_counter = meter.create_counter(
|
|
"user_login_total", description="Total number of user logins"
|
|
)
|
|
self.user_request_counter = meter.create_counter(
|
|
"user_request_total", description="Total number of user requests"
|
|
)
|
|
|
|
def track_user_login(self, user_id: str, email: str):
|
|
self.login_counter.add(
|
|
1, {"method": "regular", "user_id": user_id, "email": email}
|
|
)
|
|
|
|
def track_user_request(self, user_id: str):
|
|
self.user_request_counter.add(1, {"user_id": user_id})
|
|
|
|
|
|
telemetry_metrics: Optional[TelemetryMetrics] = None
|
|
|
|
|
|
def initialize_telemetry_metrics(meter):
|
|
global telemetry_metrics
|
|
telemetry_metrics = TelemetryMetrics(meter)
|