general: GetLogLevel deprecated, using Log3 instead.

git-svn-id: https://svn.fhem.de/fhem/trunk@3659 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
rudolfkoenig 2013-08-10 08:42:31 +00:00
parent a321e4034d
commit 587bd463ab
4 changed files with 60 additions and 43 deletions

View File

@ -150,7 +150,7 @@ CUL_Define($$)
if(uc($defs{$d}{FHTID}) =~ m/^$x/) { if(uc($defs{$d}{FHTID}) =~ m/^$x/) {
my $m = "$name: Cannot define multiple CULs with identical ". my $m = "$name: Cannot define multiple CULs with identical ".
"first two digits ($x)"; "first two digits ($x)";
Log 1, $m; Log3 $name, 1, $m;
return $m; return $m;
} }
} }
@ -163,7 +163,7 @@ CUL_Define($$)
$hash->{MatchList} = \%matchListSlowRF; $hash->{MatchList} = \%matchListSlowRF;
if($dev eq "none") { if($dev eq "none") {
Log 1, "$name device is none, commands will be echoed only"; Log3 $name, 1, "$name device is none, commands will be echoed only";
$attr{$name}{dummy} = 1; $attr{$name}{dummy} = 1;
return undef; return undef;
} }
@ -187,7 +187,7 @@ CUL_Undef($$)
$defs{$d}{IODev} == $hash) $defs{$d}{IODev} == $hash)
{ {
my $lev = ($reread_active ? 4 : 2); my $lev = ($reread_active ? 4 : 2);
Log GetLogLevel($name,$lev), "deleting port for $d"; Log3 $name, $lev, "deleting port for $d";
delete $defs{$d}{IODev}; delete $defs{$d}{IODev};
} }
} }
@ -233,7 +233,6 @@ CUL_Set($@)
my $name = shift @a; my $name = shift @a;
my $type = shift @a; my $type = shift @a;
my $arg = join("", @a); my $arg = join("", @a);
my $ll = GetLogLevel($name,3);
return "This command is not valid in the current rfmode" return "This command is not valid in the current rfmode"
if($sets{$type} && $sets{$type} ne AttrVal($name, "rfmode", "SlowRF")); if($sets{$type} && $sets{$type} ne AttrVal($name, "rfmode", "SlowRF"));
@ -262,7 +261,7 @@ CUL_Set($@)
my $f1 = sprintf("%02x", int($f % 65536) / 256); my $f1 = sprintf("%02x", int($f % 65536) / 256);
my $f0 = sprintf("%02x", $f % 256); my $f0 = sprintf("%02x", $f % 256);
$arg = sprintf("%.3f", (hex($f2)*65536+hex($f1)*256+hex($f0))/65536*26); $arg = sprintf("%.3f", (hex($f2)*65536+hex($f1)*256+hex($f0))/65536*26);
Log $ll, "Setting FREQ2..0 (0D,0E,0F) to $f2 $f1 $f0 = $arg MHz"; Log3 $name, 3, "Setting FREQ2..0 (0D,0E,0F) to $f2 $f1 $f0 = $arg MHz";
CUL_SimpleWrite($hash, "W0F$f2"); CUL_SimpleWrite($hash, "W0F$f2");
CUL_SimpleWrite($hash, "W10$f1"); CUL_SimpleWrite($hash, "W10$f1");
CUL_SimpleWrite($hash, "W11$f0"); CUL_SimpleWrite($hash, "W11$f0");
@ -289,7 +288,7 @@ CUL_Set($@)
GOTBW: GOTBW:
$ob = sprintf("%02x", $ob+$bits); $ob = sprintf("%02x", $ob+$bits);
Log $ll, "Setting MDMCFG4 (10) to $ob = $bw KHz"; Log3 $name, 3, "Setting MDMCFG4 (10) to $ob = $bw KHz";
CUL_SimpleWrite($hash, "W12$ob"); CUL_SimpleWrite($hash, "W12$ob");
CUL_SimpleWrite($hash, $hash->{initString}); CUL_SimpleWrite($hash, $hash->{initString});
@ -303,7 +302,7 @@ GOTBW:
} }
$v = sprintf("%02d", $v-1); $v = sprintf("%02d", $v-1);
$w = $ampllist[$v]; $w = $ampllist[$v];
Log $ll, "Setting AGCCTRL2 (1B) to $v / $w dB"; Log3 $name, 3, "Setting AGCCTRL2 (1B) to $v / $w dB";
CUL_SimpleWrite($hash, "W1D$v"); CUL_SimpleWrite($hash, "W1D$v");
CUL_SimpleWrite($hash, $hash->{initString}); CUL_SimpleWrite($hash, $hash->{initString});
@ -313,7 +312,7 @@ GOTBW:
if($arg !~ m/^\d+$/ || $arg < 4 || $arg > 16); if($arg !~ m/^\d+$/ || $arg < 4 || $arg > 16);
my $w = int($arg/4)*4; my $w = int($arg/4)*4;
my $v = sprintf("9%d",$arg/4-1); my $v = sprintf("9%d",$arg/4-1);
Log $ll, "Setting AGCCTRL0 (1D) to $v / $w dB"; Log3 $name, 3, "Setting AGCCTRL0 (1D) to $v / $w dB";
CUL_SimpleWrite($hash, "W1F$v"); CUL_SimpleWrite($hash, "W1F$v");
CUL_SimpleWrite($hash, $hash->{initString}); CUL_SimpleWrite($hash, $hash->{initString});
@ -362,7 +361,7 @@ WRITEEND:
return "Expecting a 0-padded hex number" return "Expecting a 0-padded hex number"
if((length($arg)&1) == 1 && $type ne "raw"); if((length($arg)&1) == 1 && $type ne "raw");
Log $ll, "set $name $type $arg"; Log3 $name, 3, "set $name $type $arg";
$arg = "l$arg" if($type eq "led"); $arg = "l$arg" if($type eq "led");
$arg = "x$arg" if($type eq "patable"); $arg = "x$arg" if($type eq "patable");
CUL_SimpleWrite($hash, $arg); CUL_SimpleWrite($hash, $arg);
@ -534,7 +533,7 @@ CUL_DoInit($)
if($ver !~ m/^V/) { if($ver !~ m/^V/) {
$attr{$name}{dummy} = 1; $attr{$name}{dummy} = 1;
$msg = "Not an CUL device, got for V: $ver"; $msg = "Not an CUL device, got for V: $ver";
Log 1, $msg; Log3 $name, 1, $msg;
return $msg; return $msg;
} }
$ver =~ s/[\r\n]//g; $ver =~ s/[\r\n]//g;
@ -553,7 +552,7 @@ CUL_DoInit($)
$cmds =~ s/$name cmds =>//g; $cmds =~ s/$name cmds =>//g;
$cmds =~ s/ //g; $cmds =~ s/ //g;
$hash->{CMDS} = $cmds; $hash->{CMDS} = $cmds;
Log 3, "$name: Possible commands: " . $hash->{CMDS}; Log3 $name, 3, "$name: Possible commands: " . $hash->{CMDS};
CUL_SimpleWrite($hash, $hash->{initString}); CUL_SimpleWrite($hash, $hash->{initString});
@ -563,9 +562,9 @@ CUL_DoInit($)
($err, $fhtid) = CUL_ReadAnswer($hash, "FHTID", 0, undef); ($err, $fhtid) = CUL_ReadAnswer($hash, "FHTID", 0, undef);
return "$name: $err" if($err); return "$name: $err" if($err);
$fhtid =~ s/[\r\n]//g; $fhtid =~ s/[\r\n]//g;
Log 5, "GOT CUL fhtid: $fhtid"; Log3 $name, 5, "GOT CUL fhtid: $fhtid";
if(!defined($fhtid) || $fhtid ne $hash->{FHTID}) { if(!defined($fhtid) || $fhtid ne $hash->{FHTID}) {
Log 2, "Setting CUL fhtid from $fhtid to " . $hash->{FHTID}; Log3 $name, 2, "Setting CUL fhtid from $fhtid to " . $hash->{FHTID};
CUL_SimpleWrite($hash, "T01" . $hash->{FHTID}); CUL_SimpleWrite($hash, "T01" . $hash->{FHTID});
} }
@ -626,7 +625,7 @@ CUL_ReadAnswer($$$$)
} }
if($buf) { if($buf) {
Log 5, "CUL/RAW (ReadAnswer): $buf"; Log3 $hash->{NAME}, 5, "CUL/RAW (ReadAnswer): $buf";
$mculdata .= $buf; $mculdata .= $buf;
} }
$mculdata = CUL_RFR_DelPrefix($mculdata) if($type eq "CUL_RFR"); $mculdata = CUL_RFR_DelPrefix($mculdata) if($type eq "CUL_RFR");
@ -663,7 +662,7 @@ CUL_XmitLimitCheck($$)
if(@b > 163) { # Maximum nr of transmissions per hour (unconfirmed). if(@b > 163) { # Maximum nr of transmissions per hour (unconfirmed).
my $name = $hash->{NAME}; my $name = $hash->{NAME};
Log GetLogLevel($name,2), "CUL TRANSMIT LIMIT EXCEEDED"; Log3 $name, 2, "CUL TRANSMIT LIMIT EXCEEDED";
DoTrigger($name, "TRANSMIT LIMIT EXCEEDED"); DoTrigger($name, "TRANSMIT LIMIT EXCEEDED");
} else { } else {
@ -718,7 +717,7 @@ CUL_WriteTranslate($$$)
$msg = substr($msg,6,4) . substr($msg,10); $msg = substr($msg,6,4) . substr($msg,10);
} else { } else {
Log GetLogLevel($name,2), "CUL cannot translate $fn $msg"; Log3 $name, 2, "CUL cannot translate $fn $msg";
return (undef, undef); return (undef, undef);
} }
return ($fn, $msg); return ($fn, $msg);
@ -732,8 +731,9 @@ CUL_Write($$$)
($fn, $msg) = CUL_WriteTranslate($hash, $fn, $msg); ($fn, $msg) = CUL_WriteTranslate($hash, $fn, $msg);
return if(!defined($fn)); return if(!defined($fn));
my $name = $hash->{NAME};
Log 5, "$hash->{NAME} sending $fn$msg"; Log3 $name, 5, "$hash->{NAME} sending $fn$msg";
my $bstring = "$fn$msg"; my $bstring = "$fn$msg";
if($fn eq "F" || # FS20 message if($fn eq "F" || # FS20 message
@ -834,7 +834,7 @@ CUL_Read($)
my $name = $hash->{NAME}; my $name = $hash->{NAME};
my $culdata = $hash->{PARTIAL}; my $culdata = $hash->{PARTIAL};
Log 5, "CUL/RAW: $culdata/$buf"; Log3 $name, 5, "CUL/RAW: $culdata/$buf";
$culdata .= $buf; $culdata .= $buf;
while($culdata =~ m/\n/) { while($culdata =~ m/\n/) {
@ -859,9 +859,9 @@ CUL_Parse($$$$$)
$rssi = hex(substr($dmsg, $l-2, 2)); $rssi = hex(substr($dmsg, $l-2, 2));
$dmsg = substr($dmsg, 0, $l-2); $dmsg = substr($dmsg, 0, $l-2);
$rssi = ($rssi>=128 ? (($rssi-256)/2-74) : ($rssi/2-74)); $rssi = ($rssi>=128 ? (($rssi-256)/2-74) : ($rssi/2-74));
Log GetLogLevel($name,5), "$name: $dmsg $rssi"; Log3 $name, 5, "$name: $dmsg $rssi";
} else { } else {
Log GetLogLevel($name,5), "$name: $dmsg"; Log3 $name, 5, "$name: $dmsg";
} }
########################################### ###########################################
@ -939,7 +939,7 @@ CUL_Parse($$$$$)
$dmsg = "TX".substr($dmsg,1); # t.* is occupied by FHTTK $dmsg = "TX".substr($dmsg,1); # t.* is occupied by FHTTK
} else { } else {
DoTrigger($name, "UNKNOWNCODE $dmsg"); DoTrigger($name, "UNKNOWNCODE $dmsg");
Log GetLogLevel($name,2), "$name: unknown message $dmsg"; Log3 $name, 2, "$name: unknown message $dmsg";
return; return;
} }
@ -986,8 +986,7 @@ CUL_SimpleWrite(@)
} }
my $name = $hash->{NAME}; my $name = $hash->{NAME};
my $ll5 = GetLogLevel($name,5); Log3 $name, 5, "SW: $msg";
Log $ll5, "SW: $msg";
$msg .= "\n" unless($nonl); $msg .= "\n" unless($nonl);
@ -1021,7 +1020,7 @@ CUL_Attr(@)
$hash->{initString} = "X21\nAr"; # X21 is needed for RSSI reporting $hash->{initString} = "X21\nAr"; # X21 is needed for RSSI reporting
CUL_SimpleWrite($hash, $hash->{initString}); CUL_SimpleWrite($hash, $hash->{initString});
} else { } else {
Log 2, $msg; Log3 $name, 2, $msg;
return $msg; return $msg;
} }
@ -1034,7 +1033,7 @@ CUL_Attr(@)
$hash->{initString} = "X21\nZr"; # X21 is needed for RSSI reporting $hash->{initString} = "X21\nZr"; # X21 is needed for RSSI reporting
CUL_SimpleWrite($hash, $hash->{initString}); CUL_SimpleWrite($hash, $hash->{initString});
} else { } else {
Log 2, $msg; Log3 $name, 2, $msg;
return $msg; return $msg;
} }
@ -1049,7 +1048,7 @@ CUL_Attr(@)
} }
Log 2, "Switched $name rfmode to $a[3]"; Log3 $name, 2, "Switched $name rfmode to $a[3]";
delete $hash->{".clientArray"}; delete $hash->{".clientArray"};
} }

View File

@ -147,7 +147,8 @@ Do_On_Till($@)
my $hms_till = sprintf("%02d:%02d:%02d", $hr, $min, $sec); my $hms_till = sprintf("%02d:%02d:%02d", $hr, $min, $sec);
my $hms_now = sprintf("%02d:%02d:%02d", $lt[2], $lt[1], $lt[0]); my $hms_now = sprintf("%02d:%02d:%02d", $lt[2], $lt[1], $lt[0]);
if($hms_now ge $hms_till) { if($hms_now ge $hms_till) {
Log 4, "on-till: won't switch as now ($hms_now) is later than $hms_till"; Log3 $hash->{NAME}, 4,
"on-till: won't switch as now ($hms_now) is later than $hms_till";
return ""; return "";
} }
@ -199,7 +200,7 @@ FS20_Set($@)
return "Bad time spec" if($na == 3 && $a[2] !~ m/^\d*\.?\d+$/); return "Bad time spec" if($na == 3 && $a[2] !~ m/^\d*\.?\d+$/);
my $v = join(" ", @a); my $v = join(" ", @a);
Log GetLogLevel($name,3), "FS20 set $v"; Log3 $name, 3, "FS20 set $v";
(undef, $v) = split(" ", $v, 2); # Not interested in the name... (undef, $v) = split(" ", $v, 2); # Not interested in the name...
my $val; my $val;
@ -214,8 +215,7 @@ FS20_Set($@)
$val = (2**$i)*$j*0.25; $val = (2**$i)*$j*0.25;
if($val >= $a[2]) { if($val >= $a[2]) {
if($val != $a[2]) { if($val != $a[2]) {
Log GetLogLevel($name,2), Log3 $name, 2, "$name: changing timeout to $val from $a[2]";
"$name: changing timeout to $val from $a[2]";
} }
$c .= sprintf("%x%x", $i, $j); $c .= sprintf("%x%x", $i, $j);
last LOOP; last LOOP;
@ -252,7 +252,7 @@ FS20_Set($@)
if($newState) { if($newState) {
my $to = sprintf("%02d:%02d:%02d", $val/3600, ($val%3600)/60, $val%60); my $to = sprintf("%02d:%02d:%02d", $val/3600, ($val%3600)/60, $val%60);
$modules{FS20}{ldata}{$name} = $to; $modules{FS20}{ldata}{$name} = $to;
Log 4, "Follow: +$to setstate $name $newState"; Log3 $name, 4, "Follow: +$to setstate $name $newState";
CommandDefine(undef, $name."_timer at +$to ". CommandDefine(undef, $name."_timer at +$to ".
"setstate $name $newState; trigger $name $newState"); "setstate $name $newState; trigger $name $newState");
} }
@ -389,7 +389,7 @@ FS20_Parse($$)
return "" if(IsIgnored($n)); # Little strange. return "" if(IsIgnored($n)); # Little strange.
readingsSingleUpdate($lh, "state", $v, 1); readingsSingleUpdate($lh, "state", $v, 1);
Log GetLogLevel($n,4), "FS20 $n $v"; Log3 $n, 4, "FS20 $n $v";
if($modules{FS20}{ldata}{$n}) { if($modules{FS20}{ldata}{$n}) {
CommandDelete(undef, $n . "_timer"); CommandDelete(undef, $n . "_timer");
@ -408,7 +408,7 @@ FS20_Parse($$)
} }
if($newState) { if($newState) {
my $to = sprintf("%02d:%02d:%02d", $dur/3600, ($dur%3600)/60, $dur%60); my $to = sprintf("%02d:%02d:%02d", $dur/3600, ($dur%3600)/60, $dur%60);
Log 4, "Follow: +$to setstate $n $newState"; Log3 $n, 4, "Follow: +$to setstate $n $newState";
CommandDefine(undef, $n."_timer at +$to ". CommandDefine(undef, $n."_timer at +$to ".
"setstate $n $newState; trigger $n $newState"); "setstate $n $newState; trigger $n $newState");
$modules{FS20}{ldata}{$n} = $to; $modules{FS20}{ldata}{$n} = $to;

View File

@ -82,8 +82,8 @@ DevIo_SimpleWrite($$$)
return if(!$hash); return if(!$hash);
my $name = $hash->{NAME}; my $name = $hash->{NAME};
my $ll5 = GetLogLevel($name,5); print LOG "DS: $name\n";
Log $ll5, "SW: $msg"; Log3 $name, 5, "SW: $msg";
$msg = pack('H*', $msg) if($ishex); $msg = pack('H*', $msg) if($ishex);
$hash->{USBDev}->write($msg) if($hash->{USBDev}); $hash->{USBDev}->write($msg) if($hash->{USBDev});

View File

@ -99,6 +99,8 @@ sub setGlobalAttrBeforeFork($);
sub setReadingsVal($$$$); sub setReadingsVal($$$$);
sub evalStateFormat($); sub evalStateFormat($);
sub latin1ToUtf8($); sub latin1ToUtf8($);
sub Log($$);
sub Log3($$$);
sub CommandAttr($$); sub CommandAttr($$);
sub CommandDefaultAttr($$); sub CommandDefaultAttr($$);
@ -569,21 +571,30 @@ GetLogLevel(@)
################################################ ################################################
# the new Log with integrated loglevel checking
sub sub
Log($$) Log3($$$)
{ {
my ($loglevel, $text) = @_; my ($dev, $loglevel, $text) = @_;
if(defined($dev) &&
defined($attr{$dev}) &&
defined (my $devlevel = $attr{$dev}{loglevel})) {
return if($loglevel > $devlevel);
} else {
return if($loglevel > $attr{global}{verbose}); return if($loglevel > $attr{global}{verbose});
my @t = localtime; }
my ($seconds, $microseconds) = gettimeofday();
my @t = localtime($seconds);
my $nfile = ResolveDateWildcards($attr{global}{logfile}, @t); my $nfile = ResolveDateWildcards($attr{global}{logfile}, @t);
OpenLogfile($nfile) if(!$currlogfile || $currlogfile ne $nfile); OpenLogfile($nfile) if(!$currlogfile || $currlogfile ne $nfile);
my $tim = sprintf("%04d.%02d.%02d %02d:%02d:%02d", my $tim = sprintf("%04d.%02d.%02d %02d:%02d:%02d",
$t[5]+1900,$t[4]+1,$t[3], $t[2],$t[1],$t[0]); $t[5]+1900,$t[4]+1,$t[3], $t[2],$t[1],$t[0]);
if($attr{global}{mseclog}) { if($attr{global}{mseclog}) {
my ($seconds, $microseconds) = gettimeofday();
$tim .= sprintf(".%03d", $microseconds/1000); $tim .= sprintf(".%03d", $microseconds/1000);
} }
@ -595,6 +606,14 @@ Log($$)
return undef; return undef;
} }
################################################
sub
Log($$)
{
my ($loglevel, $text) = @_;
Log3(undef, $loglevel, $text);
}
##################################### #####################################
sub sub
@ -2707,8 +2726,7 @@ Dispatch($$$)
} }
} else { } else {
Log GetLogLevel($name,3), Log3 $name, 3, "$name: Unknown $mname device detected, " .
"$name: Unknown $mname device detected, " .
"define one to get detailed information."; "define one to get detailed information.";
return undef; return undef;
@ -2718,7 +2736,7 @@ Dispatch($$$)
} }
if(!int(@found)) { if(!int(@found)) {
DoTrigger($name, "UNKNOWNCODE $dmsg"); DoTrigger($name, "UNKNOWNCODE $dmsg");
Log GetLogLevel($name,3), "$name: Unknown code $dmsg, help me!"; Log3 $name, 3, "$name: Unknown code $dmsg, help me!";
return undef; return undef;
} }
} }