📝 設定ファイル解説:config.js
設定ファイル詳説:ログコマンド設定
config.js 設定例
/**
* ---------------------------------------------------------------
* ログコマンド設定
* ---------------------------------------------------------------
*/
logs: {
https: [
['/var/log/httpd/ssl_request_log', ['-cS', 'apache']],
['/var/log/httpd/ssl_error_log', ['-cS', 'apache_errors']],
],
http: [
['/var/log/httpd/access_log', ['-cS', 'apache']],
['/var/log/httpd/error_log', ['-cS', 'apache_errors']],
],
db: [
['/var/log/mysql/query.log', ['-ci', 'green']],
],
app: [
['/var/log/https/slime/logs/app.log', ['-ci', 'yellow']],
],
},
logs
コマンド lamp logs を実行するとこの設定で定義されたファイルが MultiTail によってコンソール上にログを表示&追記を監視します。
上記設定のフォーマットは以下の通りです。
logs: {
(グループ名A): [
['(ファイルパス1)', (MultiTailへ渡すオプション引数1)],
['(ファイルパス2)', (MultiTailへ渡すオプション引数2)],
...
],
(グループ名B): [
['(ファイルパス3)', (MultiTailへ渡すオプション引数3)],
...
...
グループはログリストをひとまとめにするもので、グループ名はコマンドから選択する際のヒントとなるものです。
例えば冒頭の例で言うと、
$ lamp logs http
とすると http グループで指定した2ファイルの中身を表示&監視します。
$ lamp logs http app
とすると http と app グループで指定したファイルが、画面を縦にスプリットされ表示されます。
また、グループ指定なし lamp logs を打つと、一番最初のグループのみ表示されます。
仕組み
オプション引数も含め、設定された値を以下のようなフォーマットで構成して単純に MultiTail へ渡しているだけです。 ※詳細なオプションは MultiTail 公式サイトを御覧ください。
multitail -s (縦分割数) (MultiTailへ渡すオプション引数1) (ファイルパス1) (MultiTailへ渡すオプション引数2) (ファイルパス2) ...
例えば冒頭の例で言うとこうなります。
multitail -s 2 -cS apache /var/log/httpd/access_log -cS apache_errors -I /var/log/httpd/error_log -ci green /var/log/mysql/query.log
※ Multitail 用に Apacheエラーログフォーマットの定義を追加しておきました。
MultiTailへ渡すオプションにて ['-cS', 'apache_errors'] として利用可能です。