ログ監視ログの作成
2001-10-22 作成 福島

・既存のログに変化があればそれを検知したい。
・既に走っているログがあり、リアルタイムに分割したいがシステムを停止できない。
といった場合、どうしましょう。

既存のログを監視するプログラムを作成してみました。
ローテート対策がしてあります。

使い方: lw.pl
#!/usr/local/bin/perl

use strict ;

require 'logwatch.pl' ;

my $lw = new logwatch('/var/log/messages', 'TAIL') ;
# 第 2 パラメータを省略した場合、最後尾からの監視となります

while (1)
	{
	my @buf = $lw->get ;
	for ( my $i = 0 ; $i < @buf ; $i ++ )
		{
		print "$buf[$i]\n" ;
		}
	sleep 1 ; # 必ず何秒かのスリープを入れること!
	}