前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Postgresql 监控你说了不算,谁说了算 ? (2 PGBADGER)

Postgresql 监控你说了不算,谁说了算 ? (2 PGBADGER)

作者头像
AustinDatabases
发布2020-03-10 11:07:52
5790
发布2020-03-10 11:07:52
举报
文章被收录于专栏:AustinDatabasesAustinDatabases

日志,日志,日志,无论你是IT 的那个LEVEL 都知道,没有日志的系统是有硬伤,POSTGRESQL 的日志在数据库界应该属于上层的,一个错误的日志,包含的事件类型是很全面的,当然这也带出另一个问题,他不像MYSQL 那样将日志分的很细,慢查询的是慢查询,错误是错误,所以一个合适的分析的工具将变得非常重要。

通过 pgbadger 可以对postgresql 的日志进行分析,并且以网页的方式信息展示,还是先给展示一下大致的样子。

可统计的信息很多所以这个pgbadger 的功能也是很丰富的,其中有一个功能要说,他可以弥补上一期监控软件的一个缺失,就是慢查询的问题。当然问题的一个个说。

首先pgbadger 是一个通过日志来分析问题的和展示问题的软件,那我们就的把问题的关键点回归到日志,在多种数据库中,Postgresql的日志可以说是很全面的,并且都在一个日志体系里面体现,这也就为分析日志创造了方便。

那怎么让postgresql 记录更多的日志以便pgbadger 能进行更多的分析展示就是一个问题。

所以还得先说一下,日志的配置

在基于 stderr 的日志并打开了 logging_collector

然后需要对日志的记录进行微调

log_checkpoints = on

log_connections = on

log_disconnections = on

log_lock_waits = on

log_temp_files = 1

log_autovacuum_min_duration = 1

log_error_verbosity = default

Log_min_duration_statement = 1

log_line_prefix = '%t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h‘

在打开这些开关后,需要重启动数据库

然后直接执行命令生成数据

生成的过程和你的日志的大小有关,所以这里就又得说另外一件事,定期要进行日志的rotate , 保证日志不要太BIG ,导致分析的过程太慢,生成的INDEX.html 文件太大。

上面说过pgbadger 可以最大限度的弥补上一期的监控的分析的缺陷,

其中可以从中获得, 关于connections 的信息

建立连接的中的最大,最小以及平均连接的时间, 每个数据库连接以饼图的方式来进行展示,以每个用户的方式来进行连接展示。同时也可以对session进行同样的分析。这样如果是写周报,就会弥补上一期的monitor software 的一些不足。

另外对checkpoint 的监控也是通过日志中的记录来进行事后分析,其中可以对checkpoint buffers checkpoint files checkpoint warings checkpoint distance 等进行数据的分析和展示

另外对真空/分析分布:显示真空和分析随时间变化的线图,以及消耗CPU处理能力最多的表上的信息给与显示,尤其对目前的PG 来说是重要的,知道目前的vacuum 做的如何。

例如分析每张表,以及tuple 的删除以及每张表的vacuum 和超时的情况。

最后就是锁,与查询的信息了,通过锁与查询的分析,可以找到目前日志文件中这一段时间中最耗时的查询

最后TOP页,可以给出

查询时间直方图,最慢的单个查询,耗时查询:规范化查询及其总持续时间的列表,最频繁查询:一列规范化查询和执行次数,归一化最慢查询:归一化查询及其平均持续时间的列表,等信息。

events 页面也对目前的分析的LOG 本身的信息归属做了一个分析。

PGBADGER 和 上一期的 PGCULL 可能目前的一个问题就是都是英文版本,这一点可能算是一个缺点,除此以外,这两个软件一期基本上可以解决80%以上的性能和突发事件的分析问题。

PGBADGER 的安装会更方便,解压及使用,所以这也是这期根本没说怎么安装的问题。

有问题可以一期解决,欢迎加入

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AustinDatabases 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档