#! /usr/bin/perl -w

use strict;

use lib '/usr/local/share/perl5';

use Lire::LrCommand;
use Lire::UI;

my $prog = new Lire::LrCommand();
$prog->init();

my $ui = Lire::UI->new();
$ui->curses_ui()->clear_on_exit( 1 );
exit( $ui->mainloop() );

__END__

=pod

=head1 NAME

lire - Lire interface

=head1 SYNOPSIS

B<lire>

=head1 DESCRIPTION

B<lire> has two purposes: it configures Lire, and it enables automatic report
generation.

B<lire> is a menu driven application. You should use the TAB key to navigate
across the various interface elements. The arrow keys should be used to
navigate menus.  The main menubar can be accessed at all times using F10.  The
mouse might be available depending on your terminal and the implementation of
the Curses::UI module of your system.

=head2 configuring Lire

The 'Preferences' menu item in the 'Lire' menu will give you access to all the
Lire settings.  The lire command edits or creates ~/.lire/config.xml.

=head2 automatic report generation

B<lire> enables automatic report generation by creating and managing DLF
stores.  A I<DLF store> is a log repository. In a DLF store, you can configure
ImportJobs and ReportJobs that will be executed regularly.  Store configuration
is saved in store/config.xml.

An I<ImportJob> is a job that will import log data into the DLF store. This
data will be used later to generate the reports.

I<ReportJobs> should be used to generate periodical reports. Reports are
generated from the DLF streams available in your DLF store.  The report can be
generated for different schedules. Lire supports 5 different schedules: hourly,
daily, weekly, monthly and yearly.

You will need to select the report configuration file to use for each
schedule. Defaults are located in <sysconfdir>/lire/, which you should use
as templates that you need to customize according to your purpose.

The reports can be generated either from the log data imported in the
database or from previously generated B<daily> reports. This is useful
when you have lots of log data and you don't want to keep all the raw data
available. The source is selected automatically based on data
availability. You should note however that only 'daily' reports are
considered as a data source for other reports (making that possible
only with weekly or longer schedules).

When executed, a ReportSchedule will only generate the report and save
it in the DLF store. If you want to obtain a formatted copy of the
report, you will need to configure one or more I<OutputJobs>.

Two types of OutputJob are supported:

1- The report can be sent by email to one or more address;

2- or it can saved in a file on the disk. A useful configuration is to
generate HTML reports in a directory published on a web site. When using
a "file" OutputJob you will probably want to use strftime(3) expansion so
that the filename is different each time the report is generated. The
most common expansions are:

  %Y - fou digits year (2000);
  %m - two-digits month number (01 for january);
  %V - ISO week number;
  %d - day of the month number;
  %H - hour of day (01-23).

Also, contrary to the lr_log2report command, HTML reports are
generated into a directory (not as a tar file).

To run the scheduled jobs, you will need to setup cron jobs.  Use lr_cron(1) to
process the configured jobs in a store.

=head1 SEE ALSO

lire(7), lr_cron(1), Lire User's Manual

=head1 AUTHORS

Francis J. Lacoste <flacoste@logreport.org>
Wolfgang Sourdeau <wolfgang@logreport.org>

=head1 VERSION

$Id: lire.in,v 1.10 2006/07/23 13:16:32 vanbaal Exp $

=head1 COPYRIGHT

Copyright (C) 2004 Stichting LogReport Foundation,
LogReport@LogReport.org

This program 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:
