… | |
… | |
46 | my $cb = sub { |
46 | my $cb = sub { |
47 | snd $rport, @_ |
47 | snd $rport, @_ |
48 | if $_[0] <= $loglevel; |
48 | if $_[0] <= $loglevel; |
49 | }; |
49 | }; |
50 | |
50 | |
51 | rcv $SELF, sub { };#d# |
|
|
52 | |
|
|
53 | push @AnyEvent::MP::Kernel::WARN, $cb; |
51 | push @AnyEvent::MP::Kernel::WARN, $cb; |
54 | |
52 | |
55 | # monitor them, silently die |
53 | # monitor them, silently die |
56 | mon $rport, sub { |
54 | mon $rport, sub { |
57 | @AnyEvent::MP::Kernel::WARN = grep $_ != $cb, @AnyEvent::MP::Kernel::WARN; |
55 | @AnyEvent::MP::Kernel::WARN = grep $_ != $cb, @AnyEvent::MP::Kernel::WARN; |
… | |
… | |
74 | $level, |
72 | $level, |
75 | $msg; |
73 | $msg; |
76 | }; |
74 | }; |
77 | |
75 | |
78 | # establish connection |
76 | # establish connection |
79 | my $rport = spawn $node, "AnyEvent::MP::LogCatcher::connect", 0, $lport, $LOGLEVEL; |
77 | AnyEvent::MP::Kernel::snd_to_func $node, "AnyEvent::MP::LogCatcher::connect", 0, $lport, $LOGLEVEL; |
80 | |
78 | |
81 | mon $rport, $lport; |
79 | mon $node, $lport; |
82 | } |
80 | } |
83 | |
81 | |
84 | =item AnyEvent::MP::LogCatcher::catch [$level] |
82 | =item AnyEvent::MP::LogCatcher::catch [$level] |
85 | |
83 | |
86 | Starts catching all log messages from all nodes with level C<$level> or |
84 | Starts catching all log messages from all nodes with level C<$level> or |