diff options
author | Guilhem Moulin <guilhem@fripost.org> | 2015-07-31 22:40:28 +0200 |
---|---|---|
committer | Guilhem Moulin <guilhem@fripost.org> | 2015-07-31 22:40:30 +0200 |
commit | 69502140d2e229a314bb1eb192d31b9a2c14f981 (patch) | |
tree | 75ba8c76a9f2c1d130107e404da5530f79004850 /imapsync | |
parent | 74ef024258870c9f767688f9305c1fab3e4ce393 (diff) |
Log debug messages to STDERR unless 'logfile' is set.
However don't include timestamps to STDERR, that's the job of the
syslog.
Diffstat (limited to 'imapsync')
-rwxr-xr-x | imapsync | 10 |
1 files changed, 8 insertions, 2 deletions
@@ -96,6 +96,9 @@ my ($DBFILE, $LOCKFILE, $LOGGER_FD); or die "Can't open $CONF->{_}->{logfile}: $!\n"; $LOGGER_FD->autoflush(1); } + elsif ($CONFIG{debug}) { + $LOGGER_FD = \*STDERR; + } } my $DBH; @@ -196,14 +199,17 @@ $DBH->do('PRAGMA foreign_keys = ON'); sub msg($@) { my $name = shift; return unless @_; - logger($name, @_) if defined $LOGGER_FD and $LOGGER_FD ne \*STDERR; + logger($name, @_) if defined $LOGGER_FD and $LOGGER_FD->fileno != fileno STDERR; my $prefix = defined $name ? "$name: " : ''; print STDERR $prefix, @_, "\n"; } sub logger($@) { my $name = shift; return unless @_ and defined $LOGGER_FD; - my $prefix = strftime "%b %e %H:%M:%S ", localtime; + my $prefix = ''; + if ($LOGGER_FD->fileno != fileno STDERR) { + $prefix = strftime "%b %e %H:%M:%S ", localtime; + } $prefix .= "$name: " if defined $name; $LOGGER_FD->say($prefix, @_); } |