准备工作
下载地址
https://github.com/grafana/loki/releases
安装包放在服务器目录:/opt
wget https://github.com/grafana/loki/releases/download/v2.4.2/loki-linux-amd64.zip
wget https://github.com/grafana/loki/releases/download/v2.4.2/promtail-linux-amd64.zip
1、启动loki
1)解压loki-linux-amd64.zip
unzip loki-linux-amd64.zip
2)授权
chmod a+x loki-linux-amd64
3)配置文件loki.yaml
vi loki.yaml
auth_enabled: false
server:
http_listen_port: 3100
grpc_listen_port: 3110
grpc_server_max_recv_msg_size: 1073741824 #grpc最大接收消息值,默认4m
grpc_server_max_send_msg_size: 1073741824 #grpc最大发送消息值,默认4m
ingester:
lifecycler:
address: 127.0.0.1
ring:
kvstore:
store: inmemory
replication_factor: 1
final_sleep: 0s
chunk_idle_period: 5m
chunk_retain_period: 30s
max_transfer_retries: 0
max_chunk_age: 20m #一个timeseries块在内存中的最大持续时间。如果timeseries运行的时间超过此时间,则当前块将刷新到存储并创建一个新块
schema_config:
configs:
- from: 2021-01-01
store: boltdb
object_store: filesystem
schema: v11
index:
prefix: index_
period: 168h
storage_config:
boltdb:
directory: /opt/loki/index #存储索引地址
filesystem:
directory: /opt/loki/chunks
limits_config:
enforce_metric_name: false
reject_old_samples: true
reject_old_samples_max_age: 168h
ingestion_rate_mb: 30 #修改每用户摄入速率限制,即每秒样本量,默认值为4M
ingestion_burst_size_mb: 15 #修改每用户摄入速率限制,即每秒样本量,默认值为6M
chunk_store_config:
#max_look_back_period: 168h #回看日志行的最大时间,只适用于即时日志
max_look_back_period: 0s
table_manager:
retention_deletes_enabled: false #日志保留周期开关,默认为false
retention_period: 0s #日志保留周期
4)启动进程
nohup /opt/loki/loki-linux-amd64 -config.file=/opt/loki/loki.yaml >loki.out 2>&1 &
2、启动promtail
1)解压loki-linux-amd64.zip
unzip promtail-linux-amd64.zip
2)授权
chmod a+x promtail-linux-amd64
3)配置文件promtail.yaml
vi promtail.yaml
server:
http_listen_port: 9080
grpc_listen_port: 0
grpc_server_max_recv_msg_size: 15728640
grpc_server_max_send_msg_size: 15728640
positions:
filename: /opt/loki/positions.yaml # This location needs to be writeable by promtail.
client:
url: http://xx.xx.xx.xx:3100/loki/api/v1/push
#https://grafana.com/docs/loki/latest/clients/promtail/configuration/
scrape_configs:
- job_name: system
static_configs:
- targets:
- localhost
labels:
job: messages
__path__: /var/log/messages
- job_name: system
static_configs:
- targets:
- localhost
labels:
job: varlogs
__path__: /var/log/*log
- job_name: system
static_configs:
- targets:
- localhost
labels:
job: secure
__path__: /var/log/secure
#lastlog
- job_name: system
static_configs:
- targets:
- localhost
labels:
job: lastlog
__path__: /var/log/lastlog
#cron
- job_name: system
static_configs:
- targets:
- localhost
labels:
job: cron
__path__: /var/log/cron
4)启动进程
nohup /opt/loki/promtail-linux-amd64 -config.file=/opt/loki/promtail.yaml >promtail.out 2>&1 &
3、启动grafana
1)安装
官网安装教程地址:Download Grafana | Grafana Labs
wget https://dl.grafana.com/oss/release/grafana-7.4.3-1.x86_64.rpm
sudo yum install grafana-7.4.3-1.x86_64.rpm
2)启动
systemctl start grafana-server
3)查看状态
systemctl status grafana-server
4、logcli
1)下载
wget https://github.com/grafana/loki/releases/download/v2.4.2/logcli-linux-amd64.zip
2)解压logcli-linux-amd64.zip
unzip logcli-linux-amd64.zip
3)授权
chmod a+x logcli-linux-amd64.zip
4)查看
vb
`{job="cron"}
|~ "ERROR"
!= "(python3)"`