TL;DR
- アレは単に一定間隔でログを吐いているだけ、ログ監視でもしない限り意味はない
- 実は “[keepalive]” セクションに “interval” と “runs” が設定できる
- もちろんマニュアルには何も書いてない
初めてMySQL Routerを使い始めたころから、ずっと「なんだろうこれ」「どことkeepaliveしてんねん」と思っていたこのログ。
$ sudo less /var/log/mysqlrouter/mysqlrouter.log
..
2018-04-03 16:33:00 INFO [7fe222415700] keepalive
2018-04-03 16:34:00 INFO [7fe222415700] keepalive
2018-04-03 16:35:00 INFO [7fe222415700] keepalive
120行もないコードの中でしていることといえば、(最終的には)wait_forで “interval * 1000” ミリ秒 スリープするのを “runs” で指定された回数(0の場合は無限に)繰り返すだけ。
確かに言われてみればコンフィグファイルに書いてあったけど…なんか腑に落ちない…。。
ちなみにこの “runs” 、満了すると黙って keepalive プラグインだけが沈黙する。なんか言えよ…。(ちなみにkeepalive以外のプラグインが有効でない場合は全プラグインがアンロードされてプロセスが正常終了する)
$ tail -f /var/log/mysqlrouter/mysqlrouter.log
2018-10-03 12:30:38 main INFO [7fd33d238780] Loading all plugins.
2018-10-03 12:30:38 main INFO [7fd33d238780] plugin 'keepalive:' loading
2018-10-03 12:30:38 main INFO [7fd33d238780] plugin 'routing:master' loading
2018-10-03 12:30:38 main INFO [7fd33d238780] Initializing all plugins.
2018-10-03 12:30:38 main INFO [7fd33d238780] plugin 'keepalive' initializing
2018-10-03 12:30:38 main INFO [7fd33d238780] plugin 'routing' initializing
2018-10-03 12:30:38 main INFO [7fd33d238780] Starting all plugins.
2018-10-03 12:30:38 main INFO [7fd339fec700] plugin 'keepalive:' starting
2018-10-03 12:30:38 keepalive INFO [7fd339fec700] keepalive started with interval 6
2018-10-03 12:30:38 keepalive INFO [7fd339fec700] keepalive will run 3 time(s)
2018-10-03 12:30:38 keepalive INFO [7fd339fec700] keepalive
2018-10-03 12:30:38 main INFO [7fd3397eb700] plugin 'routing:master' starting
2018-10-03 12:30:38 main INFO [7fd33d238780] Running.
2018-10-03 12:30:38 routing INFO [7fd3397eb700] [routing:master] started: listening on 127.0.0.1:13306
2018-10-03 12:30:44 keepalive INFO [7fd339fec700] keepalive
2018-10-03 12:30:50 keepalive INFO [7fd339fec700] keepalive
取り敢えず3年来の謎は解けたので良いとしよう。。
0 件のコメント :
コメントを投稿