added readings: starttime_text, starttime, fhemstarttime_text, fhemstarttime, cpu_freq_stat

git-svn-id: https://svn.fhem.de/fhem/trunk@8491 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
hexenmeister 2015-04-27 20:59:31 +00:00
parent d6f1fa9276
commit 9d71cc948e

View File

@ -37,13 +37,17 @@ use Data::Dumper;
my $missingModulRemote; my $missingModulRemote;
eval "use Net::Telnet;1" or $missingModulRemote .= "Net::Telnet "; eval "use Net::Telnet;1" or $missingModulRemote .= "Net::Telnet ";
my $VERSION = "2.1.8"; my $VERSION = "2.1.9";
use constant { use constant {
PERL_VERSION => "perl_version", PERL_VERSION => "perl_version",
DATE => "date", DATE => "date",
UPTIME => "uptime", UPTIME => "uptime",
UPTIME_TEXT => "uptime_text", UPTIME_TEXT => "uptime_text",
STARTTIME_TEXT => "starttime_text",
STARTTIME => "starttime",
FHEMSTARTTIME_TEXT => "fhemstarttime_text",
FHEMSTARTTIME => "fhemstarttime",
FHEMUPTIME => "fhemuptime", FHEMUPTIME => "fhemuptime",
FHEMUPTIME_TEXT => "fhemuptime_text", FHEMUPTIME_TEXT => "fhemuptime_text",
IDLETIME => "idletime", IDLETIME => "idletime",
@ -340,6 +344,11 @@ SYSMON_updateCurrentReadingsMap($) {
$rMap->{"uptime"} = "System up time"; $rMap->{"uptime"} = "System up time";
$rMap->{"uptime_text"} = "System up time"; $rMap->{"uptime_text"} = "System up time";
$rMap->{+STARTTIME_TEXT} = "System start time";
$rMap->{+STARTTIME} = "System start time";
$rMap->{+FHEMSTARTTIME} = "Fhem start time";
$rMap->{+FHEMSTARTTIME_TEXT} = "Fhem start time";
# Werte fuer GesamtCPU # Werte fuer GesamtCPU
$rMap->{"stat_cpu"} = "CPU statistics"; $rMap->{"stat_cpu"} = "CPU statistics";
@ -1548,6 +1557,10 @@ SYSMON_getUptime($$)
#$map->{+UPTIME_TEXT} = sprintf("%d days, %02d hours, %02d minutes, %02d seconds",SYSMON_decode_time_diff($uptime)); #$map->{+UPTIME_TEXT} = sprintf("%d days, %02d hours, %02d minutes, %02d seconds",SYSMON_decode_time_diff($uptime));
$map->{+UPTIME_TEXT} = sprintf("%d days, %02d hours, %02d minutes",SYSMON_decode_time_diff($uptime)); $map->{+UPTIME_TEXT} = sprintf("%d days, %02d hours, %02d minutes",SYSMON_decode_time_diff($uptime));
my $startTime = time()-$uptime;
$map->{+STARTTIME} = sprintf("%d",$startTime);
$map->{+STARTTIME_TEXT} = strftime("%d.%m.%Y %H:%M:%S", localtime($startTime));
$map->{+IDLETIME}=sprintf("%d %.2f %%",$idle, $idle_percent); $map->{+IDLETIME}=sprintf("%d %.2f %%",$idle, $idle_percent);
$map->{+IDLETIME_TEXT} = sprintf("%d days, %02d hours, %02d minutes",SYSMON_decode_time_diff($idle)).sprintf(" (%.2f %%)",$idle_percent); $map->{+IDLETIME_TEXT} = sprintf("%d days, %02d hours, %02d minutes",SYSMON_decode_time_diff($idle)).sprintf(" (%.2f %%)",$idle_percent);
#$map->{+IDLETIME_PERCENT} = sprintf ("%.2f %",$idle_percent); #$map->{+IDLETIME_PERCENT} = sprintf ("%.2f %",$idle_percent);
@ -1595,6 +1608,10 @@ SYSMON_getUptime2($$)
$map->{+UPTIME}=sprintf("%d",$uptime); $map->{+UPTIME}=sprintf("%d",$uptime);
$map->{+UPTIME_TEXT} = sprintf("%d days, %02d hours, %02d minutes",SYSMON_decode_time_diff($uptime)); $map->{+UPTIME_TEXT} = sprintf("%d days, %02d hours, %02d minutes",SYSMON_decode_time_diff($uptime));
my $startTime = time()-$uptime;
$map->{+STARTTIME} = sprintf("%d",$startTime);
$map->{+STARTTIME_TEXT} = strftime("%d.%m.%Y %H:%M:%S", localtime($startTime));
my $loadavg=$6; my $loadavg=$6;
if(defined($loadavg)) { if(defined($loadavg)) {
my ($la1, $la5, $la15, $prc, $lastpid) = split(/\s+/, trim($loadavg)); my ($la1, $la5, $la15, $prc, $lastpid) = split(/\s+/, trim($loadavg));
@ -1628,6 +1645,10 @@ SYSMON_getFHEMUptime($$)
my $fhemuptime = time()-$fhem_started; my $fhemuptime = time()-$fhem_started;
$map->{+FHEMUPTIME} = sprintf("%d",$fhemuptime); $map->{+FHEMUPTIME} = sprintf("%d",$fhemuptime);
$map->{+FHEMUPTIME_TEXT} = sprintf("%d days, %02d hours, %02d minutes",SYSMON_decode_time_diff($fhemuptime)); $map->{+FHEMUPTIME_TEXT} = sprintf("%d days, %02d hours, %02d minutes",SYSMON_decode_time_diff($fhemuptime));
my $startTime = time()-$fhemuptime;
$map->{+FHEMSTARTTIME} = sprintf("%d",$startTime);
$map->{+FHEMSTARTTIME_TEXT} = strftime("%d.%m.%Y %H:%M:%S", localtime($startTime));
} }
return $map; return $map;
@ -1769,10 +1790,11 @@ SYSMON_getCPUFreq($$;$) {
if($cpuNum == 0) { if($cpuNum == 0) {
# aus Kompatibilitaetsgruenden # aus Kompatibilitaetsgruenden
$map->{+CPU_FREQ}="$val_txt"; $map->{+CPU_FREQ}="$val_txt";
#$map = SYSMON_getComputeStat($hash, $map, $val_txt, CPU_FREQ."_stat"); $map = SYSMON_getComputeStat($hash, $map, $val_txt, CPU_FREQ."_stat");
} }
$map->{"cpu".$cpuNum."_freq"}="$val_txt"; $map->{"cpu".$cpuNum."_freq"}="$val_txt";
$map = SYSMON_getComputeStat($hash, $map, $val_txt, "cpu".$cpuNum."_freq"."_stat"); $map = SYSMON_getComputeStat($hash, $map, $val_txt, "cpu".$cpuNum."_freq"."_stat");
return $map; return $map;
@ -4051,7 +4073,7 @@ If one (or more) of the multiplier is set to zero, the corresponding readings is
Filesystem informations<br><br> Filesystem informations<br><br>
</li> </li>
<li>The following parameters are always updated with the base interval (regardless of the Mx-parameter):<br> <li>The following parameters are always updated with the base interval (regardless of the Mx-parameter):<br>
fhemuptime, fhemuptime_text, idletime, idletime_text, uptime, uptime_text<br><br> fhemuptime, fhemuptime_text, idletime, idletime_text, uptime, uptime_text, starttime, starttime_text<br><br>
</li> </li>
</ul> </ul>
To query a remote system at least the address (HOST) must be specified. Accompanied by the port and / or user name, if necessary. The password (if needed) has to be defined once with the command 'set password <password>'. For MODE parameter are 'telnet' and 'local' only allowed. 'local' does not require any other parameters and can also be omitted. To query a remote system at least the address (HOST) must be specified. Accompanied by the port and / or user name, if necessary. The password (if needed) has to be defined once with the command 'set password <password>'. For MODE parameter are 'telnet' and 'local' only allowed. 'local' does not require any other parameters and can also be omitted.
@ -4090,6 +4112,14 @@ If one (or more) of the multiplier is set to zero, the corresponding readings is
Time since the start of the FHEM server: human-readable output (text representation). Time since the start of the FHEM server: human-readable output (text representation).
</li> </li>
<br> <br>
<li>fhemstarttime<br>
Start time (in seconds since 1.1.1970 1:00:00) of FHEM server.
</li>
<br>
<li>fhemstarttime_text<br>
Start time of the FHEM server: human-readable output (text representation).
</li>
<br>
<li>idletime<br> <li>idletime<br>
Time spent by the system since the start in the idle mode (period of inactivity). Time spent by the system since the start in the idle mode (period of inactivity).
</li> </li>
@ -4118,6 +4148,14 @@ If one (or more) of the multiplier is set to zero, the corresponding readings is
System uptime (human readable). System uptime (human readable).
</li> </li>
<br> <br>
<li>starttime<br>
System starttime.
</li>
<br>
<li>starttime_text<br>
System starttime (human readable).
</li>
<br>
<li>Network statistics<br> <li>Network statistics<br>
Statistics for the specified network interface about the data volumes transferred and the difference since the previous measurement. Statistics for the specified network interface about the data volumes transferred and the difference since the previous measurement.
<br> <br>
@ -4676,7 +4714,7 @@ If one (or more) of the multiplier is set to zero, the corresponding readings is
Filesystem-Informationen<br><br> Filesystem-Informationen<br><br>
</li> </li>
<li>folgende Parameter werden immer anhand des Basisintervalls (unabh&auml;ngig von den Mx-Parameters) aktualisiert:<br> <li>folgende Parameter werden immer anhand des Basisintervalls (unabh&auml;ngig von den Mx-Parameters) aktualisiert:<br>
fhemuptime, fhemuptime_text, idletime, idletime_text, uptime, uptime_text<br><br> fhemuptime, fhemuptime_text, idletime, idletime_text, uptime, uptime_text, starttime, starttime_text<br><br>
</li> </li>
</ul> </ul>
F&uuml;r Abfrage eines entfernten Systems muss mindestens deren Adresse (HOST) angegeben werden, bei Bedarf erg&auml;nzt durch den Port und/oder den Benutzernamen. F&uuml;r Abfrage eines entfernten Systems muss mindestens deren Adresse (HOST) angegeben werden, bei Bedarf erg&auml;nzt durch den Port und/oder den Benutzernamen.
@ -4717,6 +4755,14 @@ If one (or more) of the multiplier is set to zero, the corresponding readings is
Zeit seit dem Start des FHEM-Servers: Menschenlesbare Ausgabe (texttuelle Darstellung). Zeit seit dem Start des FHEM-Servers: Menschenlesbare Ausgabe (texttuelle Darstellung).
</li> </li>
<br> <br>
<li>fhemstarttime<br>
Startzeit (in Sekunden seit 1.1.1970 1:00:00) des FHEM-Servers.
</li>
<br>
<li>fhemstarttime_text<br>
Startzeit des FHEM-Servers: Menschenlesbare Ausgabe (texttuelle Darstellung).
</li>
<br>
<li>idletime<br> <li>idletime<br>
Zeit (in Sekunden und in Prozent), die das System (nicht der FHEM-Server!) Zeit (in Sekunden und in Prozent), die das System (nicht der FHEM-Server!)
seit dem Start in dem Idle-Modus verbracht hat. Also die Zeit der Inaktivit&auml;t. seit dem Start in dem Idle-Modus verbracht hat. Also die Zeit der Inaktivit&auml;t.
@ -4746,6 +4792,14 @@ If one (or more) of the multiplier is set to zero, the corresponding readings is
Zeit seit dem Systemstart in menschenlesbarer Form. Zeit seit dem Systemstart in menschenlesbarer Form.
</li> </li>
<br> <br>
<li>starttime<br>
Systemstart (Sekunden seit Thu Jan 1 01:00:00 1970).
</li>
<br>
<li>starttime_text<br>
Systemstart in menschenlesbarer Form.
</li>
<br>
<li>Netzwerkinformationen<br> <li>Netzwerkinformationen<br>
Informationen zu den &uuml;ber die angegebene Netzwerkschnittstellen &uuml;bertragene Datenmengen Informationen zu den &uuml;ber die angegebene Netzwerkschnittstellen &uuml;bertragene Datenmengen
und der Differenz zu der vorherigen Messung. und der Differenz zu der vorherigen Messung.