首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pgbadger匹配RDS日志的正确模式是什么?

pgbadger匹配RDS日志的正确模式是什么?
EN

Stack Overflow用户
提问于 2019-09-27 18:00:01
回答 1查看 480关注 0票数 1

我正在尝试使用pgBadger解析由RDS实例生成的日志文件,到目前为止还没有结果。

log_line_prefix设置为%t:%r:%u@%d:[%p]:

日志文件中的一个示例行如下所示:

代码语言:javascript
复制
2019-09-24 17:19:25 UTC:172.31.10.173(53224):username@database:[12829]:LOG:  execute <unnamed>: SELECT 1

我使用的是pgbadger命令:

代码语言:javascript
复制
./pgbadger -p "%t:%r:%u@%d:[%p]:" postgresql.log.2019-09-24-17 -o pgbadger_rdsinstance.html

它抛出以下错误

代码语言:javascript
复制
Unmatched ( in regex; marked by <-- HERE in m/^(?:\d+-\d+-\d+T\d+:\d+:\d+\.\d+Z)?\s*(\d+)-(\d+)-(\d+) (\d+):(\d+):(\d+)\s*[^:]*:( <-- HERE [^\(:]+\(\d+\):([^\@]+)\@([^:]+):\[(\d+)\]:(\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})(?: [A-Z\+\-\d]{3,6})?:([a-zA-Z0-9\-\.]+|\[local\]|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}|[0-9a-fA-F:]+)?[\(\d\)]*:([0-9a-zA-Z\_\[\]\-\.]*)@([0-9a-zA-Z\_\[\]\-\.]*):\[(\d+)\]:(LOG|WARNING|ERROR|FATAL|PANIC|DETAIL|STATEMENT|HINT|CONTEXT|LOCATION):\s+(.*)/ at ./pgbadger line 2430.

不知道什么是正确的模式在这里。看起来它无法解析172.31.10.173(53224)

我试着转义圆括号,比如:%t:%r\\(%a\\):%u@%d:[%p]:,但这没有帮助。

我通过删除这个(53224)部件分析了一个示例日志文件,它运行得很好。

这个前缀的正确模式应该是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-07 18:21:58

如果这是pgBadger 11.1或更高版本,您可以尝试使用--format rds并删除--prefix。我想这是一个需要报告的新bug,但至少--format rds对我起了作用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58139442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档