Autor Thema: Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)  (Gelesen 114454 mal)

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5106
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #225 am: 20 November 2016, 19:18:43 »
Hallo Joe,

für SQLite werde ich das wieder  so wie bis zur 4.6 selektieren. Nur muß ich nun den Ergebnishash gleichziehen mit MySQL damit auch solche neuen Funktionen wie diffAccept und die Warnings bei Limit-Überschreitung für alle unterstützten DBs gleichermaßen funktionieren.
Ich habe da schon einen Plan, brauche nur wieder etwas Zeit es umzusetzen und zu testen.

LG
Heiko
ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf Synology 415+
Maintainer: SSCam, SSChatBot, SSCal, DbLog/DbRep, Log2Syslog, SMAPortal, Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5106
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #226 am: 20 November 2016, 23:10:16 »
Hallo,

in der Version 4.7.3 im Eingangsthread habe ich diffValue nun auch wieder für SQLite lauffähig.
Würde mich freuen wenn SQLite-Nutzer die Version ebenfalls testen könnten.

VG
ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf Synology 415+
Maintainer: SSCam, SSChatBot, SSCal, DbLog/DbRep, Log2Syslog, SMAPortal, Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline Masterfunk

  • Full Member
  • ***
  • Beiträge: 294
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #227 am: 27 November 2016, 10:05:45 »
Nach dem Update auf die neuste Version startet DbRep nicht mehr.

Im Logfile habe ich folgende Meldung:

2016.11.27 09:17:13 1: reload: Error:Modul 93_DbRep deactivated:
 syntax error at ./FHEM/93_DbRep.pm line 3564, near "$ch{"
syntax error at ./FHEM/93_DbRep.pm line 3566, near "$ch{"
Global symbol "$key" requires explicit package name at ./FHEM/93_DbRep.pm line 3566, <$fh> line 1489.
Global symbol "%ncp" requires explicit package name at ./FHEM/93_DbRep.pm line 3567, <$fh> line 1489.
Global symbol "%ncp" requires explicit package name at ./FHEM/93_DbRep.pm line 3570, <$fh> line 1489.
Can't use global @_ in "my" at ./FHEM/93_DbRep.pm line 3578, near "= @_"
Global symbol "$hash" requires explicit package name at ./FHEM/93_DbRep.pm line 3579, <$fh> line 1489.
syntax error at ./FHEM/93_DbRep.pm line 3615, near "}"

Hab jetzt wieder die alte im Einsatz, läuft einwandfrei.

Gruß Detlef

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5106
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #228 am: 27 November 2016, 10:11:50 »
Morgen Detlef,

die neueste eingecheckte Version oder die aus dem Forum ?
Habe bei mir kein Prob bisher festgestellt.

Gruß
Heiko
ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf Synology 415+
Maintainer: SSCam, SSChatBot, SSCal, DbLog/DbRep, Log2Syslog, SMAPortal, Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5106
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #229 am: 27 November 2016, 10:38:05 »
Habe gerade auch nochmal ein "update 93_DbRep.pm" in FHEM durchgeführt und FHEM restartet.
Die aktuelle eingecheckte Version ist:

# $Id: 93_DbRep.pm 12631 2016-11-22 21:07:28Z nasseeder1 $

Keine Probleme festgestellt ...

Grüße
Heiko
ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf Synology 415+
Maintainer: SSCam, SSChatBot, SSCal, DbLog/DbRep, Log2Syslog, SMAPortal, Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline Masterfunk

  • Full Member
  • ***
  • Beiträge: 294
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #230 am: 27 November 2016, 11:36:14 »
Mit folgender habe ich das Problem:

93_DbRep.pm          12631 2016-11-22 21:07:28Z nasseeder1
Gruß Detlef

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5106
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #231 am: 27 November 2016, 11:55:46 »
Genau die habe ich auch bei mir nochmal getestet (siehe oben) . Ohne Probleme ... das ist ja eigenartig.
Ich schaue es mir in Ruhe an. Wird aber erst morgen.

Können andere User das Problem mit dieser Version bestätigen oder ist das bei Detlef eine Ausnahme ?

Grüße
Heiko
ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf Synology 415+
Maintainer: SSCam, SSChatBot, SSCal, DbLog/DbRep, Log2Syslog, SMAPortal, Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline JoeALLb

  • Hero Member
  • *****
  • Beiträge: 1564
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #232 am: 27 November 2016, 13:40:28 »
bei mit geht sie problemlos
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5106
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #233 am: 28 November 2016, 11:58:49 »
Hallo Detlef,

ich vermute du hast eine etwas niedrigere Perl-Version als ich bzw. Joe und die kam mit dem Code nicht zurecht.
Teste mal bitte die V4.7.4 aus dem Eingangsbeitrag.

@Joe, wenn du magst ...  Bei mir läuft diese ebenfalls. Es betrifft eine sub von diffValue.

Grüße
Heiko
ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf Synology 415+
Maintainer: SSCam, SSChatBot, SSCal, DbLog/DbRep, Log2Syslog, SMAPortal, Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline Masterfunk

  • Full Member
  • ***
  • Beiträge: 294
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #234 am: 28 November 2016, 23:08:52 »
Hallo Detlef,

ich vermute du hast eine etwas niedrigere Perl-Version als ich bzw. Joe und die kam mit dem Code nicht zurecht.
Teste mal bitte die V4.7.4 aus dem Eingangsbeitrag.

@Joe, wenn du magst ...  Bei mir läuft diese ebenfalls. Es betrifft eine sub von diffValue.

Grüße
Heiko

Die geht!

Gruß Detlef

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5106
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #235 am: 28 November 2016, 23:39:10 »
Prima ... danke für die Rückmeldung. Dann checke ich diese Version ein.

Gruß
Heiko
ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf Synology 415+
Maintainer: SSCam, SSChatBot, SSCal, DbLog/DbRep, Log2Syslog, SMAPortal, Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline JoeALLb

  • Hero Member
  • *****
  • Beiträge: 1564
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #236 am: 29 November 2016, 09:32:00 »
Ich konnts leide rnicht testen, war unterwegs, aber starten lässt sich fhem damit!
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

Offline Xunil66

  • New Member
  • *
  • Beiträge: 5
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #237 am: 07 Dezember 2016, 20:30:55 »
Hallo Heiko,

ich bin heute bei meinen Tages / Stunden Reportings in Timeouts gelaufen  :'(
habe mir das ganze mal mit verbose 5 angeschaut und gesehen das im Modul 30 bzw 24 abfragen an die Datenbank gehen.

Kann man das ectl. mit "group by" selects erledigen ? Ich habe mir gerade mal testweise die selects zusammengebaut.
In meiner DB Komme ich auf ca. 3 Sekunden für einen kompletten Monat anstatt ca. 2 Sekunden je einzel Select.
Ich hänge mal meine SELECT an.

# Monatswerte auslesen
SELECT MONTH(TIMESTAMP) , SUM(VALUE)
FROM history
where DEVICE LIKE 'energyMeter' AND READING LIKE 'Einspeisung_WirkP_Zaehler_Diff' AND TIMESTAMP >= '2016-01-01' AND TIMESTAMP < '2016-12-31'
GROUP BY MONTH(TIMESTAMP)

# Tageswerte auslesen
SELECT DAY(TIMESTAMP) , SUM(VALUE)
FROM history
where DEVICE LIKE 'energyMeter' AND READING LIKE 'Einspeisung_WirkP_Zaehler_Diff' AND TIMESTAMP >= '2016-12-01' AND TIMESTAMP < '2016-12-31'
GROUP BY DAY(TIMESTAMP)

# Stundenwerte auslesen
SELECT HOUR(TIMESTAMP) , SUM(VALUE)
FROM history
where DEVICE LIKE 'energyMeter' AND READING LIKE 'Einspeisung_WirkP_Zaehler_Diff' AND TIMESTAMP >= '2016-12-06' AND TIMESTAMP < '2016-12-07'
GROUP BY HOUR(TIMESTAMP)

Gruß
Markus
« Letzte Änderung: 07 Dezember 2016, 20:32:29 von Xunil66 »
(FHEM Installation auf Raspberry PI mit Jessie Lite )

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5106
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #238 am: 07 Dezember 2016, 21:17:53 »
Hallo Markus,

vielleicht könnte man das. Es stellen sich sich natürlich viele Fragen:
- Klappt das für jede unterstützte DB ? wer testet alles durch ?
- die Readingsstruktur der Ergebnisse würde sich ändern, alle Funktionen wären anzupassen / zu testen, testen, testen mit jeder DB ...
- Funktioniert die Berücksichtigung Daylight Saving Time und wie steuert man rein wenn nicht ?
- Dann die Ergebnisse. Habe zum Bespiel mal schnell in der SQL-Konsole:
  SELECT DAY(TIMESTAMP) , SUM(VALUE) FROM history where DEVICE LIKE 'SMA_Energymeter' AND READING LIKE 'Einspeisung_WirkP_Zaehler_Diff' AND TIMESTAMP >= '2016-01-01' AND TIMESTAMP < '2016-12-31' GROUP BY DAY(TIMESTAMP)
ausgeführt. Ergebnis ist dass die Tage 1 ... 31 ausgegeben werden. Nichts weiter. Man erkennt nicht die Tage der Monate. Das ist sicher mit entsprechenden Aufwand aufzuarbeiten, aber wird eben nicht so einfach geliefert.

- Wie sauber klappen die Abgrenzungen ? Kann man sich darauf verlassen und wie könnte man die einzelnen Abgrenzungen loggen um die Ergebnisse überprüfbar zu machen ?
- Wie wäre dann z.B. abzubilden dass man bei der diffValue-Funktion einen Schwellwert angeben kann bei dessen Überschreitung die Diff als Fehler gewertet wird und wie logged man das für den Anwender ?

Das sind nur ein paar Gedanken die mir spontan einfallen.

Man kann sicher vieles machen. Nur wollte ich das Augenmerk mal darauf lenken wieviel Aufwand eine solche Änderung verursachen könnte.
Und man kommt immer wieder an problematische Stellen die den Aufwand alles sauber umzusetzen nach oben treiben.

Vorschlag: setze das Attribut timeout höher, dafür ist es da  ;) und dann strahlt auch wieder die Sonne  :)

Grüße
Heiko

ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf Synology 415+
Maintainer: SSCam, SSChatBot, SSCal, DbLog/DbRep, Log2Syslog, SMAPortal, Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline Xunil66

  • New Member
  • *
  • Beiträge: 5
Antw:Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)
« Antwort #239 am: 07 Dezember 2016, 21:40:31 »
Hallo Heiko,


Das Timeout hatte ich schon hochgesetzt. Die Sonne scheint  :D
Ich nutze mySQL als DB auf zentralem Server.

Evtl. wäre diese Abfrage das was Du für ein ganzes Jahr als Tagesabfrage suchst ?


SELECT MONTH( TIMESTAMP ) as Monat , DAY( TIMESTAMP ) as Tag, SUM( VALUE )
FROM history
WHERE DEVICE LIKE 'energyMeter'
AND READING LIKE 'Einspeisung_WirkP_Zaehler_Diff'
AND TIMESTAMP >= '2016-12-01'
AND TIMESTAMP < '2016-12-31'
GROUP BY MONTH( TIMESTAMP ) , DAY( TIMESTAMP)

Schönen Abend
Markus
« Letzte Änderung: 07 Dezember 2016, 21:45:01 von Xunil66 »
(FHEM Installation auf Raspberry PI mit Jessie Lite )