DJBさんのdaemontoolsでは、multilogというコマンドでサービスディレクトリの下にlogディレクトリを作ってログを格納するのが一般的です。multilogは便利なのですが、daemontools配下のサービスが多くなると、全サービスのログを集めて時系列に表示させたくなります(よね?)。そこでmultilog-collectorというのを3年くらい前に作りましたが当時はRuby1.8系でそのままメンテナンスもサボっていたので少し手を入れてRuby1.9以降で動くように修正しましたのでこの機会にご紹介します。
multilog-collectorとは
daemontoolsの全サービス以下にあるmultilogが出力するログを集めて時系列に並び直してtailするツールです。
インストール
gem install multilog-collector
※必要に応じてsudoしてください
multilog-collectorというコマンドがインストールされます。
使い方
単に以下のようにコマンドを実行します。
multilog-collector
daemontoolsのサービスが/serivice以外にあるときには、以下のように設定してください(例: /etc/service)
multilog-collector -d /etc/service
デフォルトでは、最新100件を表示するようにしています。表示件数を変更するときには以下のように設定してください(例: 200 件)
multilog-collector -l 200
ログの出力では、tai64nlocal相当のことをしてます。