2010年3月16日火曜日

WorkerManagerが起動しなくなったら?

スズキです。

"/etc/init.d/workermanager start"で起動できず、
エラーメッセージがログにも記録されて無い場合は、
作成したワーカーモジュール(Xxx.pm)が文法エラーになっている可能性があります。

そのような場合は、WorkerManagerをデーモン化せず、
デバッグモードで起動すると発見できます。

# workermanager.pl -d -n -f /etc/worker.conf.yml
syntax error at /var/lib/workermanager/lib/Suzlab/Sample/Module.pm
line 63, near "$sweep_dir("
...

下記の通り、"-n"はデーモンかしないで起動、"-d"はデバッグモードのオプションです。

# workermanager.pl -h
usage: /usr/bin/workermanager.pl [-hdn] [-c concurrency] [-w
works_per_child] -f conf_file
-h : this (help) message
-d : debug
-n : prevent deamonize (non fork)
-c : the number of concurrency (default 4).
-w : the number of works per child process (default 100).
-f : YAML-formated file of configuration

Perlにも慣れてきたなー...

--------
http://www.suz-lab.com

0 コメント: