Monitoring (پایش) چیست؟
جمعآوری و بررسی مداوم متریک، لاگ و Trace یک سیستم برای شناسایی مشکلات عملکردی یا خرابی، ترجیحاً پیش از آنکه کاربر متوجه آن شود.
چرا مهم است؟
بدون Monitoring، تیم معمولاً از یک مشکل Production زمانی خبردار میشود که کاربر شکایت کند؛ پایش خوب همان چیزی است که اجازه میدهد مشکل قبل از تأثیر گسترده کشف و رفع شود.
تعریف
Monitoring بهطور مداوم سه نوع سیگنال را از سیستم جمعآوری میکند («سه ستون Observability»):
- Metrics: اعداد عددی در طول زمان (تعداد درخواست، زمان پاسخ، مصرف CPU)
- Logs: رخدادهای متنی جزئی (خطاها، هشدارها، رویدادهای کسبوکار)
- Traces: مسیر یک درخواست در سرویسهای مختلف (مهم در معماری Microservices)
ابزارهای رایج
- Prometheus: جمعآوری و ذخیره Metrics (نگاه کنید: Prometheus)
- Grafana: مصورسازی و Dashboard برای Metrics (نگاه کنید: Grafana)
- Application Insights / ELK Stack: جمعآوری Log و Trace
نمونه Alert Rule (مفهومی)
IF avg(http_request_duration_seconds) > 2 FOR 5m
THEN send_alert("API pd95 latency بالا رفته است")
اشتباه رایج
❌ فقط جمعآوری داده بدون تعریف Alert — Dashboard بدون هشدار خودکار یعنی کسی باید همیشه به آن نگاه کند؛ بدون Alert، مشکل معمولاً همان زمانی کشف میشود که کاربر گزارش دهد.
منبع و مطالعه بیشتر
خلاصه
Monitoring یعنی جمعآوری مداوم Metrics، Log و Trace برای کشف زودهنگام مشکلات سیستم. بدون تعریف Alert روی این دادهها، مشکل معمولاً وقتی کشف میشود که کاربر شکایت کرده باشد. مرجع کامل: Grafana Labs و مستندات Prometheus.
