2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-04-21 07:56:03 +00:00

93_Log2Syslog: contrib V4.8.1

git-svn-id: https://svn.fhem.de/fhem/trunk@17130 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
nasseeder1 2018-08-12 18:57:45 +00:00
parent 9dd088b93b
commit 2145e7fe02

View File

@ -30,6 +30,7 @@
###################################################################################################################### ######################################################################################################################
# Versions History: # Versions History:
# #
# 4.8.1 12.08.2018 IETF-Syslog without VERSION changed, Log verbose 1 to 2 changed in parsePayload
# 4.8.0 12.08.2018 enhanced IETF Parser to match logs without version # 4.8.0 12.08.2018 enhanced IETF Parser to match logs without version
# 4.7.0 10.08.2018 Parser for TPLink # 4.7.0 10.08.2018 Parser for TPLink
# 4.6.1 10.08.2018 some perl warnings, changed IETF Parser # 4.6.1 10.08.2018 some perl warnings, changed IETF Parser
@ -80,7 +81,7 @@ eval "use Net::Domain qw(hostname hostfqdn hostdomain domainname);1" or my $Mis
# #
sub Log2Syslog_Log3slog($$$); sub Log2Syslog_Log3slog($$$);
my $Log2SyslogVn = "4.8.0"; my $Log2SyslogVn = "4.8.1";
# Mappinghash BSD-Formatierung Monat # Mappinghash BSD-Formatierung Monat
my %Log2Syslog_BSDMonth = ( my %Log2Syslog_BSDMonth = (
@ -507,7 +508,7 @@ sub Log2Syslog_parsePayload($$) {
if(!$prival) { if(!$prival) {
$err = 1; $err = 1;
Log2Syslog_Log3slog ($hash, 1, "Log2Syslog $name - error parse msg -> $data"); Log2Syslog_Log3slog ($hash, 2, "Log2Syslog $name - error parse msg -> $data");
} else { } else {
if(looks_like_number($prival)) { if(looks_like_number($prival)) {
@ -566,7 +567,7 @@ sub Log2Syslog_parsePayload($$) {
} }
} else { } else {
# IETF-Syslog ohne VERSION # IETF-Syslog ohne VERSION
$data =~ /^<(?<prival>\d{1,3})>(?<date>\d{4}-\d{2}-\d{2})T(?<time>\d{2}:\d{2}:\d{2})\S*\s(?<host>\S*)\s(?<id>\S*)\s?(?<pid>\S*)\s?(?<mid>\S*)\s?(?<sdfield>(\[.*?(?!\\\]).\]|-))\s(?<cont>.*)$/; $data =~ /^<(?<prival>\d{1,3})>(?<date>\d{4}-\d{2}-\d{2})T(?<time>\d{2}:\d{2}:\d{2})\S*\s(?<host>\S*)\s(?<id>\S*)\s?(?<pid>\S*)\s?(?<mid>\S*)\s?(?<sdfield>(\[.*?(?!\\\]).\]|-))?\s(?<cont>.*)$/;
$prival = $+{prival}; # must $prival = $+{prival}; # must
$date = $+{date}; # must $date = $+{date}; # must
$time = $+{time}; # must $time = $+{time}; # must
@ -574,13 +575,13 @@ sub Log2Syslog_parsePayload($$) {
$id = $+{id}; # should $id = $+{id}; # should
$pid = $+{pid}; # should $pid = $+{pid}; # should
$mid = $+{mid}; # should $mid = $+{mid}; # should
$sdfield = $+{sdfield}; # must $sdfield = $+{sdfield}; # should
$cont = $+{cont}; # should $cont = $+{cont}; # should
} }
if(!$prival || !$date || !$time) { if(!$prival || !$date || !$time) {
$err = 1; $err = 1;
Log2Syslog_Log3slog ($hash, 1, "Log2Syslog $name - error parse msg -> $data"); Log2Syslog_Log3slog ($hash, 2, "Log2Syslog $name - error parse msg -> $data");
no warnings 'uninitialized'; no warnings 'uninitialized';
Log2Syslog_Log3slog($name, 5, "$name - parsed fields -> PRI: $prival, IETF: $ietf, DATE: $date, TIME: $time, HOST: $host, ID: $id, PID: $pid, MID: $mid, SDFIELD: $sdfield, CONT: $cont"); Log2Syslog_Log3slog($name, 5, "$name - parsed fields -> PRI: $prival, IETF: $ietf, DATE: $date, TIME: $time, HOST: $host, ID: $id, PID: $pid, MID: $mid, SDFIELD: $sdfield, CONT: $cont");
use warnings; use warnings;
@ -594,7 +595,7 @@ sub Log2Syslog_parsePayload($$) {
$sev = $Log2Syslog_Severity{$severity}; $sev = $Log2Syslog_Severity{$severity};
} else { } else {
$err = 1; $err = 1;
Log2Syslog_Log3slog ($hash, 1, "Log2Syslog $name - error parse msg -> $data"); Log2Syslog_Log3slog ($hash, 2, "Log2Syslog $name - error parse msg -> $data");
} }
# Längenbegrenzung nach RFC5424 # Längenbegrenzung nach RFC5424
@ -634,7 +635,7 @@ sub Log2Syslog_parsePayload($$) {
if(!$prival || !$date || !$time) { if(!$prival || !$date || !$time) {
$err = 1; $err = 1;
Log2Syslog_Log3slog ($hash, 1, "Log2Syslog $name - error parse msg -> $data"); Log2Syslog_Log3slog ($hash, 2, "Log2Syslog $name - error parse msg -> $data");
} else { } else {
$ts = "$date $time"; $ts = "$date $time";
@ -645,7 +646,7 @@ sub Log2Syslog_parsePayload($$) {
$sev = $Log2Syslog_Severity{$severity}; $sev = $Log2Syslog_Severity{$severity};
} else { } else {
$err = 1; $err = 1;
Log2Syslog_Log3slog ($hash, 1, "Log2Syslog $name - error parse msg -> $data"); Log2Syslog_Log3slog ($hash, 2, "Log2Syslog $name - error parse msg -> $data");
} }
no warnings 'uninitialized'; no warnings 'uninitialized';
@ -694,7 +695,7 @@ sub Log2Syslog_parsePayload($$) {
eval $parseFn; eval $parseFn;
if($@) { if($@) {
Log3 $name, 1, "DbLog $name -> error parseFn: $@"; Log3 $name, 2, "DbLog $name -> error parseFn: $@";
$err = 1; $err = 1;
} }
@ -718,7 +719,7 @@ sub Log2Syslog_parsePayload($$) {
$sev = $Log2Syslog_Severity{$severity}; $sev = $Log2Syslog_Severity{$severity};
} else { } else {
$err = 1; $err = 1;
Log2Syslog_Log3slog ($hash, 1, "Log2Syslog $name - error parse msg -> $data"); Log2Syslog_Log3slog ($hash, 2, "Log2Syslog $name - error parse msg -> $data");
} }
Log2Syslog_Log3slog($name, 4, "$name - parsed message -> FAC: $fac, SEV: $sev, TS: $ts, HOST: $host, ID: $id, PID: $pid, MID: $mid, CONT: $cont"); Log2Syslog_Log3slog($name, 4, "$name - parsed message -> FAC: $fac, SEV: $sev, TS: $ts, HOST: $host, ID: $id, PID: $pid, MID: $mid, CONT: $cont");