システム管理支援ソフトの開発について

はじめに

コンピュータ管理は煩瑣な作業であり、管理をコンピュータが支援するのが望ましい。 コンピュータ管理の中でも特 にログ情報の閲覧は、そのデータの膨大さが作業を困難にしている。 本研究では、ログ情報を視覚的に見易くす ることで管理を支援するシステムを設計、作成した。

まず、本研究に関連する従来の結果を紹介する。

xlogmaster

1.概略

Xlogmasterは、XWindowSystem上で操作するログ管理ソフトで、とても速く、 快適な方法で各種ログを表示し、システムで起きたすべてを監視するプログラムです。 それは、logfiles、デバイス、running status-gathering programsを読み、 すべてのデータを翻訳してhighlithing/lowlighting/hiding linesのために フィルターでそれを表示する。または、ユーザーが定義したイベントで行動を開始します。

2.機能

Xlogmasterの機能としてModeとClassがある。XlogmasterはModeからデータを読み取り、 それを処理して表示する。また、より快適にするためにClassフィルタを定義することもできる。

・Mode
TAIL Mode
ファイルを読み、それから何かが変わったかどうかにかかわらず定期的な間隔で読み返す。 実際にtail -fと同じ作用をする。logfileの循環を捕えることができるので、 logfilesが循環するごとにそれを再開する必要がない。
CAT Mode
定義した間隔で、与えたファイル、デバイスを"catting"し続ける。 自分が興味のあるすべてのプロセスデバイスの動向を抑えることができる。 cat "filename"と同じ働きをし、いつでも全ファイルを読むことができる。
RUN Mode
プログラムを始動させ、それをstdoutが検索します。 重要なデータを集めるためにshellscriptプログラムをかくことができ、 xlogmasterが持っているすべての特徴とともにxlogmasterでの出力をモニターする。
・Class
(1)Class0
表示時に適用されるフィルタで、Class0フィルターができる唯一のことは、行で適用することです。 たいてい、最初に適用できるものは、すでに使われています。唯一の例外が"Hide"です。 もしそれが適用することができれば、たとえそれが別のClass0フィルターと一致するとしても行は隠されるでしょう。
(2)Class1
バックグラウンドで使用される。適用されることができることより、すべてのClass1フィルターは理論上ひとつの行で、 数回でさえすべてのフィルターを引き起こすことができる。また、すべてのClass1フィルターはユーザーが選んだ音を鳴らすことができる。
Alert
このボタンは、ログファイルをユーザによって定義された色(デフォルトは赤)にてんとうされる。 そして、与えられた時間以内に正常な色にゆっくり戻す。
Notice
Noticeボックスはエントリー名をあなたに示している現在のマウス位置出急に現れます。 そして、Noticeが引き起こされた日付と共にアラームを引き起こした行に現れます。 Noticeボックスは、何も失わないようにリストを含んでいます。 "dismiss"ボタンをクリックすれば、ボックスはクリアされて見えなくなります。
Uniconify
この出来事が引き起こされると、Xlogmasterは自動的にuniconifyする。 Xlogmaster iconifiedを保つのを好むほうが、限られたデスクトップスペースをもっている人の役に立ちます。
Execute
ユーザによって与えられたプログラムは該当するもの上で実行されています。 いくつかの役に立つデフォルトスクリプトがディストリビューションに含まれるが、 簡単に自分自身のものを書くことができる。 この目的のために、Xlogmasterは いくつかの変数を提供している(エントリー名、エントリーのためのヘルプテキスト 実行を引き起こす行,ファイル/デバイスへの絶対パス。エントリー(TAIL/CAT)の方法)。

3.表示画面

Memory Status
Harddisk Usage
Who's Online
Process Tree

swatch

1.概略
swatchはPerlで書かれたもので、実行するタスクが非常に単純なツールです。 指定されたログを監視し、指定された文字列が現れるとリアルタイムに音を鳴らしたり、 ターミナルにそれらの文字列をエコーバックしたり、特定のユーザにメールを送ることができます。 このように、ログに記録された行為に応じて任意のコマンドを実行できるので柔軟性が非常に高いツールです。

2.設定
swatchには5つのサンプル設定ファイルが含まれています。
swatchrc.monitor サーバに適している。
swatchrc.personal 個人用ワークステーションに適している。
syslog.conf-client クライアントシステムのsyslog.confの代用として使う。
syslog.conf-master ログ「マスター」システムのsyslog.confの代用として使う。
syslog.conf-server サーバーのsyslog.confの代用として使う。

また、swatchは2つの重要な項目、イベントパターンとそれに対応するアクションに依存します。

パターン
swatchは、ログエントリ内に現れる正規表現またはキーワードを探すので、多くのログインイベントに対応することができ、 以下のようなものを処置を必要とするパターンとして設定することができる。

reboot 再起動
filesystem full ファイルシステムが満杯
BAD SU
kunashiri.lac.co.jp FQDN形式のホスト

アクション
.swatchrc設定ファイル何の指定に従って、swatchは疑わしいログインからシステムの停止までを監視し、 次のうちのいずれかのアクションを実行することができる。

echo 反転させたり、太字テキストを使用したりして制御端末に該当するメッセージを表示する。
bell メッセージを表示し、システムピープ音を鳴らす。
mail 関連するログエントリを呼び出しているユーザにメールでメッセージを送る。
exec 指定された引数でコマンドまたはスクリプトを実行する。
pipe パイプを使用してメッセージをプログラムに渡す。
write ユーザの端末に関連するログエントリを書き込む。
ignore 何もしない。
throttle 指定された時間(時:分:秒)内にログエントリが複数記録された場合は、   該当するアクションをその時間内に一度だけ実行する。
continue アクションが完了したあと、ログエントリを照合ファイルの他のwatchforパターンをも照合する。

3.設定例
swatchの設定ファイルは、かなり柔軟に設定を追加することができ、たとえば設定の書式には以下のようなものがあります。

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

ignore /文字列/
ignoreに続いて指定された文字列は無視されます.これは不要な情報をフィルタリングするために使用されます.

設定例1
loginを3回続けて失敗したら、メールを送信。

watchfor = /FAILES LOGIN 3/
echo
mail=root@localserver

設定例2
PAMが認証を拒否したら、メールを送信。

watchfor = /PAM authntification failed/
echo
mail=root@localserver

設定例3
「reject」の文字列をログ内に見つけた場合,ビープ音のベルを3回,さらにykida@xx.xxxxxx.jp宛へメール送信を行う。

watchfor /reject/
bell 3
mail=ykida@xx.xxxxxx.jp

設定例4
指定したログファイルにrefuseという文字列が出てきたら、画面にエコーバックしてベルを一回鳴らし、userにメールを送信します。

watchfor /refuse/
echo bold
bell 1 mail=user,subject=Swatch_About_refuse

4.実行方法
swatchの実行方法は簡単で、基本的に3種類ある。

アクティブモニタ
アクティブモニタとして実行するには、オプションを指定せずにswatchを呼び出す。

任意のログファイルを監査する
swatchでは、UNIXシステムやLinuxシステムで管理している数多くのテキストログファイルのうち、どれでも監査することができます。

他のプログラムから入力を受け取る
swatchで"-p"オプションは、指定したプログラムから入力を受け取ることを示します。 このオプションを使うと、バイナリ形式で保存されたプロセスのアカウンティングファイルを調査することができる。