[SCM] libmessage-passing-perl Debian packaging branch, master, updated. debian/0.111-3-14-g44f6e88
Tomas Doran
bobtfish at bobtfish.net
Mon May 6 11:56:56 UTC 2013
The following commit has been merged in the master branch:
commit 36a4fb49549ffb11e3f72e8676cad50ad88d0968
Author: Tomas Doran <bobtfish at bobtfish.net>
Date: Mon Apr 30 09:18:58 2012 +0100
Fix bug, but multiple inputs still broken (I think)
diff --git a/lib/Log/Stash/DSL.pm b/lib/Log/Stash/DSL.pm
index 7f93f57..1faacd0 100644
--- a/lib/Log/Stash/DSL.pm
+++ b/lib/Log/Stash/DSL.pm
@@ -6,6 +6,7 @@ use Log::Stash::DSL::Factory;
use Carp qw/ confess /;
use Scalar::Util qw/weaken/;
use AnyEvent;
+use Moose::Util qw/ does_role /;
Moose::Exporter->setup_import_methods(
as_is => [qw/ run_log_server log_chain input filter output /],
@@ -25,7 +26,8 @@ sub log_chain (&) {
my $ret = $code->();
my %items = $FACTORY->registry;
$FACTORY->clear_registry;
- weaken($items{$_}) for keys %items;
+ weaken($items{$_}) for grep { does_role($_, 'Log::Stash::Role::Output') } keys %items;
+ #use Data::Dumper; warn Dumper(\%items);
foreach my $name (keys %items) {
next if $items{$name};
warn "Unused output or filter $name in chain\n";
diff --git a/lib/Log/Stash/Input/STDIN.pm b/lib/Log/Stash/Input/Null.pm
similarity index 61%
copy from lib/Log/Stash/Input/STDIN.pm
copy to lib/Log/Stash/Input/Null.pm
index 4e3fd12..607d645 100644
--- a/lib/Log/Stash/Input/STDIN.pm
+++ b/lib/Log/Stash/Input/Null.pm
@@ -1,4 +1,4 @@
-package Log::Stash::Input::STDIN;
+package Log::Stash::Input::Null;
use Moose;
use AnyEvent;
use Try::Tiny;
@@ -6,35 +6,21 @@ use namespace::autoclean;
with 'Log::Stash::Role::Input';
-sub BUILD {
- my $self = shift;
- my $r; $r = AnyEvent->io(fh => \*STDIN, poll => 'r', cb => sub {
- my $input = <STDIN>;
- return unless defined $input;
- chomp($input);
- my $data = try { $self->decode($input) }
- catch { warn $_ };
- return unless $data;
- $self->output_to->consume($data);
- $r;
- });
-}
-
__PACKAGE__->meta->make_immutable;
1;
=head1 NAME
-Log::Stash::Input::STDIN - STDIN input
+Log::Stash::Input::Null - Null input
=head1 SYNOPSIS
- logstash --input STDIN --output STDOUT
- {"foo": "bar"}
- {"foo":"bar"}
+ logstash --input Null --output STDOUT
=head1 DESCRIPTION
+Does nothing (for testing).
+
=head1 SEE ALSO
L<Log::Stash>
diff --git a/t/dsl.t b/t/dsl.t
index 965a30a..846ae73 100644
--- a/t/dsl.t
+++ b/t/dsl.t
@@ -32,41 +32,15 @@ is_deeply [$test->messages], [{foo => 'bar'}];
$c = log_chain {
output logcollector_central => (
- class => 'ZeroMQ',
- connect => "tcp://127.0.0.1:5223",
+ class => 'STDOUT',
);
- output webhook_distributor => (
- class => 'ZeroMQ',
- connect => "tcp://127.0.0.1:5227",
+ input null_in => (
+ class => 'Null',
+ output_to => 'logcollector_central',
);
- filter webhook_distributor_filter => (
- class => 'All', # FIXME
- output_to => 'webhook_distributor',
- );
- output esl_incoming_fanout => (
- class => 'ZeroMQ',
- connect => "tcp://127.0.0.1:5225",
- );
- filter esl_incoming_fanout_filter => (
- class => 'All', # FIXME
- output_to => 'esl_incoming_fanout',
- );
- filter t => (
- class => 'T',
- output_to => [qw/
- logcollector_central
- webhook_distributor_filter
- esl_incoming_fanout_filter
- /],
- );
- input zmq_in => (
- class => 'ZeroMQ',
- socket_bind => 'tcp://127.0.0.1:5222',
- output_to => 't',
- );
- input syslog_in => (
- class => 'Syslog',
- output_to => 't',
+ input test_in => (
+ class => 'STDIN',
+ output_to => 'logcollector_central',
);
};
--
libmessage-passing-perl Debian packaging
More information about the Pkg-perl-cvs-commits
mailing list