.
Tips/Swatchインストール のバックアップ(No.2)
[ リロード ]   [ ソース ]  [ トップ | 一覧 | 単語検索 | 最新 | バックアップ | ヘルプ ]


Swatchインストール :D

Swatchとは?

リアルタイムにログを監視し、決定したキーワードがログに現れるとアクションを
起こすことをさせる監視ツールです。

今回用いる動作環境
・RedHatLinux9.0~
・作業ディレクトリ = /home/swatch

Perlモジュールのインストール準備

最新版にて検証したところ、Swatchを動かすためには5つのPerlモジュールが必要です。

必要なPerlモジュールはCPAN からダウンロードが可能です。

モジュール名   検証に用いたバージョン
・Date::Manip   (DateManip-5.44.tar.gz)
・Date::Calc    (Date-Calc-5.4.tar.gz)
・Time::HiRes   (perl-Time-HiRes-1.38-3.i386.rpm)
・File::Tail    (File-Tail-0.99.1.tar.gz)
・Date::Parse   (TimeDate-1.16.tar.gz)
・swatch        (swatch-3.1.1.tar.gz)

※Time::HiRes(Time-HiRes-1.73.tar.gz) モジュールに関してはtarballでインストールができなかったため "rpm" にてインストールしました。
(RedHat9.0CD-ROM2枚目の内容にあります)

Perlモジュールのインストール実施

Swatchを動かすためにそれぞれのPerlモジュールをインストールします。
(順番を考慮する必要があるかもしれませんが、下記手順で問題ありません)

手順 Date::Manipのインストール
 # cd /home/swatch
 # tar xvfzp DateManip-5.44.tar.gz
 # cd DateManip-5.44
 # perl Makefile.PL
 # make
 # make install

手順 Date::Calcのインストール
 # cd /home/swatch
 # tar xvfzp Date-Calc-5.4.tar.gz
 # cd Date-Calc-5.4
 # perl Makefile.PL
 # make
 # make install

手順 Time::HiResのインストール
 # cd /home/swatch
 # rpm -ivh perl-Time-HiRes-1.38-3.i386.rpm

手順 File::Tailのインストール
 # cd /home/swatch
 # tar xvfzp File-Tail-0.99.1.tar.gz
 # cd File-Tail-0.99.1
 # perl Makefile.PL
 # make
 # make install

手順 Date::Parseのインストール
 # cd /home/swatch
 # tar xvfzp TimeDate-1.16.tar.gz
 # cd TimeDate-1.16
 # perl Makefile.PL
 # make
 # make install

Swatchのインストール
Swatch本体もPerlモジュールのインストール方法とさほど変わりません。

swatchのインストール
 # cd /home/swatch
 # tar xvfzp swatch-3.1.1.tar.gz
 # cd swatch-3.1.1
 # perl Makefile.PL
 # make
 # make install

Swatchの設定

Swatchには設定ファイルのサンプルが含まれているので、このサンプルファイルを規定のディレクトリにコピーしてひな型ファイルとして利用します。ここではSwatchの設定ファイルを、".swatchrc"とし/root/ に配置します。

ひな型ファイルを利用する
# cd /home/swatch/swatch-3.1.1/examples
# cp -pf swatchrc.personal /root/.swatchrc

★POINT!!
/var/log/**** 内のログファイルの多くは、root権限でなければ読込めませ
ん。一般ユーザーでもSwatchを起動させることは可能ですが、対象のログファ
イルに読取り権限が必要となります。

パターンおよびアクション
設定ファイルの書式は以下のようになります。

watchfor   /パターン/
          アクション1
          アクション2

☆パターン
マッチさせたい任意の文字列を、watchforの後に"/"で挟み記述します。
ここで記述するパターンにはPerlの正規表現を使用することが可能です。

☆アクションn
パターンでマッチした場合の処理動作を記述します。

関連サイト::パターンおよびアクション記述ルール

■Swatchの起動

Swatchを起動させログの監視を開始させます。

(起動)
# /usr/bin/swatch -c /root/.swatchrc -t /var/log/messages &
 & =バックグラウンドにて実施

(プロセス確認)
# ps aux |grep tail
root 3238 0.0 0.4 3904 588 pts/1 S 20:47 0:00 /usr/bin/tail-n 0 -f /var/log/messages

■Swatchの自動起動スクリプト

起動している"tail" を kill させるスクリプトは下記のとおりです。最後にパーミッションの変更を忘れずに!

(1) # vi /etc/rc.d/init.d/swatch を作成
(2) # chmod 755 swatch

(自動起動スクリプト)
#! /bin/sh
#
# chkconfig: 2345 99 99
# description: tcpserver
# Source function library.
. /etc/rc.d/init.d/functions

RETVAL=0

# See how we were called.
case "$1" in
        start)
                echo -n "Starting Swatch: "
                /usr/bin/swatch -c /root/.swatchrc -t /var/log/messages &
                RETVAL=$?
                echo
                ;;

        stop)
                echo -n "Stopping Swatch: "
                killproc tail
                RETVAL=$?
                echo
                ;;

        restart)
                $0 stop
                $0 start
                RETVAL=$?
                ;;

        *)
                echo "Usage: swatch {start|stop|restart}"
                exit 1

esac
exit $RETVAL


リロード   差分 ソース ファイル添付 添付ファイル一覧   Wikiトップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS
Expert Menu
最新記事
なぜここへ
Yahoo Japanから
検索結果から
友人に聞いて
前からURLを知っていた
他サイトからリンク
最新バージョンの確認

Linuxexpert is one of the service presented by InfomationSquare. / OmakaseBlog Login  |  Register Now!