Skip to content

Metrics

بلاک metrics شمارنده‌های قالب‌بندی‌شده برای Prometheus را روی HTTP ساده عرضه می‌کند. همان شمارنده‌هایی که StatsService از طریق gRPC گزارش می‌دهد در /metrics (و نقاط‌انتهایی pprof دیباگ زمان اجرا در /debug/pprof/) ظاهر می‌شوند.

گزینه‌ها

فیلدنوعپیش‌فرضمقادیر مجازتوضیحات
tagstring(required for routing)<inbound tag>تگ مسیریابی برای ورودی metrics. اگر می‌خواهید نقطه‌انتهایی metrics را با یک قاعده مسیریابی کنید الزامی است (معمولاً همین‌طور است).
listenstring127.0.0.1:0<host:port>آدرس HTTP که نقطه‌انتهایی metrics روی آن گوش می‌دهد. مقدار خالی فقط یک ورودی درون‌فرایندی را ثبت می‌کند.

منبع: infra/conf/metrics.go:8-11 · ثابت‌شده در v1.260327.0 (d2758a0)

مثال

json
{
  "stats": {},
  "metrics": {
    "tag": "metrics",
    "listen": "127.0.0.1:9099"
  },
  "policy": {
    "system": {
      "statsInboundUplink": true,
      "statsInboundDownlink": true,
      "statsOutboundUplink": true,
      "statsOutboundDownlink": true
    }
  },
  "routing": {
    "rules": [
      { "type": "field", "inboundTag": ["metrics"], "outboundTag": "metrics" }
    ]
  }
}

نکات

  • metrics از همان ذخیرهٔ شمارندهٔ stats دوباره استفاده می‌کند؛ شما همچنان به stats: {} به همراه کلیدهای شمارندهٔ مرتبط در policy نیاز دارید.
  • این نقطه‌انتهایی هم قالب متنی Prometheus را در /metrics و هم هندلرهای net/http/pprof گو را در /debug/pprof/ سرو می‌کند. آدرس شنوایی را فقط روی localhost نگه دارید.

منبع: infra/conf/metrics.go:8-11 · v1.260327.0 (d2758a0)

Core Tutorial اثر Argsment