# HG changeset patch # User Heiko Schlittermann (CTQ.kx.schlittermann.de) # Date 1304420607 -7200 # Node ID aa87981ccf8c33d9b8aedf059ad4c4bd6647e711 # Parent f6a277e9bda83fec1d0191a939a2a9690683286c use Log::Log4perl diff -r f6a277e9bda8 -r aa87981ccf8c Build.PL --- a/Build.PL Tue May 03 11:50:06 2011 +0200 +++ b/Build.PL Tue May 03 13:03:27 2011 +0200 @@ -7,8 +7,9 @@ dist_version_from => "bin/ftbackup", requires => { perl => "5.10.0", - "Net::FTP" => 0, - "Date::Parse" => 0, + "Net::FTP" => "2.77", + "Date::Parse" => "2.27", + "Log::Log4perl" => "1.16", }, script_files => [glob("bin/*")], diff -r f6a277e9bda8 -r aa87981ccf8c bin/ftbackup --- a/bin/ftbackup Tue May 03 11:50:06 2011 +0200 +++ b/bin/ftbackup Tue May 03 13:03:27 2011 +0200 @@ -15,17 +15,26 @@ use English qw(-no_match_vars); use if $ENV{DEBUG} => qw(Smart::Comments); use File::Temp; +use Log::Log4perl qw(:easy); $ENV{LC_ALL} = "C"; my $ME = basename $0; my $VERSION = "0.9"; +my $LOG_LEVEL = $ALL; my @CONFIGS = ("/etc/$ME.conf", "$ENV{HOME}/.$ME.conf", "$ME.conf"); +Log::Log4perl->easy_init({ + level => $ALL, + file => -t STDERR ? "STDERR" : ">/var/log/ftbackup/log", + layout => "%-6p{1} - %d (%5r) | %m%n" + }); + my $HOSTNAME = hostname; my $NOW = time(); + my $opt_level = undef; my $opt_today = strftime("%F", localtime $NOW); my @opt_debug = (); @@ -53,7 +62,8 @@ our @AT_EXIT; END { $_->() foreach @AT_EXIT } -$SIG{INT} = sub { warn "Got signal INT\n"; exit 1 }; +$SIG{INT} = sub { INFO "Got signal INT\n"; exit 1 }; +$SIG{__DIE__} = sub { LOGDIE @_ }; my %CONFIG = ( FTP_DIR => "backup/