Sobes.tech
Middle

Milliste jälgimissüsteemidega olete tuttav?

sobes.tech AI

Vastus AI-lt

  • Prometheus
  • Grafana
  • Zabbix
  • Nagios
  • Datadog
  • ELK Stack (Elasticsearch, Logstash, Kibana)

Mul on kogemusi Python-rakenduste integreerimisel Prometheus ja Grafana abil mõõdikute kogumiseks ja visualiseerimiseks:

# Näide mõõdikute eksportimisest Prometheus'esse prometheus_client'i kasutades
from prometheus_client import start_http_server, Counter

# Loome loendurite mõõdikud päringutele
REQUESTS_TOTAL = Counter('app_requests_total', 'Kogu päringute arv rakenduses')

def process_request():
    # Päringu töötlemise imitatsioon
    REQUESTS_TOTAL.inc()

if __name__ == '__main__':
    # Käivitame HTTP-serveri mõõdikute jaoks
    start_http_server(8000)
    print("Prometheus mõõdikute server käivitus pordil 8000")
    # Reaalsetes rakendustes oleks siin päringute töötlemise tsükkel
    process_request()

Seadistasin häireid Prometheus Alertmanageris ja armatuurlauasid Grafanas, et jälgida võtmetulemusi ja süsteemi olekut.

Kasutanud ka ELK Stacki, et koguda ja analüüsida rakenduste logisid tsentraliseeritult.

# Näide logimise kohta Elasticsearchi kasutades logging ja logstash-async
import logging
import logstash_async

# Konfigureerime loggri
logger = logging.getLogger('my-app')
logger.setLevel(logging.INFO)

# Lisame Logstash'i käsitleja
handler = logstash_async.handler.AsynchronousLogstashHandler(
    'localhost',  # Logstash host
    5000,        # Logstash port
    database_path='logstash_logs.db' # Valikuline: tee tee andmebaasile buferimiseks
)
logger.addHandler(handler)

# Logi sõnum
logger.info('Rakenduse edukas käivitamine', extra={'user_id': 123})

Mõistan jälgimisagentide, eksportijate, skreipingu, ajasariandmete salvestamise ja häirete kontseptsioone. Mõistan, kui oluline on jälgida süsteemide usaldusväärsust ja jõudlust.