Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- use strict;
- use warnings;
- use feature 'switch';
- package logger;
- my @loggers;
- my %prefixes = (normal => '>> ', debug => '% ', error => '!! ');
- sub new {
- my ($class,$file,@flags) = @_;
- open my $file_handle, '>' ,$file;
- my $logger = {flags => \@flags, file => $file_handle};
- bless $logger, $class;
- push(@loggers, $logger);
- return $logger;
- }
- sub log_my {
- my ($type,$message) = @_;
- foreach my $logger (@loggers) {
- if ($type ~~ $logger->{flags}) {
- print {$logger->{file}}($prefixes{$type} . "$message\n");
- }
- }
- }
- 1;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement