Sobes.tech
Junior

Ako a kde môžem prezrieť logy akéhokoľvek služby?

sobes.tech AI

Odpoveď od AI

Logy služby je možné prehliadať na viacerých miestach v závislosti od typu a spôsobu nasadenia.

Hlavné miesta prehliadania logov:

  • Lokálne súbory:

    • Pre služby bežiace priamo na serveri sa logy často zapisujú do súborov v adresároch typu /var/log/ (Linux) alebo v špecializovaných adresároch aplikácie.
    • Používajú sa príkazy ako cat, tail, less, grep.
    # Zobrazenie posledných riadkov log súboru
    tail -f /var/log/myapp/service.log
    
    # Vyhľadávanie chýb v log súbore
    grep "ERROR" /var/log/myapp/service.log
    
  • Systémový denník (syslog/journald):

    • Aplikácie môžu odosielať logy do systémového denníka operačného systému.
    • V Linuxe sa pre systémový denník journald používa príkaz journalctl.
    # Zobrazenie logov konkrétnej služby
    journalctl -u my-service.service
    
    # Zobrazenie logov od určitého dátumu
    journalctl --since "2023-01-01 10:00:00"
    
  • Štandardné toky (stdout/stderr):

    • Mnohé moderné aplikácie, najmä v kontajnerizovaných prostrediach, vypisujú logy do štandardných tokov výstupu a chýb.
    • Tieto toky môžu byť zhromažďované systémami správy kontajnerov alebo logovania.
  • Systémy správy kontajnerov (Docker, Kubernetes):

    • Docker zbiera logy zo štandardných tokov kontajnerov a poskytuje ich cez príkazy docker logs.
    • Kubernetes integruje s rôznymi systémami zberu logov (napríklad Fluentd, Logstash) pre centralizovaný zber logov z podov a ich odoslanie do úložiska.
    # Zobrazenie logov Docker kontajnera
    docker logs <container_id_or_name>
    
    # Zobrazenie logov Kubernetes podu
    kubectl logs <pod_name> -n <namespace>
    
  • Centralizované systémy logovania:

    • V zrelých infraštruktúrach sa používajú špecializované platformy na zber, agregáciu, analýzu a vizualizáciu logov z viacerých zdrojov.
    • Príklady zahŕňajú: ELK Stack (Elasticsearch, Logstash, Kibana), Splunk, Grafana Loki, Datadog, Sumo Logic.
    • Prístup k logom je možný cez webové rozhranie alebo API týchto systémov.
  • Cloudové platformy:

    • Cloudoví poskytovatelia ponúkajú vlastné služby na zber a analýzu logov.
    • Príklady: AWS CloudWatch Logs, Google Cloud Logging, Azure Monitor Logs.
    • Logy sú dostupné cez ovládací panel cloudovej služby alebo ich API.

Výber spôsobu prehliadania závisí od architektúry aplikácie, používané infraštruktúry a nastavení logovania. Centralizované systémy logovania sú vhodnejšie pre zložité distribuované systémy, pretože poskytujú jednotný bod prístupu a výkonné možnosti analýzy.