Docker + Grafana + Loki + Promtail 日志可视化搭建(超详细实战)
·
一.准备目录
Linux系统 下创建目录:
/data/env-network/logs
把你项目的日志文件放进去,例如:
console.2025-11-24.0.log
console.2025-11-23.0.log
二.Promtail 配置文件
vim /data/promtail/promtail-config.yaml
promtail-config.yaml
内容如下(可直接粘贴):
server:
http_listen_port: 9080
grpc_listen_port: 0
positions:
filename: /tmp/positions.yaml
clients:
- url: http://host.docker.internal:3100/loki/api/v1/push
scrape_configs:
- job_name: crm-logs
static_configs:
- targets:
- localhost
labels:
job: "crm"
__path__: /logs/*.log
三.启动 Loki
docker run -d --name loki -p 3100:3100 grafana/loki:latest
四.启动 Grafana
docker run -d --name grafana -p 3000:3000 grafana/grafana:latest
访问:
http://localhost:3000
默认账号密码:
admin / admin
五.启动 Promtail
docker run -d --name promtail
-v /data/promtail/promtail-config.yaml:/etc/promtail/config.yml
-v /data/env-network/logs:/logs
grafana/promtail:latest --config.file=/etc/promtail/config.yml
重要
验证 Promtail 状态:
docker logs promtail
如果看到:
tail routine: started
说明成功采集日志了
六.在 Grafana 接入 Loki
进入 Grafana:
导航:
Connections → Data sources → Add data source
选择:
Loki
URL 填:
http://host.docker.internal:3100
点击:
Save & test

七.日志查询语法(重点)
1. Explore → Data source 选择 Loki

2.基础查询:
{job="crm"}
1)筛选错误日志
{job="crm"} |= "ERROR"
2)统计 ERROR 数量(支持图表)
sum(count_over_time({job="crm"} |= "ERROR" [1m]))
3)搜索关键字(如 cus)
{job="crm"} |= "cus"

over,剩下来读者可以自行找资料参考。
更多推荐
所有评论(0)