Loki 的 HTTP 入口
3100 是 Grafana Loki 的 HTTP 入口端口。日志采集组件把日志推送给 Loki,查询请求也走同一个端口,它通常与 Grafana 面板的 3000 成对出现。Loki 的设计思路是只索引标签、不索引日志正文,因此存储成本明显低于全文索引方案,代价是查询能力相对受限。
基本信息
| 服务 | Grafana Loki |
|---|---|
| 协议 | TCP,默认 3100 |
| 用途 | 日志推送与查询(LogQL) |
| 配套端口 | 3000 Grafana 面板 |
| 安全等级 | 仅内网监控网段 |
典型使用场景
- 采集组件把容器与主机日志推送到 Loki
- 在面板里用 LogQL 查询日志与统计
- 排查日志查不到,确认推送端与查询端是否都指向同一端口
- 安全评估时确认 Loki 没有暴露公网
- 与全文检索方案对比选型时评估成本与查询需求
就绪与标签检查
就绪与标签检查
ss -lntp | grep ':3100 '
curl -s http://localhost:3100/ready # 就绪状态
curl -s 'http://localhost:3100/loki/api/v1/labels' | head -c 200Loki 部署要点
| 项目 | 值 | 说明 |
|---|---|---|
| HTTP 入口 | 3100 | 日志推送、查询与运维接口 |
| 可视化 | 3000 | Grafana 面板,用于查询与展示 |
| 索引模型 | 标签索引 | 只索引标签,正文压缩存储 |
| 多租户 | 按部署配置 | 共享实例需按租户隔离访问权限 |
Loki 默认不做鉴权,暴露公网意味着全部应用日志可被读取。日志里往往包含请求参数、异常堆栈甚至口令片段,泄露后果比想象中严重,而多数事故都源于把监控栈直接开在公网地址上。
排查提示:查不到日志先分清是没推上来还是查不出来。看自身指标与就绪状态能判断接收是否正常,再用标签查询确认数据是否落在预期的标签组合下;标签设计不一致是常见原因。
架构提示:单机部署适合小规模环境,规模上来后需要对象存储与独立组件分担读写。迁移前先评估查询并发与保留周期,避免上线后才发现存储撑不住。
采集提示:采集端与查询端的标签命名要统一,标签里的高基数字段会明显拖慢查询,设计阶段就应把标签与日志正文的界限划清。