ادغام یودوز با Prometheus

یودوز از Prometheus پشتیبانی می‌کند و این امکان را در اختیار شما قرار می‌دهد تا اطلاعات مانیتورینگ پروژه‌های خود را در کنار سایر متریک‌های زیرساخت جمع‌آوری و در ابزارهایی مانند Grafana یا خود Prometheus تحلیل کنید.

با این قابلیت می‌توانید داشبوردهای اختصاصی ایجاد کرده، داده‌های یودوز را با سایر سرویس‌ها ترکیب کنید و دید کامل‌تری نسبت به وضعیت زیرساخت خود داشته باشید.


پیش‌نیازها

برای استفاده از این قابلیت باید:

  • نقش Owner پروژه را داشته باشید.
  • API Token حساب کاربری خود را ایجاد کرده باشید.
  • قابلیت Prometheus Integration را برای پروژه فعال کرده باشید.

دانلود Prometheus

ابتدا آخرین نسخه Prometheus را از وب‌سایت رسمی دانلود کنید.

https://prometheus.io/download

پس از دانلود، فایل را از حالت فشرده خارج کنید.


فعال‌سازی در یودوز

وارد پنل کاربری یودوز شوید.

از منوی پروژه‌های من، پروژه مورد نظر را انتخاب کنید.

سپس وارد تب ابزارها شوید.

در این قسمت گزینه ادغام Prometheus را فعال کنید.

پس از فعال‌سازی، شناسه پروژه (Project UID) در همین صفحه نمایش داده خواهد شد.


دریافت API Token

برای دسترسی Prometheus به اطلاعات پروژه، به API Token نیاز خواهید داشت.

برای دریافت آن وارد مسیر زیر شوید:

حساب کاربری > رابط برنامه‌نویسی (API)

یا مستقیماً از طریق آدرس زیر:

https://dash.yodevs.com/profile/api

یک API Token ایجاد کرده و آن را نگهداری کنید.


پیکربندی Prometheus

فایل prometheus.yml را باز کرده و تنظیمات زیر را به بخش scrape_configs اضافه کنید.

global:
  scrape_interval: 60s
  evaluation_interval: 60s

scrape_configs:
  - job_name: 'yodevs_project_metrics'
    metrics_path: '/api/v1/projects/prometheus-project-metrics'
    scheme: https

    static_configs:
      - targets:
          - dash.yodevs.com

    params:
      project_uid:
        - YOUR_PROJECT_UID
      token:
        - OWNER_API_TOKEN

    relabel_configs:
      - source_labels: [__address__]
        target_label: instance

  - job_name: 'prometheus'

    static_configs:
      - targets:
          - localhost:9090
        labels:
          app: prometheus

جایگزین کردن مقادیر

قبل از اجرای Prometheus، دو مقدار زیر را جایگزین کنید.

شناسه پروژه

مقدار

YOUR_PROJECT_UID

را با Project UID پروژه جایگزین کنید.

این شناسه در تب ابزارها قابل مشاهده است.


API Token

مقدار

OWNER_API_TOKEN

را با API Token حساب Owner پروژه جایگزین کنید.

این توکن از طریق صفحه API قابل دریافت است.


اجرای Prometheus

پس از ذخیره فایل تنظیمات، Prometheus را اجرا کنید.

اگر همه تنظیمات به‌درستی انجام شده باشد، Prometheus به‌صورت خودکار متریک‌های پروژه را از یودوز دریافت خواهد کرد.


مشاهده متریک‌ها

پس از اجرای Prometheus، مرورگر خود را باز کرده و وارد آدرس زیر شوید.

http://localhost:9090

در قسمت Expression نام متریک مورد نظر را وارد کنید.

برای مثال:

monitor_latency_ms

سپس روی Execute کلیک کنید.

در صورت موفق بودن ارتباط، آخرین داده‌های مربوط به پروژه نمایش داده خواهند شد.


استفاده در Grafana

از آنجا که Grafana به‌صورت مستقیم از Prometheus پشتیبانی می‌کند، می‌توانید همین متریک‌ها را به Grafana متصل کرده و داشبوردهای اختصاصی ایجاد کنید.

به کمک این قابلیت می‌توانید:

  • نمودار زمان پاسخ مانیتورها
  • میزان Uptime
  • وضعیت سرویس‌ها
  • تعداد رخدادها
  • وضعیت پروژه‌ها
  • و سایر متریک‌های یودوز

را در کنار سایر اطلاعات زیرساخت خود مشاهده و تحلیل کنید.


نکات مهم

ℹ️ توجه

تنها مالک (Owner) پروژه می‌تواند قابلیت ادغام Prometheus را فعال کرده و از API Token مربوط به پروژه استفاده کند.

🔒 نکته امنیتی

API Token همانند رمز عبور پروژه عمل می‌کند. آن را در اختیار افراد غیرمجاز قرار ندهید و از قرار دادن آن در مخازن عمومی مانند GitHub خودداری کنید.


اطلاعات بیشتر

Prometheus امکانات بسیار گسترده‌ای برای جمع‌آوری، پردازش و تحلیل متریک‌ها در اختیار شما قرار می‌دهد.

برای آشنایی بیشتر با نحوه پیکربندی، قوانین Alerting و قابلیت‌های پیشرفته، به مستندات رسمی Prometheus مراجعه کنید:

https://prometheus.io/docs/