Promtail:如何从文件名中删除时间戳?
Posted
技术标签:
【中文标题】Promtail:如何从文件名中删除时间戳?【英文标题】:Promtail: How to remove timestamps from filenames? 【发布时间】:2022-01-06 06:17:24 【问题描述】:我有一个简单的问题:
我的日志文件的名称中有时间戳,即:
/var/log/html/access-2021-11-27.log
/var/log/html/access-2021-11-28.log
/var/log/html/access-2021-11-29.log
Promtail 正在抓取此内容,但没有“看到”access-2021-11-28.log 是 access-2021-11-27.log 的延续。所以它会在 28 日“检测”到一个日志文件 access-2021-11-28.log,不再显示 access-2021-11-27.log。我想只看几天的“access.log”数据。
我认为这应该是一个众所周知的场景,但我在 Internet 上找不到任何内容。
【问题讨论】:
【参考方案1】:唯一的方法是更改生成日志的应用程序的日志配置,使用唯一的 access.log 代替 access-xxxx-xx-xx.log 文件的架构。不幸的是,这并不总是可行的。
但是……
仍然可以显示旧文件,这仅取决于使用的时间范围。这是一个例子:
您可以使用正则表达式来执行查询,如下例所示:
filename=~".*JIRA_INSTALL/logs/access_log\\..*"
【讨论】:
以上是关于Promtail:如何从文件名中删除时间戳?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Promtail / Loki - AlertManager 为我的日志中的每个错误发送警报?
Promtail 和 Grafana - 来自 docker 容器的 json 日志文件未显示