Ubuntu上PostgreSQL日志查看方法
一、日志文件位置
Ubuntu系统中,PostgreSQL的日志文件默认存储在/var/log/postgresql/目录下,文件命名格式为postgresql-(例如postgresql-14-main.log,为安装的PostgreSQL主版本号)。
二、常用查看命令
1. 查看最新日志(实时滚动)
使用tail -f命令可实时监控日志文件的新增内容,适合快速定位近期错误或异常(如服务启动失败、查询超报错)。
sudo tail -f /var/log/postgresql/postgresql--main.log
按Ctrl+C可停止实时监控。
2. 查看日志末尾固定行数
若只需查看日志的最后N行(例如最后100行),可使用tail -n命令,避免输出过多无用信息:
sudo tail -n 100 /var/log/postgresql/postgresql--main.log
3. 分页查看完整日志
使用less命令可逐页浏览整个日志文件,支持上下翻页(空格键)、跳转行(输入行号+g)、搜索关键字(输入/keyword)等功能,退出时按q键:
sudo less /var/log/postgresql/postgresql--main.log
4. 搜索特定关键字
若需查找日志中的特定内容(如“ERROR”错误、“TIMEOUT”超时),可使用grep命令结合正则表达式,快速定位相关日志条目:
sudo grep "ERROR" /var/log/postgresql/postgresql--main.log
该命令会输出所有包含“ERROR”的日志行,帮助快速排查问题。
三、实时监控系统日志(可选)
PostgreSQL的日志也会通过systemd-journald服务记录,可使用journalctl命令实时查看PostgreSQL服务的日志流:
sudo journalctl -u postgresql.service -f
此命令会显示PostgreSQL服务的所有日志输出(包括标准输出和错误输出),适合监控服务的整体运行状态。
四、注意事项
- 权限要求:PostgreSQL日志文件属于
root用户或postgres组,普通用户需使用sudo提升权限才能查看。 - 日志级别调整:若默认日志级别(WARNING)无法满足需求(如需查看详细查询日志),可修改
postgresql.conf配置文件中的log_level参数(设置为DEBUG或INFO),并重启PostgreSQL服务使配置生效:
更多日志配置选项(如sudo systemctl restart postgresqllog_statement记录执行的SQL语句、log_duration记录查询耗时)可参考PostgreSQL官方文档。
以上就是关于“Ubuntu上PostgreSQL日志如何查看”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm