BuzzSaw
view release on metacpan or search on metacpan
lib/BuzzSaw/Parser.pm view on Meta::CPAN
=head1 DESCRIPTION
This is a Moose role which is used to define the required interface
for a BuzzSaw parser module. The parser modules are used to split a
log entry into separate parts, e.g. date, program, pid,
message. Mostly this is a case of being able to handle the particular
date/time format being used in the log entry (e.g. RFC3339).
The BuzzSaw project provides a suite of tools for processing log file
entries. Entries in files are parsed and filtered into a set of events
of interest which are stored in a database. A report generation
framework is also available which makes it easy to generate regular
reports regarding the events discovered.
=head1 ATTRIBUTES
There are no attributes in this role.
=head1 SUBROUTINES/METHODS
Any class which implements this role must provide the following
method.
=over
=item %results = $parser->parse_line($log_entry)
Any class which implements this role must provide an implementation of
the C<parse_line> method. This method will be called for every entry
found (so make sure the code is not too slow). It takes a string and
returns a hash which contains the details of the various parts of the
entry.
The following date and time attributes must always be set in the
returned hash: C<year>, C<month>, C<day>, C<hour>, C<minute>,
C<second>. If a time-zone is specified in the log entry it should be
returned with the key C<time_zone>. These field names must match with
the L<DateTime> attributes.
The C<message> attribute must always be defined (even if it is just an
empty string). The C<program> and C<pid> attributes are optional.
=back
=head1 DEPENDENCIES
This module is powered by L<Moose>.
=head1 SEE ALSO
L<BuzzSaw>, L<BuzzSaw::Filter>, L<BuzzSaw::Parser::RFC3339>
=head1 PLATFORMS
This is the list of platforms on which we have tested this
software. We expect this software to work on any Unix-like platform
which is supported by Perl.
ScientificLinux6
=head1 BUGS AND LIMITATIONS
Please report any bugs or problems (or praise!) to bugs@lcfg.org,
feedback and patches are also always very welcome.
=head1 AUTHOR
Stephen Quinney <squinney@inf.ed.ac.uk>
=head1 LICENSE AND COPYRIGHT
Copyright (C) 2012 University of Edinburgh. All rights reserved.
This library is free software; you can redistribute it and/or modify
it under the terms of the GPL, version 2 or later.
=cut
( run in 1.242 second using v1.01-cache-2.11-cpan-39bf76dae61 )