2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-03-10 09:16:53 +00:00

93_Log2Syslog: V4.6.1

git-svn-id: https://svn.fhem.de/fhem/trunk@17115 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
nasseeder1 2018-08-10 10:23:13 +00:00
parent 369be53e9f
commit 437281fc21

View File

@ -30,6 +30,7 @@
###################################################################################################################### ######################################################################################################################
# Versions History: # Versions History:
# #
# 4.6.1 10.08.2018 some perl warnings, changed IETF Parser
# 4.6.0 08.08.2018 set sendTestMessage added, Attribute "contDelimiter", "sendSeverity" # 4.6.0 08.08.2018 set sendTestMessage added, Attribute "contDelimiter", "sendSeverity"
# 4.5.1 07.08.2018 BSD Regex changed, setpayload of BSD changed # 4.5.1 07.08.2018 BSD Regex changed, setpayload of BSD changed
# 4.5.0 06.08.2018 Regex capture groups used in parsePayload to set variables, parsing of BSD changed, # 4.5.0 06.08.2018 Regex capture groups used in parsePayload to set variables, parsing of BSD changed,
@ -77,7 +78,7 @@ eval "use Net::Domain qw(hostname hostfqdn hostdomain domainname);1" or my $Mis
# #
sub Log2Syslog_Log3slog($$$); sub Log2Syslog_Log3slog($$$);
my $Log2SyslogVn = "4.6.0"; my $Log2SyslogVn = "4.6.1";
# Mappinghash BSD-Formatierung Monat # Mappinghash BSD-Formatierung Monat
my %Log2Syslog_BSDMonth = ( my %Log2Syslog_BSDMonth = (
@ -517,8 +518,10 @@ sub Log2Syslog_parsePayload($$) {
Log2Syslog_Log3slog ($hash, 1, "Log2Syslog $name - error parse msg -> $data"); Log2Syslog_Log3slog ($hash, 1, "Log2Syslog $name - error parse msg -> $data");
} }
no warnings 'uninitialized';
Log2Syslog_Log3slog($name, 4, "$name - parsed message -> FAC: $fac, SEV: $sev, MM: $Mmm, Day: $dd, TIME: $time, TS: $ts, HOST: $host, ID: $id, CONT: $cont"); Log2Syslog_Log3slog($name, 4, "$name - parsed message -> FAC: $fac, SEV: $sev, MM: $Mmm, Day: $dd, TIME: $time, TS: $ts, HOST: $host, ID: $id, CONT: $cont");
$host = "" if($host eq "-"); $host = "" if($host eq "-");
use warnings;
$phost = $host?$host:$phost; $phost = $host?$host:$phost;
# Payload zusammenstellen für Event/Reading # Payload zusammenstellen für Event/Reading
@ -536,7 +539,8 @@ sub Log2Syslog_parsePayload($$) {
} elsif ($pp eq "IETF") { } elsif ($pp eq "IETF") {
# IETF Protokollformat https://tools.ietf.org/html/rfc5424 # IETF Protokollformat https://tools.ietf.org/html/rfc5424
# Beispiel data "<$prival>1 $tim $host $id $pid $mid - : $otp"; # Beispiel data "<$prival>1 $tim $host $id $pid $mid - : $otp";
$data =~ /^<(?<prival>\d{1,3})>(?<ietf>\d+)\s(?<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})>(?<ietf>\d+)\s(?<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})>(?<ietf>\d+)\s(?<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
$ietf = $+{ietf}; # must $ietf = $+{ietf}; # must
$date = $+{date}; # must $date = $+{date}; # must