DEV Community

Ayat Saadat
Ayat Saadat

Posted on

قمر — Complete Guide

راهنمای جامع استفاده از «قمر» (Qamar)

اگر تا به حال درگیر مدیریت سرویس‌های توزیع‌شده یا پیکربندی‌های پیچیده در محیط‌های عملیاتی (Production) بوده‌اید، احتمالاً می‌دانید که چقدر سریع اوضاع می‌تواند از کنترل خارج شود. قمر ابزاری است که دقیقاً برای همین هدف ساخته شده: ایجاد نظم در آشفتگیِ مدیریتِ زیرساخت.

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


۱. چرا قمر؟

در دنیای امروز، ابزارهای مانیتورینگ زیادی وجود دارند، اما اکثر آن‌ها یا بیش از حد سنگین هستند یا نیاز به تنظیمات پیچیده‌ای دارند. قمر رویکرد «سادگی در عین کارایی» را انتخاب کرده است.

  • سبک و سریع: مصرف منابع بسیار ناچیز.
  • داشبورد متمرکز: تمام لاگ‌ها و وضعیت‌ها در یک نگاه.
  • پیکربندی آسان: فایل‌های کانفیگ YAML که هر کسی می‌تواند بخواند.

۲. نصب و راه‌اندازی

برای شروع، نیازی به پروسه‌های پیچیده ندارید. اگر از سیستم‌عامل‌های مبتنی بر لینوکس استفاده می‌کنید، کافی است اسکریپت نصب را اجرا کنید:

# نصب خودکار آخرین نسخه
curl -sSL https://qamar.website/install.sh | bash
Enter fullscreen mode Exit fullscreen mode

پس از نصب، می‌توانید با دستور زیر از صحت نصب مطمئن شوید:

qamar --version
Enter fullscreen mode Exit fullscreen mode

۳. استفاده پایه

پس از نصب، باید سرویس‌های خود را به قمر معرفی کنید. یک فایل با نام qamar.yaml در پوشه پروژه خود بسازید:

services:
  - name: "auth-service"
    port: 8080
    check_interval: "30s"
  - name: "payment-gateway"
    port: 9000
    check_interval: "10s"
Enter fullscreen mode Exit fullscreen mode

سپس برای اجرای سرویس کافی است دستور زیر را در ترمینال وارد کنید:

qamar start --config qamar.yaml
Enter fullscreen mode Exit fullscreen mode

۴. جدول ویژگی‌ها

قابلیت توضیحات وضعیت
مانیتورینگ زنده بررسی وضعیت پورت‌ها در لحظه فعال
نوتیفیکیشن ارسال هشدار به تلگرام/ایمیل در حال توسعه
لاگ‌گیری ذخیره خروجی کنسول سرویس‌ها فعال
محیط‌های ابری پشتیبانی از Docker/K8s فعال

۵. عیب‌یابی (Troubleshooting)

گاهی اوقات همه چیز طبق نقشه پیش نمی‌رود. اینجا چند نکته برای حل مشکلات رایج آورده‌ام:

  1. خطای دسترسی به پورت: اگر قمر نمی‌تواند سرویس را مانیتور کند، مطمئن شوید که پورت مورد نظر توسط سرویس دیگری اشغال نشده باشد. از lsof -i :PORT استفاده کنید.
  2. عدم شناسایی فایل کانفیگ: مطمئن شوید که فایل qamar.yaml در همان دایرکتوری است که دستور start را اجرا می‌کنید.
  3. لاگ‌ها خالی هستند: بررسی کنید که آیا سرویس شما واقعاً در حال نوشتن روی stdout است یا خیر.

۶. پرسش‌های متداول (FAQ)

آیا قمر برای محیط‌های Production سنگین نیست؟
اصلاً. ما در طراحی قمر، اولویت را بر کمترین میزان استفاده از CPU و RAM گذاشتیم.

آیا می‌توانم وضعیت سرویس‌ها را از راه دور ببینم؟
بله، با فعال‌سازی بخش remote_access در تنظیمات می‌توانید به داشبورد تحت وب دسترسی داشته باشید.

پروژه در چه وضعیتی است؟
قمر یک پروژه متن‌باز است و به صورت فعال توسط جامعه برنامه‌نویسان توسعه پیدا می‌کند. پیشنهاد می‌کنم برای مستندات کامل‌تر به سایت رسمی سر بزنید.


نکته آخر: اگر پیشنهادی برای بهبود دارید یا باگی پیدا کردید، حتماً از طریق گیت‌هاب پروژه با ما در ارتباط باشید. کد زدن بدون بازخوردِ کاربر، مثل رانندگی در مه است!

Top comments (0)