File: logger.pl

package info (click to toggle)
tarantool 1.5.2.20.g5f5d924-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 26,568 kB
  • ctags: 18,697
  • sloc: ansic: 109,092; sh: 21,312; cpp: 20,633; xml: 9,666; asm: 2,488; python: 2,195; java: 1,759; perl: 1,002; makefile: 679
file content (21 lines) | stat: -rw-r--r-- 344 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/perl

use strict;
use warnings;
my $log = shift or die "usage: $0 some.log\n";
my $reopen;
$SIG{HUP} = sub { $reopen = 1 };

my $fh;
while (<STDIN>) {
    if ($reopen or not $fh) {
        undef $fh;
        undef $reopen;
        if (open $fh, ">>", $log) {
            select $fh;
            $| = 1;
        }
    }

    print;
}