2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

PostgreSQLのログをlogrotate側で管理する設定

Last updated at Posted at 2021-01-16

PostgreSQLのログローテションはローテーションするファイル数を設定できないみたいなので、logrotateで管理する設定が必要となった。
設定方法を備忘録として残す。

設定の流れ

  • PostgreSQLのログをsyslogに流す設定
  • syslogのログ出力設定
  • logrotateのローテションの設定

出力先ファイル

/var/log/postgresql/postgresql.log

PostgreSQLのログをsyslogに流す設定

posgres.conf

vim /usr/local/pgsql/data/postgresql.conf

log_destinationをsyslogに設定

/usr/local/pgsql/data/postgresql.conf
log_destination = 'syslog'  

ファシィリティの設定(syslogとの連携で必要)

/usr/local/pgsql/data/postgresql.conf
syslog_facility = 'LOCAL1'

ログ出力の先頭に表示するフォーマットを設定

/usr/local/pgsql/data/postgresql.conf
log_line_prefix = '[database:%d][user:%u]'  

%d:データベース名
%u:アクセスユーザ名

全てのログを出力

/usr/local/pgsql/data/postgresql.conf
log_statement = 'all'                   # none, ddl, mod, all

postgresql.confの設定反映

SELECT pg_reload_conf()を実行

su postgres
/usr/local/pgsql/bin/psql 

postgres=# SELECT pg_reload_conf();
 pg_reload_conf 
----------------
 t
(1 row)

syslogのログ出力設定

設定ファイル

 vim /etc/rsyslog.conf

以下追加する

# postgres
local1.*                                                /var/log/postgresql/postgresql.log

再起動

/etc/init.d/rsyslog restart

logrotateのローテションの設定

設定ファイル

以下設定ファイル追加

touch /etc/logrotate.d/postgresql 

以下追記

etc/logrotate.d/postgresql
/var/log/postgresql/*.log {
  daily
  compress
  delaycompress
  notifempty
  copytruncate
  missingok
  create 0640 postgres root
  rotate 30
}

logrotateの設定反映

sudo logrotate /etc/logrotate.conf 

ログが出力されているか確認

tail -f -n 100 /var/log/postgresql/postgresql.log

参考サイト

PostgreSQL 実行されたSQLをログに出力(システム全体の設定)
https://www.kakiro-web.com/postgresql/postgresql-sql-log-system.html

PostgreSQL で最低限設定しておくべきログ関連パラメータ+α
https://qiita.com/ynakayama/items/d38c70dd7b61590e3f4e

PostgreSQLをlogratate側で管理する方法
https://www.postgresql.jp/document/9.1/html/logfile-maintenance.html

ログローテーションするためのlogrotate設定とちょっとしたtips
https://qiita.com/K_Yagi/items/7843429f34678e475be6

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?