匿名用户pg中归档日志一天内每小时的归档频率,如何统计
归档日志一天内每小时的归档频率,如何统计?
效果如下:
HOUR LOGS_ARCHIVED
2023-03-22 09h 3
2023-03-22 10h 2
我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏
匿名用户归档日志一天内每小时的归档频率,如何统计?
效果如下:
HOUR LOGS_ARCHIVED
2023-03-22 09h 3
2023-03-22 10h 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
墨值悬赏