Parse::Syslog - Syslogdateien einfach parsen
Veröffentlicht von Thomas Fahle am (Permalink)
Parse::Syslog von David Schweiker vereinfacht das parsen der Log-Einträge in Syslog-Dateien erheblich.
Beispiel:
#!/usr/bin/perl use warnings; use strict; use Parse::Syslog; my $syslog_parser = Parse::Syslog->new( '/var/log/syslog'); while ( my $entry = $syslog_parser->next() ) { print $entry->{host}; print '|'; print $entry->{program}; print '|'; print $entry->{timestamp}; print '|'; print scalar localtime( $entry->{timestamp} ); print '|'; print $entry->{text}; print "\n"; }
Beispiel: Kombination mit File::Tail
Parse::Syslog kann auch in Kombination mit File::Tail eingesetzt werden.
#!/usr/bin/perl use warnings; use strict; use File::Tail; use Parse::Syslog; my $file = File::Tail->new( name => '/var/log/syslog'); my $syslog_parser = Parse::Syslog->new( $file ); while ( my $entry = $syslog_parser->next() ) { print $entry->{host}; print '|'; print $entry->{program}; print '|'; print $entry->{timestamp}; print '|'; print scalar localtime( $entry->{timestamp} ); print '|'; print $entry->{text}; print "\n"; }