暂无图片
pg中归档日志一天内每小时的归档频率,如何统计
我来答
分享
暂无图片 匿名用户
pg中归档日志一天内每小时的归档频率,如何统计

归档日志一天内每小时的归档频率,如何统计?
效果如下:

HOUR          LOGS_ARCHIVED


2023-03-22 09h 3
2023-03-22 10h 2

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
周波

  在Oracle数据库中统计每小时归档频率或归档大小,可以通过查阅动态性能视图v$archived_log来实现。在PostgreSQL中,虽不能直接通过连接数据库查询相关的系统视图或函数来实现该功能,但可以通过处理分析数据目录下pg_wal/archive_status子目录下的wal日志归档状态文件来达到题主的目的。
  若PostgreSQL数据库开启了归档,则会在archive_status子目录下为每个wal日志段文件创建一个归档状态空文件,以“.done”结尾的文件表示相应的wal日志段文件已完成归档。根据这个特点,可以统计每小时wal日志的归档频率,下面这个命令可以简单实现题主的需求,可按需调整:

ll -htr --full-time *.done| sed -n '2,$p' | awk -F'[: ]+' '{print $6,$7}'|uniq -c|awk 'BEGIN{print "LOG_ARCHIVED","HOUR"}{print}'
暂无图片 评论
暂无图片 有用 1
手机用户9375
2024-10-22
sed -n '2,$p' ----这个是啥意思
周波

ll命令输出的第一行是total 0,是一个无关行;这条命令就是打印第二行至最后一行的信息,你也可以使用tail -n +2来代替。

暂无图片 评论
暂无图片 有用 3
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏