بازگشت به فهرست ATP →
سلامت سرویس

متریک‌های Prometheus پیام‌رسانی

GET /api/messaging/metrics/ مشاهده در Swagger

ATP - متریک‌های Prometheus پیام‌رسانی (GET /api/messaging/metrics/)

Endpoint

GET /api/messaging/metrics/

هدف آزمون

دریافت exposition متنی Prometheus برای outbox، inbox و draft lock metrics.

شرایط آزمون

  • سرویس core-api در حال اجرا باشد
  • PostgreSQL در دسترس باشد (برای شمارش outbox)

فرآیند آزمون

  1. ارسال GET به /api/messaging/metrics/
  2. بررسی Content-Type=text/plain; version=0.0.4
  3. بررسی وجود gauge/counterهای outbox و messaging
  4. عدم وجود label با cardinality بالا (workspace/case/event id)

معرفی ویژگی

endpoint observability برای scrape توسط Prometheus. شامل متریک‌های messaging و draft lock است.

  • بدون auth
  • فرمت: Prometheus text exposition 0.0.4
  • labels: bounded cardinality — بدون workspace_id یا case_id
  • مکمل /api/messaging/health/ برای alerting

سناریوی آزمون

سناریو 1: مسیر موفق

  1. ارسال GET /api/messaging/metrics/
  2. دریافت پاسخ موفق
  3. بررسی ساختار پاسخ

سناریو 2: خطا - درخواست نامعتبر

  1. ارسال درخواست با داده یا شناسه نامعتبر
  2. دریافت کد خطای 4xx
  3. بررسی پیام خطای استاندارد API

سناریو 3: خطا — متد پشتیبانی‌نشده

  1. ارسال متدی غیر از GET به همان مسیر
  2. دریافت کد 405 Method Not Allowed

سناریو 4: خطا — درخواست نامعتبر

  1. ارسال بدنه یا query نامعتبر
  2. دریافت کد 400
  3. بررسی پیام خطای validation

قالب API

مولفه نوع نوع داده اجباری توضیحات
بدون پارامتر ورودی

Swagger

get:
  summary: متریک‌های Prometheus پیام‌رسانی
  responses:
    200:
      description: عملیات موفق
    401:
      description: احراز هویت نامعتبر یا ناقص

نمونه ورودی

curl -X GET "http://localhost:8000/api/messaging/metrics/"

نمونه خروجی

# HELP patent_genie_outbox_pending_total Pending outbox events
# TYPE patent_genie_outbox_pending_total gauge
patent_genie_outbox_pending_total 0

Status Codes

  • 200: متریک‌های Prometheus

نتیجه مورد انتظار

پاسخ text/plain با خطوط # HELP / # TYPE و مقادیر gauge/counter.

روال صحت‌سنجی

  1. بررسی Content-Type
  2. بررسی عدم وجود credential در پاسخ
  3. بررسی scrape موفق در Prometheus (در صورت deploy)

توضیحات

  • مرجع: infra/observability/MESSAGING_RUNBOOK.md
  • health JSON در /api/messaging/health/؛ metrics در این endpoint