0

我使用 pgbadger 如下:

pgbadger -p %t:%r:%u@%d:[%p]: postgresql.log

log_line_prefix 是为 RDS 设置的,不能更改。它与我传递给 pgbadger 相同( %t:%r:%u@%d:[%p]: )

当我启动 pgbadger 时,我得到以下标准输出。

[=======================> ] Parsed 52063631 bytes of 52063634 (100.00%), queries: 66116, events: 0
LOG: Ok, generating html report...

所以它解析了查询,并输出了我看到的大部分统计信息。但在顶部我看到错误的信息。耗时的查询和最慢的单个查询表示“没有数据集”。在最频繁查询 (N) 中,所有查询的所有持续时间都为 0 。请参阅此处的屏幕截图:http: //clip2net.com/s/3wUxfXg。查询示例根本不显示任何示例。我检查了 postgresql 日志,并且持续时间在那里。例如:

2016-04-13 22:00:02 UTC:blabla.com(43372):blabla@blabla:[20584]:LOG:  statement: SELECT DISTINCT "reports2_report"."id", "reports2_report"."created", "reports2_report"."modified", "reports2_report"."data", "reports2_report"."person_info", "reports2_report"."status", "reports2_report"."source_profile_id", "reports2_report"."application_id", "reports2_report"."error_detail" FROM "reports2_report" INNER JOIN "reports2_reportsourceprofile" ON ( "reports2_report"."source_profile_id" = "reports2_reportsourceprofile"."id" ) INNER JOIN "reports2_reportsource" ON ( "reports2_reportsourceprofile"."report_source_id" = "reports2_reportsource"."id" ) INNER JOIN "applications_applicationdocument" ON ( "reports2_report"."application_id" = "applications_applicationdocument"."slug" ) WHERE ("reports2_reportsource"."identifier" = 'redridge_credit' AND "reports2_report"."application_id" = 'jqLoMe' AND ("reports2_report"."application_id" IN (SELECT DISTINCT V0."slug" FROM "applications_applicationdocument" V0 LEFT OUTER JOIN "auth_user" V1 ON ( V0."seller_id" = V1."id" ) LEFT OUTER JOIN "accounts_companymembership" V2 ON ( V1."id" = V2."user_id" ) LEFT OUTER JOIN "applications_applicationbundle" V5 ON ( V0."bundle_id" = V5."id" ) LEFT OUTER JOIN "applications_applicationbundle_sharees" V6 ON ( V5."id" = V6."applicationbundle_id" ) WHERE (V2."company_id" IN (SELECT U0."id" FROM "accounts_company" U0 WHERE (U0."lft" > 2 AND U0."tree_id" = 6 AND U0."rght" < 3)) OR V0."applicant_id" = 111827 OR V0."seller_id" = 111827 OR V6."user_id" = 111827)) OR "applications_applicationdocument"."seller_id" = 111827 OR "applications_applicationdocument"."applicant_id" = 111827 OR "reports2_reportsourceprofile"."user_id" = 111827)) ORDER BY "reports2_report"."created" DESC LIMIT 20
2016-04-13 22:00:02 UTC:blabla.com(43372):blabla@blabla:[20584]:LOG:  duration: 517.047 ms

如何让 PgBadger 生成完整的正确报告?

4

1 回答 1

0

这是由于 log_statement = all 而不是 log_statement=none。log_min_duration_statement 仅在 log_statement = none 时有效

于 2016-04-14T14:08:24.027 回答