Tripletail::FileSentinel - ファイルの更新の監視

# NAME

Tripletail::FileSentinel - ファイルの更新の監視

# SYNOPSIS

      my $fsenti = $TL->getFileSentinel;

      $fsenti->watch('/etc/passwd');
      $fsenti->watch('/var/log/wtmp');

# DESCRIPTION

FCGI モードの際に、特定のファイルが更新されたかどうかを調べて、 更新を検出した場合にプロセスを再起動する。このモジュールは FCGI モードで自動的に使用され、FCGI モードでない時には使用されない。

## METHODS

`$TL->getFileSentinel`

        my $fsenti = $TL->getFileSentinel;

  Tripletail::FileSentinel オブジェクトを取得。

`watch`

        $fsenti->watch('/var/log/wtmp');

  監視対象のファイルを追加する。デフォルトでは次のファイルが 監視対象になっている。

  * プロセスの起動に用いられたスクリプト ($0)
  * `use Tripletail qw(foo.ini);` した時の ini ファイル
`autoWatch`

        $fsenti->autoWatch($include_re, $exclude_re);

  do, require, use されたファイルを自動的に監視対象に追加する。 具体的には autoWatch の実行時点で %INC に含まれるファイルが監視対象となる。 $include_re, $exclude_re には正規表現を指定する。どちらも指定しなかった場合、 autoWatch は何もしない。 $include_re だけを指定した場合はこれにマッチするパスのファイルが、 $exclude_re だけを指定した場合はこれにマッチしないパスのファイルが、両方を指定した場合は $include_re にマッチして $exclude_re にマッチしないパスのファイルが監視対象となる。 Ini パラメータによる自動監視設定を使用すれば、通常プログラム中で autoWatch を直接呼ぶ必要はないが、 require や do でロードしたファイルを自動監視対象に含めたい場合は require, do の実行後に autoWatch を呼ぶ必要がある。

## Ini パラメータ

"FileSentinel" グループに autowatch_include または autowatch_exclude を指定すると、 use でロードされたモジュールのうち、条件にマッチするものが自動的に監視対象に追加される。 この機能を使用すれば、スクリプトごとに依存モジュールを watch で指定する必要がなくなる。パフォーマンスを考慮して、 /lib, /usr/lib 等に含まれる、通常は変更しないファイルは autowatch_exclude で監視対象から外すとよい。

autowatch_include

        autowatch_include = ^/home/me/my_perl_modules

  自動監視対象に含めたいパスを正規表現で指定する。 autowatch_include だけを指定した場合、マッチしたパスのファイルが全て監視対象となる。

autowatch_exclude

        autowatch_exclude = ^/usr/lib/|^/lib/

  自動監視対象から除外したいパスを正規表現で指定する。 autowatch_exclude だけを指定した場合、マッチしないパスのファイルが全て監視対象となる。 autowatch_include と一緒に指定した場合は、 autowatch_include にマッチし、 autowatch_exclude にマッチしないパスのファイルが監視対象となる。

# SEE ALSO

Tripletail
Tripletail::MemorySentinel

# AUTHOR INFORMATION

Copyright 2006 YMIRLINK Inc.

This framework is free software; you can redistribute it and/or modify it under the same terms as Perl itself

このフレームワークはフリーソフトウェアです。あなたは Perl と同じライセンスの 元で再配布及び変更を行うことが出来ます。

Address bug reports and comments to: tl@tripletail.jp

HP : http://tripletail.jp/

Tripletail::FileSentinel - ファイルの更新の監視

# INDEX

- $TL->getFileSentinel
- * use Tripletail qw(foo.ini); した時の ini ファイル
- * プロセスの起動に用いられたスクリプト ($0)
- AUTHOR INFORMATION
- DESCRIPTION
- Ini パラメータ
- METHODS
- NAME
- SEE ALSO
- SYNOPSIS
- Tripletail
- Tripletail::MemorySentinel
- autoWatch
- autowatch_exclude
- autowatch_include
- watch

Tripletail::FileSentinel - ファイルの更新の監視