You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Loki、Promtail查看EKS中S3存储的SpringBoot日志及目录解析

Loki S3存储结构与日志访问详解

一、S3桶内目录/文件的作用与内容

1. fake 目录

  • 作用:Loki单节点模式下的占位目录,用来模拟分布式集群的索引分片结构,在EKS多节点集群中无实际作用,可忽略。
  • 内容:一般为空,或仅含空文件,不存储任何有效日志或索引数据。

2. index 目录

  • 作用:存储Loki的日志索引核心数据,负责映射日志标签、时间范围与S3中日志块的存储路径,是快速查询日志的关键。
  • 内容:包含按时间分片的boltdb-shipper格式文件(.db、.tmp等),记录了日志元数据与对应块的关联信息。

3. loki_cluster_seed.json 文件

  • 作用:用于Loki集群的节点初始化与发现,提供集群初始节点的元数据,帮助新节点快速加入集群同步状态。
  • 内容:JSON格式文件,包含集群节点的地址、ID等基础信息,仅在集群启动初期生成使用。

二、日志块存储到S3的流程

  1. 日志采集批量发送:Promtail采集EKS中SpringBoot应用的日志,按标签、时间窗口(默认2小时)打包后发送给Loki的ingester组件。
  2. 日志块生成:Ingester将接收的日志压缩、编码,生成固定大小(默认1.5GB)的不可变日志块,同时生成对应索引条目。
  3. 块上传与索引更新:Ingester将日志块上传到S3的/blocks/<时间戳>/<块ID>/路径下,同时把索引条目写入index目录的索引文件。
  4. 块持久化完成:日志块上传成功后,被标记为“已完成”,不再接收新日志写入,确保数据一致性。

三、查看S3中日志并转换为可读格式

S3中的日志块是压缩编码的二进制格式,无法直接读取,需通过Loki工具处理:

  1. 使用loki-cli导出:
    loki-cli query '{app="springboot-service"}' --from=2024-01-01T00:00:00Z --to=2024-01-01T01:00:00Z --output=raw > springboot-logs.txt
    
    替换查询标签与时间范围,即可导出人类可读的日志文本。
  2. 通过Loki HTTP API导出:
    curl -G "http://<loki-service>:3100/loki/api/v1/query_range" \
      --data-urlencode 'query={app="springboot-service"}' \
      --data-urlencode 'start=2024-01-01T00:00:00Z' \
      --data-urlencode 'end=2024-01-01T01:00:00Z' \
      | jq '.data.result[].values[] | .[1]' > springboot-logs.txt
    
    用jq提取日志内容,保存为可读文件。

四、通过Loki、Promtail查看S3上的SpringBoot日志

1. Grafana可视化查询(推荐)

  • 在Grafana中添加Loki数据源,配置地址为EKS内部的http://loki:3100。
  • 创建日志面板,使用LogQL筛选日志,例如:
    {app="springboot-service", namespace="default"} |= "ERROR"
    
    支持标签过滤、关键词匹配,实时查看S3上的日志。

2. Loki命令行查询

直接用loki-cli查询历史或实时日志:

# 查询历史日志
loki-cli query '{app="springboot-service"}' --from=2024-01-01T00:00:00Z --to=2024-01-01T01:00:00Z

# 实时追踪日志
loki-cli query '{app="springboot-service"}' --live

3. Promtail的角色说明

Promtail仅负责采集、推送日志到Loki,不直接读取S3上的日志。若需重新采集历史日志,可调整Promtail的scrape_configs指向SpringBoot日志文件路径,Promtail会重新读取并推送给Loki,最终存储到S3。


内容的提问来源于stack exchange,提问作者saranyat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 20:05:18