Ich habe einen ESP01 mit espeasy geflasht. ds18b20 Als Temperatursensor.
In Fhem wird er auch unter espeasy angezeigt. ebenfalls die Temperatur.
Aber kann ich damit auch einen Plot erzeugen ?esp01.jpg
esp02.jpg
Plots (SVG) werden von Logs erzeugt und nicht von Devices.
Zuerst logge die Daten die Du plotten möchtest (Fragen dazu: Automatisierung)
Dann erstelle dazu einen Plot (Fragen dazu: Frontends/SVG/Plots)
Achja und bitte immer Lists von Devices und keine Screenshots
OK da muss ich mich mal erkundigen wie ich die Daten loggen kann. vielen Dank erst mal
es klappt leider nicht. Laut Wiki habe ich
define ESPEasy_ESP_Easy_kuecheschrank_kuecheschrank Filelog kücheschrank [readonly]
eingegeben um die Daten zu loggen
bekomme aber dann die Meldung
ESPEasy_ESP_Easy_kuecheschrank_kuecheschrank already defined, delete it first
Das device für die Log-Datei muss einen anderen Namen haben als das zu loggende device.
Am einfachsten mal über den Eventmonitor ein Log-device erzeugen.
Beispiel:
defmod ESP_01_BME280_Temperatur FileLog ./log/ESP_01_BME280_Temp-%Y-%m-%d.log ESPEasy_ESP_01_BME280:Temperature:..*
Name Log-device: ESP_01_BME280_Temperatur
Name device: ESP_01_BME280
Also nochmal, diesmal ausführlich.
1. Kürzere Namen verwenden. So etwas wie "ESPEasy_ESP_Easy_kuecheschrank_kuecheschrank" macht das System schnell unwartbar.
2. Wenn ein Device als "already defined" angezeigt wird, sollte man sich dieses Device erst einmal ansehen, bevor man die Löschanweisung ausführt.
3. Nicht für jedes Reading eine eigene Logdatei anlegen. Überlegen, welche Daten man im Log haben will.
LG
pah
Zitat von: Nobbynews am 15 September 2024, 11:13:51Das device für die Log-Datei muss einen anderen Namen haben als das zu loggende device.
Am einfachsten mal über den Eventmonitor ein Log-device erzeugen.
Beispiel:
defmod ESP_01_BME280_Temperatur FileLog ./log/ESP_01_BME280_Temp-%Y-%m-%d.log ESPEasy_ESP_01_BME280:Temperature:..*
Name Log-device: ESP_01_BME280_Temperatur
Name device: ESP_01_BME280
Danke habe es mal versucht. bekomme die Meldung
wrong syntax: define <name> FileLog filename regexp [readonly]
aber ich versuche mal weiter und werde erst mal den Namen verkürzen
define ESP_01_BME280_Temperatur FileLog ./log/ESP_01_BME280_Temp-%Y-%m-%d.log ESPEasy_ESP_01_BME280:temperature:.* - temperature statt Temperature und ein Punkt zu viel
attr ESP_01_BME280_Temperatur createGluedFile 1 - für die Monatsübergänge beim Plot
attr ESP_01_BME280_Temperatur room Filelog - der Raum in dem das Logfile zu finden ist
Zitat von: buec65 am 15 September 2024, 16:54:03- temperature statt Temperature und ein Punkt zu viel
Leider nicht korrekt. Das Reading heißt bei mir halt
Temperature und nicht
temperature. Der Punkt ist überflüssig, aber an dieser Stelle unschädlich.
Die beiden genannten Attribute haben mit der ursprünglichen Fragestellung des TE nichts zu tun.
@Nobbynews
Das die beiden Attribute nichts mit der Fragestellung zu tun haben ist mir bewusst - desswegen die Anmerkungen in blau.
Es macht keinen hier seine Konfiguration zu schicken wenn der Hilfesuchende es anders eingerichtet hat.
@all
Werde mich in Zukunft im Forum nur noch lesend bewegen und nach einer Alternative umsehen bei der im Forum eine nettere Umgangsform herrscht.
Meine Beiträge können gerne gelöscht werden.
Zitat von: buec65 am 16 September 2024, 08:19:11Werde mich in Zukunft im Forum nur noch lesend bewegen und nach einer Alternative umsehen bei der im Forum eine nettere Umgangsform herrscht.
An der Antwort von Nobbynews war nichts Unfreundliches oder Unsachliches.
Viel Erfolg bei der Suche nach einer "Alternative für FHEM" (AfF) ;D
pah
Edit: Die "Anmerkungen" sind ja schon blau ;D ;D
Ist schwerer als ich gedacht habe. Bin immer noch am probieren.
Leider ist schon wieder was passiert.
Sobald ich nun save config anklicke erscheint
./log/fhem.save: No space left on device
was ist das denn schon wieder ?
wollte mit winscp mal schauen ob etwas in tmp ordner ist und löschen. Aber dann erscheint. ich habe keinen Zugriff
mit putty sieht es so aus
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/root 7390968 7059024 0 100% /
devtmpfs 439916 0 439916 0% /dev
tmpfs 473196 0 473196 0% /dev/shm
tmpfs 473196 30040 443156 7% /run
tmpfs 5120 4 5116 1% /run/lock
tmpfs 473196 0 473196 0% /sys/fs/cgroup
/dev/mmcblk0p1 258095 48783 209313 19% /boot
tmpfs 94636 0 94636 0% /run/user/1000
SD-Karte zu 100% voll.
Das muss nicht der /tmp-Ordner sein - möglicherweise gigantisch große Logfiles wegen fehlerhafter Definitionen...
LG
pah
OK danke. wie kann ich die finden und wie lösche ich die am besten ?
Mach' in PUTTY mal ein
ls -lh /opt/fhem/log
Dann bekommst Du angezeigt welche Dateien dort liegen und wie groß diese sind.
PUH das sind verdammt viele. Mal schauen wie ich das am besten löschen kann. Denn per winscp geht das nicht. Habe da keine Rechte
Zeig doch mal einen Ausschnitt.
Dann kann man mit
sudo rm /opt/fhem/log/(Muster).*
das sicherlich vereinfachen.
Vorher aber mit einem
ls /opt/fhem/log/(Muster).*
die Auswahl kontrollieren.
Oder mit
cd /opt/fhem/log
in das Verzeichnis wechseln und damit den Pfad bei der Eingabe einsparen.
Um mit einer hübschen Benutzeroberfläche herauszufinden, welche Dateien viel Platz verbrauchen bietet sich übrigens auch ncdu an.
Alsosudo apt update && sudo apt install ncdu
sudo ncdu /
Die Installation davon erfordert natürlich erstmal noch ein wenig Platz, den müsstest du natürlich vorher durch manuelles Löschen großer Dateien schaffen.
Damit man die Dateigrößen in menschenlesbarer Form bekommt lohnt es sich übrigens immer die -h Flag zu setzen, also z.B.
df -h
ls -lah
free -h
-rw-r--r-- 1 fhem dialout 0 Mar 13 2024 alexa-2024-03-13.log
-rw-r--r-- 1 fhem dialout 0 Mar 14 2024 alexa-2024-03-14.log
-rw-r--r-- 1 fhem dialout 0 Mar 15 2024 alexa-2024-03-15.log
-rw-r--r-- 1 fhem dialout 0 Mar 16 2024 alexa-2024-03-16.log
-rw-r--r-- 1 fhem dialout 0 Mar 17 2024 alexa-2024-03-17.log
-rw-r--r-- 1 fhem dialout 0 Mar 18 23:59 alexa-2024-03-18.log
-rw-r--r-- 1 fhem dialout 0 Mar 19 23:59 alexa-2024-03-19.log
-rw-r--r-- 1 fhem dialout 0 Mar 20 23:59 alexa-2024-03-20.log
-rw-r--r-- 1 fhem dialout 0 Mar 21 23:59 alexa-2024-03-21.log
rw-r--r-- 1 fhem dialout 0 Aug 2 2021 CUL_HOERMANN_4332A15400-2021.log
-rw-r--r-- 1 fhem dialout 0 Jan 1 2022 CUL_HOERMANN_4332A15400-2022.log
-rw-r--r-- 1 fhem dialout 0 Jan 1 2023 CUL_HOERMANN_4332A15400-2023.log
-rw-r--r-- 1 fhem dialout 0 Jan 1 2024 CUL_HOERMANN_4332A15400-2024.log
-rw-r--r-- 1 fhem dialout 0 Sep 30 2021 CUL_HOERMANN_43B1E50800-2021.log
-rw-r--r-- 1 fhem dialout 0 Jan 1 2022 CUL_HOERMANN_43B1E50800-2022.log
-rw-r--r-- 1 fhem dialout 1.3M Sep 30 2022 fhem-2022-09.log
-rw-r--r-- 1 fhem dialout 126K Oct 31 2022 fhem-2022-10.log
-rw-r--r-- 1 fhem dialout 82K Nov 30 2022 fhem-2022-11.log
-rw-r--r-- 1 fhem dialout 73K Dec 31 2022 fhem-2022-12.log
-rw-r--r-- 1 fhem dialout 119K Jan 31 2023 fhem-2023-01.log
-rw-r--r-- 1 fhem dialout 74K Feb 28 2023 fhem-2023-02.log
-rw-r--r-- 1 fhem dialout 107K Mar 31 2023 fhem-2023-03.log
-rw-r--r-- 1 fhem dialout 80K Apr 30 2023 fhem-2023-04.log
-rw-r--r-- 1 fhem dialout 0 Sep 1 00:00 myShelly.Verbrauch-2024-09.log
-rw-rw-rw- 1 fhem dialout 6.2K Feb 28 2023 reverse_search.txt
-rw-r--r-- 1 fhem dialout 0 Sep 4 2021 Revolt_7f7f-2021.log
-rw-r--r-- 1 fhem dialout 0 Jan 1 2022 Revolt_7f7f-2022.log
-rw-r--r-- 1 fhem dialout 0 Jan 1 2023 Revolt_7f7f-2023.log
-rw-r--r-- 1 fhem dialout 0 Jan 1 2024 Revolt_7f7f-2024.log
-rw-r--r-- 1 fhem dialout 0 Jun 12 2021 Revolt_ef7e-2021.log
-rw-r--r-- 1 fhem dialout 0 Jan 1 2022 Revolt_ef7e-2022.log
Ist natürlich viel mehr
Zitat von: passibe am 16 September 2024, 18:00:14Um mit einer hübschen Benutzeroberfläche
Dafür habe ich auf meinen Pis WEBMIN installiert.
Aber alles Geschmacksache und hier jetzt OT.
Ist noch schwer für mich.
cd /opt/fhem/log
da listet der mir die ganzen Log auf.
Wie kann ich die alle auf einmal löschen ?
denn wenn ich
sudo rm /opt/fhem/log/(Muster).*
eingebe zeigt er mir an
rm: cannot remove '/opt/fhem/log/.': Is a directory
rm: cannot remove '/opt/fhem/log/..': Is a directory
sudo rm *.*
damit hat es nun geklappt
Komisch sind die ganzen Datein mit 0 Byte Länge.
sudo rm alexa-2024-03*.*
sudo rm CUL_HOERMANN*.*
usw.
Da heißt es halt rantasten.
Zitat von: reimundko am 16 September 2024, 18:11:05Ist noch schwer für mich.
cd /opt/fhem/log
da listet der mir die ganzen Log auf.
Wie kann ich die alle auf einmal löschen ?
sudo rm *.log
Damit wäre ich aber vorsichtig.
jetzt sieht es so aus
Filesystem Size Used Avail Use% Mounted on
/dev/root 7.1G 3.0G 3.8G 45% /
devtmpfs 430M 0 430M 0% /dev
tmpfs 463M 0 463M 0% /dev/shm
tmpfs 463M 30M 433M 7% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 463M 0 463M 0% /sys/fs/cgroup
/dev/mmcblk0p1 253M 48M 205M 19% /boot
tmpfs 93M 0 93M 0% /run/user/1000
Da sind ja dann wieder 3,8 GB verfügbar.
Als nächstes würde ich aber mal die ganzen Definitionen der FileLogs ansehen.
In der FHEM-Befehlszeile eingeben:
list TYPE=FileLog
Und dann alle mal so wie pah ja schon geschrieben hat durchforsten und nur die erforderlichen/gewünschten Werte in die Log-Datei schreiben lassen oder ggf. auch einzelnen devices löschen, wenn diese nicht mehr gebraucht werden.
Bietet sich evtl. auch an mittels
attr <Log Device> nrarchive <Anzahl>
die Anzahl der zu speichernden Logs zu begrenzen. Wenn man z.B. ein %Y-%m-%d.log hat, gibt <Anzahl> die Zahl der Tage wieder, bei einem %Y-%m.log die Anzahl der Monate.
Gute Praxis ist das bisher alles nicht.
1. Wie schon gesagt: Nicht für jeden Müll eine eigene Logdatei anlegen. Sondern kumulieren, z.B. alle Devices eines Raumes in einer Datei, oder alle Temperaturen in einer Datei. Für einen Plot kann man daraus die gewünschten Bestandteile aussuchen.
2. room-Namen nicht nach Hardware-Typ benennen. Das menschliche Gehirn arbeitet orts-assoziativ. Die Anzahl der Räume auf 7 - 10 begrenzen, maximal 10. Ggf. Räume kumulieren, z.B. "Erdgeschoss" und darin ggf. aufklappbare Untermenüs, und ein paar rooms mit thematischer Benennung, z.B. "Heizung"
3. Wie von anderen schon gesagt: Anzahl der Log-Dateien begrenzen. Archivierung NICHT auf der SD-Karte. Sondern idealerweise auf einem Netzwerkspeicher. Und dort 1x pro Jahr aufräumen - denn nach fast 2 Jahrzehnten in der Hausautomatisierung kann ich eines genau sagen: Den Kram schaut man nie wieder an...
LG
pah
Habe da noch einmal eine Frage. Stehe mal wieder auf dem Schlauch.
Habe auf einem d1min Espeasy installiert und einenBME280 angeschlossen. Dieser liefert auch Daten.
Device heisst: ESPEasy_ESP_Easy_bme280.
Möchte nun Logfiles erstellen um später einen Plot zeigen zu lassen
Aber wie mache ich das ? Bekomme es einfach nicht hin.
Hatte es vor einigen Wochen schon mal gemacht mit einem dsb1820. Aber leider habe ich mir das nicht abgespeichert wie ich es gemacht habe.
Vielen Dank
das habe ich nun versucht.
define bme280new FileLog ./log/ESPEasy_ESP_Easy_bme280-%Y-%m.log ESPEasy_ESP_Easy_bme280:.*
bme280new
ESPEasy_ESP_Easy_bme280-2025-02.log
text
wenn ich text anklicke erschinen auch die Daten. Aber wie kann ich nun einen svg...plot erstellen ?
Hat sich erledigt. Plot wird erstellt. Aber im Fenster sehe ich keine Temperaturangaben. Mal etwas abwarten
Lesen: https://wiki.fhem.de/wiki/FileLog
Lesen: https://wiki.fhem.de/wiki/Plots_erzeugen
Lesen: https://wiki.fhem.de/wiki/Buderus_Web_Gateway#Mit_FileLog
Bei der letzten Anleitung natürlich nicht die fhem.cfg bearbeiten (da ist die Anleitung wohl etwas veraltet), sondern die Kommandos in FHEMWEB eingeben.
Im Wesentlichen sind es aber zwei Schritte:
1. FileLog-Device erstellen.
2. Im FileLog-Device auf "Create SVG Plot" klicken.