💡
原文英文,约1000词,阅读约需4分钟。
📝
内容提要
本文讨论了PostgreSQL的日志记录和使用pgBadger进行性能问题调查的方法。作者指出,通常情况下我们很少使用Postgres日志进行监控,而是使用扩展和第三方工具。然而,在进行调查时,我们需要查看所有的语句,而不仅仅是执行时间超过10毫秒的语句。作者还介绍了pgBadger的新功能,包括分析日志的能力和跟踪用户会话的能力。作者表示正在努力实现这些功能的自动化处理。
🎯
关键要点
- PostgreSQL有多个配置参数决定日志记录内容,Postgres 16中有30个相关参数。
- 我们通常不使用Postgres日志进行监控,而是依赖扩展和第三方工具。
- Postgres日志主要用于调查特定事件,而非常规监控。
- log_min_duration_statement=10的设置只记录执行时间超过10毫秒的语句,可能无法全面了解性能问题。
- 日志增长通常是由于执行时间超过10毫秒的查询数量增加。
- 调查时需要查看所有语句,而不仅仅是超过10毫秒的语句。
- 开启完整日志记录会导致日志文件迅速增大,处理这些数据成为挑战。
- pgBadger是一个常用的性能问题调查工具,需开启完整日志以获取有效信息。
- 当前的日志记录哲学是默认记录很少,必要时开启几乎所有日志。
- pgBadger的新功能包括自定义日志分析和跟踪用户会话的能力。
- 新选项–dump-raw-csv允许生成原始日志以便进一步分析,正在进行自动化处理。
➡️