proxy dies() when a method is invoked and the handle is not valid; add 2 more exclusi...
[scpubgit/Object-Remote.git] / lib / Object / Remote / WatchDog.pm
index 170b2b2..7e4d1fe 100644 (file)
@@ -1,18 +1,20 @@
 package Object::Remote::WatchDog; 
 
 use Object::Remote::MiniLoop; 
-use Object::Remote::Logging qw ( :log :dlog );
+use Object::Remote::Logging qw (:log :dlog router);
 use Moo; 
 
 has timeout => ( is => 'ro', required => 1 );
 
+BEGIN { router()->exclude_forwarding; }
+
 around new => sub {
   my ($orig, $self, @args) = @_; 
   our ($WATCHDOG);
     
   return $WATCHDOG if defined $WATCHDOG;
   log_trace { "Constructing new instance of global watchdog" };
-  return $WATCHDOG = $self->$orig(@args);    
+  return $WATCHDOG = $self->$orig(@args);
 };
 
 #start the watchdog
@@ -38,7 +40,7 @@ sub reset {
   die "Attempt to reset the watchdog before it was constructed"
     unless defined $WATCHDOG; 
   
-  log_trace { "Watchdog has been reset" };
+  log_debug { "Watchdog has been reset" };
   alarm($WATCHDOG->timeout); 
 }
 
@@ -48,6 +50,7 @@ sub reset {
 #it makes sense to still terminate the process
 sub shutdown {
   my ($self) = @_;
+  log_debug { "Watchdog is shutting down" };
   alarm(0); 
 }