loki grafana 團隊開源的,類似Prometheus 的log 系統


Prometheus 主要面向的是metrics,但是loki 是log,這樣加上grafana 強大的可視化以及alert能力,
我們可以做好多事情,loki 的設計來源於Prometheus。

組件說明

loki 包含三個組件

  • loki 核心組件進行log 的查詢處理
  • promtail 一個agent 主要是進行log 的發送
  • grafana ui

環境准備

  • docker-compose 文件
 
version: "3"
services:
  loki:
    image: grafana/loki:master
    ports:
      - "3100:3100"
    volumes:
      - $PWD:/etc/loki
    command: -config.file=/etc/loki/loki-local-config.yaml
  promtail:
    image: grafana/promtail:make-images-static-26a87c9
    volumes:
      - $PWD:/etc/promtail
      - ./log:/var/log
    command: 
      -config.file=/etc/promtail/promtail-docker-config.yaml
  grafana:
    image: grafana/grafana:master
    ports:
      - "3000:3000"
    environment:
      GF_EXPLORE_ENABLED: "true"
 
 
  • 配置說明
    loki:
 
auth_enabled: false
server:
  http_listen_port: 3100
ingester:
  lifecycler:
    address: 127.0.0.1
    ring:
      store: inmemory
      replication_factor: 1
schema_config:
  configs:
  - from: 0
    store: boltdb
    object_store: filesystem
    schema: v9
    index:
      prefix: index_
      period: 168h
storage_config:
  boltdb:
    directory: /tmp/loki/index
  filesystem:
    directory: /tmp/loki/chunks
 
 

promtail agent 配置

server:
  http_listen_port: 0
  grpc_listen_port: 0
positions:
  filename: /tmp/positions.yaml
client:
  url: http://loki:3100/api/prom/push
scrape_configs:
- job_name: system
  entry_parser: raw
  static_configs:
  - targets:
      - localhost
    labels:
      job: varlogs
      __path__: /var/log
 
 

一個包含log 的文件 log/app.info

啟動&&測試

  • 啟動
docker-compose up -d
 
  • 配置grafana ui
    很簡單,按照提示就可以了,主要是添加loki 的datasource,和普通的操作是一樣的,注意ui 版本的問題
  • 查詢日志
    需要啟用explorer的功能,在docker-compose 環境變量中我們也可以看出

說明

loki 也是剛開源出來,后邊的發展還有待看,但是從使用上來說,還是很不錯的,同時對於k8s 的支持很不錯,我們可以用來
方便的手機k8s pod 的日志。。。。

參考資料

https://github.com/grafana/loki#getting-started
https://github.com/rongfengliang/grafana-loki-demo


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM