#! @PERL@ -w use strict; use lib '@LR_PERL5LIBDIR@'; use Locale::TextDomain 'lire'; use Lire::Error qw/ missing_argument_usage /; use Lire::LrCommand; my $prog = new Lire::LrCommand(); $prog->init(); $prog->add_report_options(); $prog->add_email_options(); $prog->add_output_format_options(); $prog->add_common_options(); $prog->add_option( 'name' => 'log-file', 'section' => 'report', 'type' => '=s', 'help' => __( 'Sets the log file to convert instead of reading it from STDIN.' ) ); $prog->set_usage( __( '[] +' ) ); $prog->set_help( __( 'Converts a log file using and email it to the recipients specified. The log file is read from STDIN unless the --log-file option is used.' ) ); $prog->parse_options(); my ( $converter, @emails ) = @ARGV; $prog->usage( missing_argument_usage( 'dlf_converter' ) ) unless defined $converter; $prog->usage( __( 'You need at least one email argument.' ) ) unless @emails; my $logfile = $prog->get_option( 'log-file', '-' ); $prog->check_email_requirements(); $prog->check_output_format(); my $report = $prog->generate_report( $converter, $logfile ); $prog->email_report( $report, @emails ); exit(0); __END__ =pod =head1 NAME B - send a report generated from a log file by email =head1 SYNOPSIS B B<[I]> I I... B B<--version> B B<--help> B<[dlf-converters|output-formats|report-templates]> =head1 OPTIONS =over 4 =item B<--help> B<[>I
B<]> If no argument is given, prints usage information and exits. Argument can be one of the following: =over 4 =item dlf-converters Prints the list of available DLF converters and exits. =item output-formats Prints the list of available output formats and exits. =item report-templates Prints the list of available report templates and exits. =back =item B<--version> Prints Lire's version and exits. =item B<--output-format|-o> I Selects the ouput format in which to generate the report. =item B<--template> I Uses the report configuration named I to generate the report. =item B<--log-file> I Selects the log file that should be processed instead of STDIN. =item B<--subject|-s> I Sets the subject of the email message. Defaults to 'Your I report'. =item B<--extra-file> I An additional text file that will be sent along the report. If the output format is txt, it will be appended to the report. =back =head1 DESCRIPTION The B command is similar to the lr_log2report(1) command with the difference that the report is sent by email. The log file is read from STDIN or from the file specified using the B<--log-file> option. The format of the log file is specified using the I argument. Use the B<--help-dlf-converters> option to get a list of all currently available DLF converters. All remaining arguments are interpreted as email addresses to which to send the report. In case the log is passed in a compressed format, it's uncompressed on the fly, using gzip(1). The report will be encapsulated in a MIME email appropriate for the output format. For example, ASCII reports will be sent inline, PDF reports will be sent as a file attachment and HTML reports should appear inline in a HTML-capable mail reader. The From and Reply-To headers in the outgoing emails are set to the values of the I and I configuration variables. =head1 EXAMPLE % lr_log2mail -s "bind8 report" bind8_query \ root "Joe User " < /var/log/query.log =head1 SEE ALSO lr_log2report(1), lr_xml2report(1), lr_xml2mail(1), lire(1), lire(7), documentation in the Lire User Manual =head1 AUTHORS Joost van Baal Francis J. Lacoste =head1 VERSION $Id: lr_log2mail.in,v 1.60 2006/07/23 13:16:33 vanbaal Exp $ =head1 COPYRIGHT Copyright (C) 2000-2004 Stichting LogReport Foundation LogReport@LogReport.org This program is part of Lire. Lire is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program (see COPYING); if not, check with http://www.gnu.org/copyleft/gpl.html. =cut # Local Variables: # mode: cperl # End: