ablog

不器用で落着きのない技術者のメモ

Pgpool-II で詳細にログ出力する

Pgpool-II で詳細にログ出力してみる。

ログ出力

  • /var/log/pgpool.log
Oct 29 09:52:35 ip-***-**-4-52 pgpool[30235]: [34-1] 2020-10-29 09:52:35:, pid:30235, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:17, LOG:  statement:  DISCARD ALL
Oct 29 09:52:35 ip-***-**-4-52 pgpool[30235]: [35-1] 2020-10-29 09:52:35:, pid:30235, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:18, LOG:  DB node id: 1 backend pid: 2
8831 statement:  DISCARD ALL
Oct 29 09:53:01 ip-***-**-4-52 pgpool[30232]: [21-1] 2020-10-29 09:53:01:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:1, LOG:  Query message from frontend.
Oct 29 09:53:01 ip-***-**-4-52 pgpool[30232]: [21-2] 2020-10-29 09:53:01:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:2, DETAIL:  query: "select /*test102*/
 3;"
Oct 29 09:53:01 ip-***-**-4-52 pgpool[30232]: [22-1] 2020-10-29 09:53:01:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:3, LOG:  statement: select /*test102*/
 3;
Oct 29 09:53:01 ip-***-**-4-52 pgpool[30232]: [23-1] 2020-10-29 09:53:01:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:4, LOG:  DB node id: 1 backend pid: 97
57 statement: SELECT version()
Oct 29 09:53:01 ip-***-**-4-52 pgpool[30232]: [24-1] 2020-10-29 09:53:01:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:5, LOG:  DB node id: 1 backend pid: 97
57 statement: select /*test102*/ 3;
Oct 29 09:54:36 ip-***-**-4-52 pgpool[30232]: [25-1] 2020-10-29 09:54:36:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:6, LOG:  Query message from frontend.
Oct 29 09:54:36 ip-***-**-4-52 pgpool[30232]: [25-2] 2020-10-29 09:54:36:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:7, DETAIL:  query: "/*NO LOAD BALANCE*
/ select /*test102*/ 3;"
Oct 29 09:54:36 ip-***-**-4-52 pgpool[30232]: [26-1] 2020-10-29 09:54:36:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:8, LOG:  statement: /*NO LOAD BALANCE*
/ select /*test102*/ 3;
Oct 29 09:54:36 ip-***-**-4-52 pgpool[30232]: [27-1] 2020-10-29 09:54:36:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:9, LOG:  DB node id: 1 backend pid: 97
57 statement: /*NO LOAD BALANCE*/ select /*test102*/ 3;
Oct 29 09:56:48 ip-***-**-4-52 pgpool[30232]: [28-1] 2020-10-29 09:56:48:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:10, LOG:  Terminate message from front
end.
Oct 29 09:56:48 ip-***-**-4-52 pgpool[30232]: [29-1] 2020-10-29 09:56:48:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:11, LOG:  statement:  DISCARD ALL
Oct 29 09:56:48 ip-***-**-4-52 pgpool[30232]: [30-1] 2020-10-29 09:56:48:, pid:30232, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:12, LOG:  DB node id: 1 backend pid: 9
757 statement:  DISCARD ALL
Oct 29 10:31:39 ip-***-**-4-52 pgpool[30239]: [21-1] 2020-10-29 10:31:39:, pid:30239, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:1, LOG:  Query message from frontend.
Oct 29 10:31:39 ip-***-**-4-52 pgpool[30239]: [21-2] 2020-10-29 10:31:39:, pid:30239, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:2, DETAIL:  query: "/*NO LOAD BALANCE*
/ select /*test404*/ 404;"
Oct 29 10:31:39 ip-***-**-4-52 pgpool[30239]: [22-1] 2020-10-29 10:31:39:, pid:30239, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:3, LOG:  statement: /*NO LOAD BALANCE*
/ select /*test404*/ 404;
Oct 29 10:31:39 ip-***-**-4-52 pgpool[30239]: [23-1] 2020-10-29 10:31:39:, pid:30239, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:4, LOG:  DB node id: 1 backend pid: 13
172 statement: SELECT version()
Oct 29 10:31:39 ip-***-**-4-52 pgpool[30239]: [24-1] 2020-10-29 10:31:39:, pid:30239, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:5, LOG:  DB node id: 1 backend pid: 13
172 statement: /*NO LOAD BALANCE*/ select /*test404*/ 404;
Oct 29 10:38:25 ip-***-**-4-52 pgpool[15464]: [90-1] 2020-10-29 10:38:25:, pid:15464, proc_name:MAIN, db_name:[No Connection], user:[No Connection], app_name:[No Connection], line_num:91, LOG:  c
hild process with pid: 30232 exits with status 256
Oct 29 10:38:25 ip-***-**-4-52 pgpool[15464]: [91-1] 2020-10-29 10:38:25:, pid:15464, proc_name:MAIN, db_name:[No Connection], user:[No Connection], app_name:[No Connection], line_num:92, LOG:  f
ork a new child process with pid: 10513
Oct 29 12:33:05 ip-***-**-4-52 pgpool[30239]: [25-1] 2020-10-29 12:33:05:, pid:30239, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:6, ERROR:  unable to read data from fr
ontend
Oct 29 12:33:05 ip-***-**-4-52 pgpool[30239]: [25-2] 2020-10-29 12:33:05:, pid:30239, proc_name:CHILD, db_name:writer, user:awsuser, app_name:psql, line_num:7, DETAIL:  socket read failed with an
 error "Connection reset by peer"

設定

  • /etc/pgpoolII/pgpool.conf を設定する
# - What to log -
log_line_prefix = '%t:, pid:%p, proc_name:%P, db_name:%d, user:%u, app_name:%a, line_num:%l, '   # printf-style string to output at beginning of each log line.
log_connections = off
                                   # Log connections
log_hostname = on
                                   # Hostname will be shown in ps status
                                   # and in logs if connections are logged
log_statement = on
                                   # Log all statements
log_per_node_statement = on
                                   # Log all statements
                                   # with node and backend informations
log_client_messages = on
                                   # Log any client messages
log_standby_delay = 'none'
                                   # Log standby delay
                                   # Valid values are combinations of always,
                                   # if_over_threshold, none

# - Syslog specific -

syslog_facility = 'LOCAL0'
                                   # Syslog local facility. Default to LOCAL0
syslog_ident = 'pgpool'
                                   # Syslog program identification string
                                   # Default to 'pgpool'

# - Debug -

log_error_verbosity = verbose          # terse, default, or verbose messages
client_min_messages = debug5           # values in order of decreasing detail:
log_min_messages = debug5             # values in order of decreasing detail:
  • 設定をリロード
$ sudo systemctl reload pgpool.service