pgBadger 3 发布:现在支持并行解析

发布于 2013-02-26,作者:Dalibo

DALIBO 自豪地宣布发布 pgBadger v3,这是一个新的 PostgreSQL 日志分析器。pgBadger 旨在快速生成来自 PostgreSQL 日志文件的详细报告。

这个新版本带来了重大改进。所有 pgBadger 用户都应尽快升级。

pgBadger 3 并行日志解析

pgBadger 的早期版本仅限于一个 CPU。PostgreSQL 日志文件是按顺序扫描的。分析非常大的日志文件可能需要几个小时。

现在已消除此限制。您可以使用任意数量的 CPU 内核并并行扫描日志。

要启用并行处理,您只需使用 -j N 选项,其中 N 是您要使用的内核数。

请注意,并行模式有一个小缺点。使用此方法,某些查询可能会被截断。如果您启用 N 个内核,则每个日志文件的结果最多可能相差 N 个查询。

但是,这是一个小问题:如果您有数百万个查询需要分析,并行模式会很有用。并且,如果一个日志文件中有数百万个查询,您可以忽略其中的几个,因为丢失的查询不太可能改变总体结果。

但是,为了避免这个问题,您可以使用 pgBadger 的“按文件并行模式”来分析日志,但性能低于标准并行模式。要启用此行为,您必须使用“-J N”选项而不是“-j N”。在按文件模式下,当有数百个小日志文件(例如 10MB 的轮换大小限制)且至少有 8 个内核时,性能开始变得真正有意义。

pgBadger 3 有多快?

目标是允许 pgBadger 使用指定数量的内核进行并行日志解析。以下是使用 pgbadger 在五个总计 9.5 GB 的日志文件上的一些性能结果

  • 使用 1 个内核 => 1 小时 41 分 18 秒
  • 使用 2 个内核 => 50 分 25 秒
  • 使用 4 个内核 => 25 分 39 秒
  • 使用 8 个内核 => 15 分 58 秒

我们认为这种性能提升非常有趣 :)

新的二进制格式

除了经典的 HTML、TXT 和 Tsung 输出格式之外,pgBadger 3 现在还可以生成二进制输入/输出格式。如果您只想存储日志统计信息并在以后生成带有图形的 HTML 报告,则此新格式非常有用。

简而言之,pgBadger 的两个主要活动是解析和报告。有了这种二进制格式,您现在可以分离这些活动并在不同的时间运行它们。例如,您可以每天解析一次日志,并且仅在需要时生成 HTML 报告。

您还可以组合多个二进制文件。例如,您可以每周创建一个二进制报告,并汇总最后 4 周的报告以构建每月 HTML 报告。

此新的二进制格式还与其他工具(如 pgShark)兼容 https://github.com/dalibo/pgshark/

更多统计信息,更多饼图!

此主要版本还具有其他功能

  • 新的饼图显示每个表的自动清理数量和每个表由自动清理删除的元组数量
  • 不再区分 log_duration、log_statement 和 log_min_duration_statement 格式
  • 新的按表显示 VACUUM 报告中删除的元组/页面的报告
  • 新的 VACUUM 和 ANALYZE 每小时报告和图表

...以及许多错误修复。

有关更改的完整列表,请查看 https://github.com/dalibo/pgbadger/blob/master/ChangeLog 上的发行说明

已弃用的选项

警告:为了简单起见,已删除 ''--enable-log_min_duration'' 和 ''--enable-log_duration'' 命令行选项。pgbadger 现在解析任何 log_duration、log_statement 和 log_min_duration_statement 行,不加区分,并根据这些行调整报告。

如果您使用 cron 运行 pgBadger,请注意:如果其中一个选项出现在命令行中,pgbadger 将拒绝启动。

链接和鸣谢

DALIBO 感谢提交补丁的开发人员和报告错误和功能请求的用户,特别是 Matt Romaine、Luke Cyca、Kevin Brannen、Adam Schroder、pilat66、Euler Taveira de Oliveira、stuntmunkee、pierrestroh、Vipul、Dirk-Jan Bulsink 和 Vincent Laborie。

pgBadger 是一个开放项目。欢迎您为构建更好的工具做出任何贡献。您只需使用 GitHub 工具或直接在我们的邮件列表中发送您的想法、功能请求或补丁。

链接


关于 pgBadger :

pgBagder 是新一代 PostgreSQL 日志分析器,由 Gilles Darold 创建,他也是 ora2pg 迁移工具的作者。pgBadger 是一种快速简便的工具,可分析您的 SQL 流量并创建带有动态图形的 HTML5 报告。pgBadger 是了解 PostgreSQL 服务器行为并确定哪些 SQL 查询需要优化的完美工具。

文档、下载和演示:http://dalibo.github.com/pgbadger/


关于 DALIBO :

DALIBO 是法国领先的 PostgreSQL 公司,自 2005 年以来一直为客户提供支持、培训和咨询服务。该公司以各种方式为 PostgreSQL 社区做出贡献,包括:代码、文章、翻译、免费会议和研讨会

http://dalibo.github.com 上查看 DALIBO 的开源项目