サーバーのログの使い方

サーバーで起きたことを読む

書き方

\! tail -n 20 log/postgresql.log
\! grep FATAL log/postgresql.log
ALTER SYSTEM SET log_connections = 'on';
ALTER SYSTEM SET log_min_duration_statement = '100ms';

logging_collector が on だと、ログは $PGDATA の log_directory(log)の log_filename に書かれます。接続に失敗した本当の理由(パスワードが違う・期限切れなど)は、相手には見せずにログの DETAIL にだけ出ます。log_connections・log_disconnections で接続を、log_min_duration_statement で遅い SQL を記録できます。エラーになった SQL は STATEMENT に出ます。

例

\! tail -n 5 log/postgresql.log
\! grep DETAIL log/postgresql.log

実際に打って練習する

PostgreSQL DBA コースの Lv21「サーバーのログを読む」で覚えます。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。

すべてのレベルが、プラチナ以上のプランで遊べます。

PostgreSQL の管理コマンド一覧(DBA)へ戻る