Hauptmenü

Logging bei FHEM

Begonnen von Forstling, 31 Januar 2020, 21:41:56

Vorheriges Thema - Nächstes Thema

Forstling

Hallo

gibt es außer Filelog und DBlog noch eine andere Möglichkeit bei FHEM die Daten zu loggen.

Hintergrund mit Datenbanken habe ich mich noch nicht weiter beschäftigt und Filelog ist bei meiner Heizungsteuerung ziemlich unübersichtlich.

Bisher habe ich immer eine Textdatei erhalten in der standen alle Werte in Tabellenform. Diese konnte man schön ins Excel kopieren und damit rumspielen.

Gibt es die Möglichkeit die Daten sagen wir alle 5 Minuten in eine Solche Text oder CSV zu schreiben. und dann auch nur die relevanten.

Aktuell dauert es ca 8 Sekunden bis die Seite mein Raum Heizung aufgeht. (3 SVG Plots mit je 3 Werten)

betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

marvin78


MadMax-FHEM

#3
Ich werf zumindest mal ein paar Schlagworte in den Ring:

event-on-change-reading
event-min-interval

Und dann gibt es noch Attribute bzgl. Optimierung von gplot-Darstellung/-Berechnung...

EDIT: ansonsten geht alles was mit Perl machbar ist und "zur Not" kann man auch auf "Systembefehle" zurückgreifen (shell-Scripte)...

Achja: mit Zucker bitte :)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Forstling

Ok also nein

Heißt mit Datenbanken beschäftigen.
Und bis dahin Daten minimieren.

Verdammt hoffentlich habe ich nicht den Foren gefüttert.

herrmannj

generell ja. Die stärke von fhem ist ja die Flexibilität. Allerdings musst Du selber was für tun.

In der 99_myUtils.pm kannst du Dir eine kleine Routine anlegen welche die für _Dich_ relevanten Daten in ein file Deiner Wahl schreibt:
https://fhem.de/commandref_DE.html#Utils
https://fhem.de/commandref.html#perl
https://perlmaven.com/writing-to-files-with-perl

Du erstellst Dir dann ein 'at' das alle 5 Minuten die Routine aufruft.
https://fhem.de/commandref_DE.html#at

So kannst Du das sehr flexibel so ausbauen wie es für Dich Sinn macht.

vg
Joerg

MadMax-FHEM

Zitat von: Forstling am 31 Januar 2020, 22:06:25
Ok also nein

Heißt mit Datenbanken beschäftigen.
Und bis dahin Daten minimieren.

Verdammt hoffentlich habe ich nicht den Foren gefüttert.

Warum nur "bis dahin"!?

Nur weil du dann (irgendwann) in eine DB schreibst kannst/solltest du doch nicht darauf verzichten unnötig(e) Daten zu schreiben...

Das zu erreichen hab ich ja mal Stichworte genannt...

Und mit Perl kannst du ja "tun was du willst"...
...siehe Post von herrmannj...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Forstling

Zitat von: herrmannj am 31 Januar 2020, 22:09:02
generell ja. Die stärke von fhem ist ja die Flexibilität. Allerdings musst Du selber was für tun.

Diese Flexibilität ist das was mir als Anfänger etwas Probleme bereitet.
Für alles gibt es irgendwo irgendwas. Da verliert man schnell den Überblick und wenn man mal den falschen Suchbegriff verwendet steht plötzlich irgendwo im Wald.

Zitat von: MadMax-FHEM am 31 Januar 2020, 22:18:10
Warum nur "bis dahin"!?

Nur weil du dann (irgendwann) in eine DB schreibst kannst/solltest du doch nicht darauf verzichten unnötig(e) Daten zu schreiben...

Das zu erreichen hab ich ja mal Stichworte genannt...



Ja Datenmüll sollte man nicht produzieren.
und Stichworte wurde erkannt und umgesetzt.


DS_Starter

Zitat
Gibt es die Möglichkeit die Daten sagen wir alle 5 Minuten in eine Solche Text oder CSV zu schreiben. und dann auch nur die relevanten.

Solltest du irgendwann mal DbLog mit einer DB laufen haben, kannst du über ein DbRep-Device (DbRep = Verwaltungsmodul für DbLog-Datenbanken) regelmäßig eine CSV-Datei für dich interessierende Zeiträume/Devices etc. schreiben. Dafür gibt es ein exportToFile-Kommando.

Grüße,
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Forstling

So habe jetz auf DB-Log umgestellt.

Erste Frage wie kriege ich jetzt Daten aus der Datenbank.
Ich nutze MySQL-Workbench um auf die Datenbank zuzugreifen. Jetzt würde ich gern eine Einfache Abfrage schreiben Lese alle Daten von von dann bis dann von diesem Device.

Und jetzt die Noobfrage:
Wie geht das?
Wo finde ich eine Beschreibung dafür?
Ich habe bei Google wahrscheinlich noch nicht den richtigen Suchbegriff gefunden.

3. Frage: Wie stelle ich meine SVG-plots um?
Da stand was im Wiki da hatte ich aber Schreibprobleme bei der Datei und aufgegeben.

Melde mich erst mal zum Urlaub ab bin wahrscheinlich erst in einer Woche wieder hier.

CoolTux

Zitat von: DS_Starter am 31 Januar 2020, 23:43:55
Solltest du irgendwann mal DbLog mit einer DB laufen haben, kannst du über ein DbRep-Device (DbRep = Verwaltungsmodul für DbLog-Datenbanken) regelmäßig eine CSV-Datei für dich interessierende Zeiträume/Devices etc. schreiben. Dafür gibt es ein exportToFile-Kommando.

Grüße,
Heiko
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net