↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

pgBadger 13.2

输出格式

快速分析 PostgreSQL 与 PgBouncer 日志,生成完整且可独立浏览的报告

pgBadger 会根据输出文件扩展名,或 -x / --extension 选项选择格式。同一次解析可多次使用 -o / --outfile,同时生成多种格式。

格式 常用扩展名 最适合
HTML .html 带图表的交互式人类可读报告
文本 .txt 终端查看与纯文本归档
二进制 .bin 可合并的中间统计数据与报告重建
JSON .json 与其他软件集成;需要 JSON::XS
原始 CSV 自选输出文件 使用 --dump-raw-csv 导出逐行数据

HTML 与文本

默认输出为 out.html:

$ pgbadger postgresql.log -o report.html

HTML 通常会内嵌独立浏览所需的脚本、样式、字体与报告数据。-X / --extra-files 会把增量报告的公共 JavaScript 与 CSS 移到外部文件;移动 HTML 目录时必须保留这些资源。

显式生成文本:

$ pgbadger -x text -o report.txt postgresql.log

对于支持的格式,可用 - 作为输出文件名,把内容写到标准输出。

二进制中间数据

二进制输出把“解析日志”和“展示报告”分开。可以从一份持续增长的每日日志中生成逐小时增量:

$ pgbadger --last-parsed .pgbadger_last_state \
    -o sunday/hour01.bin \
    /var/log/pgsql/postgresql-Sun.log

把一个或多个二进制文件合并为新报告:

$ pgbadger -o sunday.html sunday/*.bin

如果服务器每小时生成一个日志,可为每次轮转生成一份二进制文件,并按需重建累计 HTML:

$ pgbadger -o day1/hour01.bin postgresql-2026-08-15_01.log
$ pgbadger -o day1/hour02.bin postgresql-2026-08-15_02.log
$ pgbadger -o day1/hour03.bin postgresql-2026-08-15_03.log
$ pgbadger -o day1.html day1/*.bin

同一个目录中应只混用彼此兼容的 pgBadger 版本生成的二进制文件。升级长期保留的增量目录前,应先查看版本说明中的格式兼容性信息。

JSON

JSON 输出面向监控或报告流水线等程序化消费者:

$ pgbadger -o report.json postgresql.log

需要先安装 JSON::XS。如果可读性比文件大小和生成速度更重要,可加入 --prettify-json。

原始数据与查询导出

命令参考还提供以下专用导出模式:

  • --dump-raw-csv 解析日志并输出逐行 CSV,不再生成报告;
  • --csv-separator 修改原始 CSV 分隔符;
  • --dump-all-queries 在替换绑定参数后输出所有查询;
  • --normalized-only 输出归一化查询;
  • --query-numbering 为查询类文本输出编号。

这些输出可能包含应用 SQL、标识符、用户、客户端地址或字面量。共享前应先检查内容;如果分析不需要保留字面量,请使用 --anonymize。

来源与许可

文档取自 pig.center · 上游文档

版本
13.2
许可
PostgreSQL
来源修订
67435324c7d65112905ab8f5c5cd83820587cbe49071d0fe1bd04c92de2fc3aa
译文修订
67435324c7d65112905ab8f5c5cd83820587cbe49071d0fe1bd04c92de2fc3aa
原始 Markdown