Middle
Бо кадом системҳои назорат шинос ҳастед?
sobes.tech AI
Ҷавоб аз AI
- Prometheus
- Grafana
- Zabbix
- Nagios
- Datadog
- ELK Stack (Elasticsearch, Logstash, Kibana)
Ман ба таҷрибаи ҳамгироии барномаҳои Python бо Prometheus ва Grafana барои ҷамъоварӣ ва визуализатсияи метрикҳо дорам:
# Мисоли содироти метрикҳо ба Prometheus бо истифода аз prometheus_client
from prometheus_client import start_http_server, Counter
# Эҷоди ҳисобкунак барои дархостҳо
REQUESTS_TOTAL = Counter('app_requests_total', 'Миқдори умумии дархостҳо ба барнома')
def process_request():
# Имитацияи коркарди дархост
REQUESTS_TOTAL.inc()
if __name__ == '__main__':
# Идора кардани сервери HTTP барои намоиши метрикҳо
start_http_server(8000)
print("Сервери метрик Prometheus дар порт 8000 оғоз шуд")
# Дар барномаи воқеӣ, дар ин ҷо давраи коркарди дархостҳо хоҳад буд
process_request()
Ман огоҳӣ додани дар Prometheus Alertmanager ва панелҳо дар Grafana барои пайгирии нишондиҳандаҳои асосии иҷроиш ва ҳолати системаро танзим кардам.
Ҳамчунин, ELK Stack-ро барои ҷамъоварӣ ва таҳлили марказонидашудаи логҳои барномаҳо истифода кардам.
# Мисоли логгирӣ ба Elasticsearch бо истифода аз logging ва logstash-async
import logging
import logstash_async
# Танзими logger
logger = logging.getLogger('my-app')
logger.setLevel(logging.INFO)
# Илова кардани handler барои Logstash
handler = logstash_async.handler.AsynchronousLogstashHandler(
'localhost', # Меҳмонхонаи Logstash
5000, # Порт Logstash
database_path='logstash_logs.db' # Одатан: роҳ ба базаи додаҳо барои буфергирӣ
)
logger.addHandler(handler)
# Логгирии паём
logger.info('Барнома бо муваффақият оғоз шуд', extra={'user_id': 123})
Ман бо консепсияҳои агентҳои мониторинг, экспортерҳо, scraping, нигоҳдории сатрҳои вақти ва огоҳӣ шинос ҳастам. Ман аҳамияти мониторингро барои таъмини эътимоднокӣ ва иҷрои системҳо фаҳмидам.