その他の注意点
しかしps-watcherは、柔軟であるがゆえに、面倒な部分もある。たとえばアクション行はPerlで解釈されるため、特殊文字は正しくエスケープしなければならない。上記の例では、メールアドレスの中の'@'の前にバックスラッシュを入れた。そうしなければPerlで解釈することができない。ps-watcherを使用する前にはドキュメント(manページ)を注意深く読み、前述のように同一コマンドで複数回マッチングさせることができない点など、その他の制約も理解しておく必要がある。
幸い、ps-watcherにおけるほとんどの問題は、デバッグ機能をオンにすることで解決することができる。ps-watcherをデバッグモードで起動するには、以下のようにコマンドを実行する。
ps-watcher --debug 1 --nodaemon --log --config ps-watcher.cfg
この場合ps-watcherは、起動時にバックグラウンドにはならず、デバッグメッセージを直接コンソールに出力する。これで構成ファイルの問題を特定し修正することができるはずだ。構成ファイルにおけるクォーティングの誤りなどは、デバッグ出力においてwarningとして指摘される場合が多い。
ps-watcherは、ps出力をそのまま表示するということを覚えておいてほしい。ps出力は、FreeBSDやLinuxなどOSによってかなり違いがある。「ps-watcher --help」というコマンドを用いれば、使用中のプラットフォームにおいて有効な変数のリストが表示される。私が最初混同しそうになったのは、プロセスの累積CPU時間がFreeBSDでは$timeであるのに対し、Linuxでは$bsdtimeだということである。一見するとLinuxの$etimeが、FreeBSDの$timeに相当するのかと誤解しがちだ。$etimeは、プロセス起動からの経過実行時間である。
まとめ
小さな問題を1つか2つ修正したいだけのために、包括的なシステムモニタリングツールを使うのはかえって面倒だ。ps-watcherは、マシンのプロセス情報をモニタリングし、それに対する処理を行いたい場合にまず使用するツールとして最適だといえる。
