Log::Log4perl::Config::Watch(3pm) - phpMan

Command: man perldoc info search(apropos)  


Config::Watch(3pm)             User Contributed Perl Documentation             Config::Watch(3pm)



NAME
       Log::Log4perl::Config::Watch - Detect file changes

SYNOPSIS
           use Log::Log4perl::Config::Watch;

           my $watcher = Log::Log4perl::Config::Watch->new(
                                 file            => "/data/my.conf",
                                 check_interval  => 30,
                         );

           while(1) {
               if($watcher->change_detected()) {
                   print "Change detected!\n";
               }
               sleep(1);
           }

DESCRIPTION
       This module helps detecting changes in files. Although it comes with the "Log::Log4perl"
       distribution, it can be used independly.

       The constructor defines the file to be watched and the check interval in seconds.
       Subsequent calls to "change_detected()" will

       o   return a false value immediately without doing physical file checks if
           "check_interval" hasn't elapsed.

       o   perform a physical test on the specified file if the number of seconds specified in
           "check_interval" have elapsed since the last physical check. If the file's
           modification date has changed since the last physical check, it will return a true
           value, otherwise a false value is returned.

       Bottom line: "check_interval" allows you to call the function "change_detected()" as often
       as you like, without paying the performing a significant performance penalty because file
       system operations are being performed (however, you pay the price of not knowing about
       file changes until "check_interval" seconds have elapsed).

       The module clearly distinguishes system time from file system time.  If your (e.g. NFS
       mounted) file system is off by a constant amount of time compared to the executing
       computer's clock, it'll just work fine.

       To disable the resource-saving delay feature, just set "check_interval" to 0 and
       "change_detected()" will run a physical file test on every call.

       If you already have the current time available, you can pass it on to "change_detected()"
       as an optional parameter, like in

           change_detected($time)

       which then won't trigger a call to "time()", but use the value provided.

       SIGNAL MODE

       Instead of polling time and file changes, "new()" can be instructed to set up a signal
       handler. If you call the constructor like

           my $watcher = Log::Log4perl::Config::Watch->new(
                                 file    => "/data/my.conf",
                                 signal  => 'HUP'
                         );

       then a signal handler will be installed, setting the object's variable
       "$self->{signal_caught}" to a true value when the signal arrives. Comes with all the
       problems that signal handlers go along with.

SEE ALSO
AUTHOR
           Mike Schilli, <log4perl AT perlmeister.com>

COPYRIGHT AND LICENSE
       Copyright 2003 by Mike Schilli <m AT perlmeister.com> and Kevin Goess <cpan AT goess.org>.

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



perl v5.10.0                                2007-07-15                         Config::Watch(3pm)

Generated by $Id: phpMan.php,v 4.49 2006/02/26 13:18:18 chedong Exp $ Author: Che Dong
On Apache
Under GNU General Public License
2012-05-24 16:03 @38.107.179.238 Crawled by CCBot/1.0 (+http://www.commoncrawl.org/bot.html)
Valid XHTML 1.0!Valid CSS!