Mercurial > repos > cpt > cpt_psm_recombine
comparison lib/CPT/Logger.pm @ 1:97ef96676b48 draft
planemo upload commit 94b0cd1fff0826c6db3e7dc0c91c0c5a8be8bb0c
author | cpt |
---|---|
date | Mon, 05 Jun 2023 02:51:26 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
0:b18e8268bf4e | 1:97ef96676b48 |
---|---|
1 package CPT::Logger; | |
2 use Moose; | |
3 use strict; | |
4 use warnings; | |
5 use autodie; | |
6 | |
7 # This will eventually be merged into CPT proper. | |
8 | |
9 has 'outfile' => ( is => 'ro', isa => 'Str' ); | |
10 has 'appid' => ( is => 'ro', isa => 'Str' ); | |
11 has 'outfilehandle' => ( is => 'ro', isa => 'FileHandle' ); | |
12 | |
13 my $fh; | |
14 | |
15 sub new { | |
16 my ( $class, %options ) = @_; | |
17 my $self = {%options}; | |
18 bless( $self, $class ); | |
19 if ( $self->{'outfile'} ) { | |
20 open( $fh, '>>', $self->{'outfile'} ); | |
21 } | |
22 return $self; | |
23 } | |
24 | |
25 sub log { | |
26 my ( $self, $message ) = @_; | |
27 my @t = localtime; | |
28 $t[5] += 1900; | |
29 $t[4]++; | |
30 my $time = sprintf "%04d-%02d-%02d %02d:%02d:%02d", | |
31 @t[ 5, 4, 3, 2, 1, 0 ]; | |
32 print $fh "[$time] $message\n"; | |
33 } | |
34 | |
35 no Moose; | |
36 1; | |
37 | |
38 __END__ | |
39 | |
40 =pod | |
41 | |
42 =encoding UTF-8 | |
43 | |
44 =head1 NAME | |
45 | |
46 CPT::Logger | |
47 | |
48 =head1 VERSION | |
49 | |
50 version 1.99.4 | |
51 | |
52 =head1 AUTHOR | |
53 | |
54 Eric Rasche <rasche.eric@yandex.ru> | |
55 | |
56 =head1 COPYRIGHT AND LICENSE | |
57 | |
58 This software is Copyright (c) 2014 by Eric Rasche. | |
59 | |
60 This is free software, licensed under: | |
61 | |
62 The GNU General Public License, Version 3, June 2007 | |
63 | |
64 =cut |