Concept
Grafana Loki는 로그 집계 도구로, 모든 기능을 갖춘 로깅 컴포넌트 집합입니다.
Indexed
Loki는 다른 로깅 시스템과 달리 아래와 같이 로그 스트림의 메타데이터인 레이블(Prometheus의 레이블과 같은)만 인덱싱한다는 개념에 기반해 구축되므로 원본 로그 메시지는 색인되지 않습니다.
그런 다음 로그 데이터 자체는 압축되어 S3나 GCS와 같은 object stores에 chunks로 저장되거나 파일 시스템에 저장됩니다. 작은 인덱스와 압축된 chunks는 간결하면서도 효율적인 쿼리 실행을 가능하게하고 Loki의 비용을 크게 낮추게 됩니다.
Agent
에이전트(클라이언트)는 로그를 수집하고, 로그를 스트림으로 변환한 다음, HTTP API를 통해 스트림을 Loki로 푸시합니다.
Promtail 에이전트는 Loki 설치용으로 설계되었지만 다른 많은 에이전트도 Loki와 원활하게 통합됩니다.
Loki features
Efficient memory usage for indexing the logs
레이블 세트를 인덱싱하면 다른 로깅 시스템보다 인덱스가 훨씬 작아질 수 있습니다. 메모리가 적을수록 운영 비용이 절감됩니다.
Multi-tenancy
Loki를 사용하면 여러 테넌트가 하나의 Loki 인스턴스를 사용할 수 있습니다. 개별 테넌트의 데이터는 다른 테넌트로부터 완전히 격리됩니다.
LogQL, Loki’s query language
PromQL 사용자는 친숙하게 로그에 대한 쿼리 문법인 LogQL을 사용할 수 있습니다.
Scalability
Loki의 컴포넌트는 마이크로서비스로 실행할 수 있으므로 확장성을 위해 설계되었습니다. 구성을 통해 마이크로서비스를 개별적으로 확장할 수 있으므로 대규모 설치가 가능합니다.
Flexibility
많은 에이전트(클라이언트)가 플러그인을 지원합니다. 따라서 현재 observability 스택의 기존 부분을 전환할 필요 없이 로그 집계 도구로 Loki를 추가할 수 있습니다.
공식 지원 클라이언트
Grafana integration
Loki는 Grafana와 원활하게 통합되어 완벽한 통합 observability 스택을 제공합니다.
Grafana Loki documentation - Link
'Observability > Loki' 카테고리의 다른 글
[Promtail]Install promtail with helm chart (0) | 2024.03.03 |
---|---|
[Loki]Install Grafana loki-distributed with helm chart (6) | 2023.06.03 |
[Loki]Grafana Loki Architecture (0) | 2023.06.02 |