diff --git a/nonebot_bison/metrics.py b/nonebot_bison/metrics.py index 1e2c702..0cb65b0 100644 --- a/nonebot_bison/metrics.py +++ b/nonebot_bison/metrics.py @@ -10,6 +10,10 @@ request_counter = Counter( # Sent counter sent_counter = Counter("bison_sent_counter", "The number of sent messages", ["site_name", "platform_name", "target"]) +cookie_choose_counter = Counter( + "bison_cookie_choose_counter", "The number of cookie choose", ["site_name", "target", "cookie_id"] +) + metrics_router = APIRouter(prefix="/api/metrics", tags=["metrics"]) diff --git a/nonebot_bison/utils/site.py b/nonebot_bison/utils/site.py index aecb00f..ca8127b 100644 --- a/nonebot_bison/utils/site.py +++ b/nonebot_bison/utils/site.py @@ -13,6 +13,7 @@ from ..types import Target from ..config import config from .http import http_client from ..config.db_model import Cookie +from ..metrics import cookie_choose_counter class ClientManager(ABC): @@ -131,6 +132,7 @@ class CookieClientManager(ClientManager): """获取 client,根据 target 选择 cookie""" client = http_client() cookie = await self._choose_cookie(target) + cookie_choose_counter.labels(site_name=self._site_name, target=target, cookie_id=cookie.id).inc() if cookie.is_universal: logger.trace(f"平台 {self._site_name} 未获取到用户cookie, 使用匿名cookie") else: