本文已参与「新人创作礼」活动,一起开启掘金创作之路
某些时候碰到一些诸如连接风暴之类的问题时,如果数据库没有做相关的监控,我们可以通过分析日志获取连接的情况。
下面分享一些PostgreSQL中分析日志中连接数的脚本:
- –统计一天内每小时的session请求数
egrep ‘^2022-02-09’ postgresql-02-09.csv |grep authentication |awk ‘{print $1 " " $2}’ |awk -F: ‘{print $1 }’ |sort |uniq -c
- –指定的一小时每分钟session请求数
egrep ‘^2022-02-09 18:’ postgresql-02-09.csv |grep authentication |awk ‘{print $1 " " $2}’ |awk -F: ‘{print $1 “:” $2 }’ |sort |uniq -c|sort
- –指定的一小时每秒session请求数
egrep ‘^2022-02-09 18:30’ postgresql-02-09.csv |grep authentication |awk ‘{print $1 " " $2}’ |awk -F: ‘{print $1 “:” $2 “:” $3 }’ |sort |uniq -c
- –指定的一小时内每IP请求数
egrep ‘^2022-02-09 18:’ postgresql-02-09.csv |grep authentication |awk ‘{print $1 " " $3}’ |awk -F, ‘{print KaTeX parse error: Expected 'EOF', got '}' at position 3: 5 }̲'|sed -e 's/...…//g’|sort |uniq -c|sort