InfluxDB-Writer
view release on metacpan or search on metacpan
lib/InfluxDB/Writer/CompactFiles.pm view on Meta::CPAN
use Moose;
use Carp qw(croak);
use Log::Any qw($log);
use File::Spec::Functions;
use Sys::Hostname qw(hostname);
use InfluxDB::LineProtocol qw(line2data data2line);
use Time::Moment;
has 'dir' => ( is => 'ro', isa => 'Str', required => 1 );
has 'tags' => ( is => 'ro', isa => 'HashRef', predicate => 'has_tags' );
has 'delete' => ( is => 'ro', isa => 'Bool', default => 1 );
sub run {
my $self = shift;
unless ( -d $self->dir ) {
croak "Not a directory: " . $self->dir;
}
my $now = Time::Moment->now->to_string;
lib/InfluxDB/Writer/FileTailer.pm view on Meta::CPAN
has 'dir' => ( is => 'ro', isa => 'Str', required => 1 );
has 'influx_host' => ( is => 'ro', isa => 'Str', required => 1 );
has 'influx_port' =>
( is => 'ro', isa => 'Int', default => 8086, required => 1 );
has 'influx_db' => ( is => 'ro', isa => 'Str', required => 1 );
has 'flush_size' =>
( is => 'ro', isa => 'Int', required => 1, default => 1000 );
has 'flush_interval' =>
( is => 'ro', isa => 'Int', required => 1, default => 30 );
has 'tags' => ( is => 'ro', isa => 'HashRef', predicate => 'has_tags' );
has '_files' => ( is => 'ro', isa => 'HashRef', default => sub { {} } );
has '_loop' => ( is => 'ro', isa => 'IO::Async::Loop', lazy_build => 1 );
has 'buffer' => ( is => 'ro', isa => 'ArrayRef[Str]', default => sub { [] }, traits => ['Array'],
handles => {
buffer_push => 'push',
buffer_all => 'elements',
buffer_size => 'count',
buffer_splice => 'splice',
buffer_is_empty => 'is_empty',
},
);
( run in 0.706 second using v1.01-cache-2.11-cpan-5f2e87ce722 )