mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-03-03 04:36:36 +00:00
93_DbLog: - removed string length limitation for SQLITE. - little reduceLog cosmetics.
git-svn-id: https://svn.fhem.de/fhem/trunk@9340 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
dafd1db6e2
commit
d631b94e19
@ -1,5 +1,6 @@
|
||||
# Add changes at the top of the list. Keep it in ASCII, and 80-char wide.
|
||||
# Do not insert empty lines here, update check depends on it.
|
||||
- change: 93_DbLog: removed string length limitation for SQLITE.
|
||||
- bugfix: 93_DbLog: fixed ploteditor bug when DbLogType=History.
|
||||
- feature: 93_DbLog: added new setter 'reduceLog' to clean up database.
|
||||
- feature: new Modules 36_EleroStick.pm and 36_EleroDrive.pm for Elero shutters
|
||||
|
@ -439,14 +439,16 @@ sub DbLog_Push(@) {
|
||||
my ($hash, $DbLogType, $timestamp, $device, $type, $event, $reading, $value, $unit) = @_;
|
||||
my $dbh= $hash->{DBH};
|
||||
|
||||
# Daten auf maximale laenge beschneiden
|
||||
$device = substr($device,0, $columns{DEVICE});
|
||||
$type = substr($type,0, $columns{TYPE});
|
||||
$event = substr($event,0, $columns{EVENT});
|
||||
$reading = substr($reading,0, $columns{READING});
|
||||
$value = substr($value,0, $columns{VALUE});
|
||||
$unit = substr($unit,0, $columns{UNIT});
|
||||
|
||||
if ($hash->{DBMODEL} ne 'SQLITE') {
|
||||
# Daten auf maximale laenge beschneiden
|
||||
$device = substr($device,0, $columns{DEVICE});
|
||||
$type = substr($type,0, $columns{TYPE});
|
||||
$event = substr($event,0, $columns{EVENT});
|
||||
$reading = substr($reading,0, $columns{READING});
|
||||
$value = substr($value,0, $columns{VALUE});
|
||||
$unit = substr($unit,0, $columns{UNIT});
|
||||
}
|
||||
|
||||
$dbh->{RaiseError} = 1;
|
||||
$dbh->{PrintError} = 0;
|
||||
|
||||
@ -1280,7 +1282,7 @@ DbLog_Get($@)
|
||||
}
|
||||
|
||||
|
||||
### DBLog - Historische Werte ausdünnen > Forum #41089
|
||||
### DBLog - Historische Werte ausduennen > Forum #41089
|
||||
sub DbLog_reduceLog($@) {
|
||||
my ($hash,@a) = @_;
|
||||
my ($ret,$cmd,$row,$filter,$exclude,$c,$day,$hour,$lastHour,$updDate,$updHour,$average,$processingDay,$lastUpdH,%hourlyKnown,%averageHash,@excludeRegex,@dayRows,@averageUpd,@averageUpdD);
|
||||
@ -1295,9 +1297,9 @@ sub DbLog_reduceLog($@) {
|
||||
}
|
||||
Log3($name, 3, "DbLog $name: reduceLog requested with DAYS=$a[2]".(($average || $filter) ? ', ' : '').(($average) ? "$average" : '').(($average && $filter) ? ", " : '').(($filter) ? "EXCLUDE=$filter" : ''));
|
||||
|
||||
if (InternalVal($name,'DBMODEL','') eq 'SQLITE') { $cmd = "datetime('now', '-$a[2] days')"; }
|
||||
elsif (InternalVal($name,'DBMODEL','') eq 'MYSQL') { $cmd = "DATE_SUB(CURDATE(),INTERVAL $a[2] DAY)"; }
|
||||
elsif (InternalVal($name,'DBMODEL','') eq 'POSTGRESQL') { $cmd = "NOW() - INTERVAL '$a[2] DAY"; }
|
||||
if ($hash->{DBMODEL} eq 'SQLITE') { $cmd = "datetime('now', '-$a[2] days')"; }
|
||||
elsif ($hash->{DBMODEL} eq 'MYSQL') { $cmd = "DATE_SUB(CURDATE(),INTERVAL $a[2] DAY)"; }
|
||||
elsif ($hash->{DBMODEL} eq 'POSTGRESQL') { $cmd = "NOW() - INTERVAL '$a[2] DAY"; }
|
||||
else { $ret = 'Unknown database type.'; }
|
||||
|
||||
if ($cmd) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user