FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: is2late am 07 Dezember 2025, 10:19:40

Titel: (GELÖST) Fhem-Log periodisch löschen
Beitrag von: is2late am 07 Dezember 2025, 10:19:40
Guten Morgen!

Mein Log wird durch u.a. durch viele Fehlermeldungen der Photovoltaikanlage (die sich auch von den Spezialisten nicht lösen lassen) extrem vollgemüllt.
Ich würde das Log daher gern automatisch periodisch löschen, nämlich zB jeden zweiten Tag.

Hat jemand eine Idee, wie sich das lösen ließe? Wäre es einfacher, dies in Verbindung mit einem Neustart des Systems zu verbinden?
In Fhem nutze ich einen Code aus dem Forum "dellog", der prima funktioniert. Vielleicht lässt sich hierauf  aufsetzen?
defmod c_dellog cmdalias dellog AS {qx(truncate $currlogfile --size 0);;Log 1, "Logfile gelöscht";;}Forums- und Internetrecherche war leider erfolglos.

Vielen Dank,
Ingo
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: Nobbynews am 07 Dezember 2025, 10:26:58
Warum  so kompliziert??
attr global nrarchive 2sollte das Problem mit Bordmitteln lösen.
Achtung:
Ggf. bei anderen Log-Files das Attribut entsprechend höher setzen.
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: is2late am 07 Dezember 2025, 10:39:15
Vielen Dank, Nobbynews!

Wenn ich das richtig verstehe, wird so die Anlage mehrerer Logarchive begrenzt.
Das hindert das (einzelne) Fhem-Log aber nicht, eine ganz enorme Größe zu erreichen, oder liege ich falsch?

LG
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: Nobbynews am 07 Dezember 2025, 10:41:43
Zitat von: is2late am 07 Dezember 2025, 10:39:15Das hindert das (einzelne) Fhem-Log aber nicht, eine ganz enorme Größe zu erreichen, oder liege ich falsch?
Die Größe des Log-Files wird davon nicht beeinflusst.
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: Prof. Dr. Peter Henning am 07 Dezember 2025, 10:45:14
Zitat von: is2late am 07 Dezember 2025, 10:19:40Fehlermeldungen der Photovoltaikanlage (die sich auch von den Spezialisten nicht lösen lassen)
Das halte ich, vorsichtig gesagt, für fragwürdig. Wo soll das diskutiert worden sein?

pah
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: is2late am 07 Dezember 2025, 11:01:37
ZitatDas halte ich, vorsichtig gesagt, für fragwürdig. Wo soll das diskutiert worden sein?

Oh, eine angenommene Herausforderung  ;) Me alegro mucho!

Photovoltaik Problem Fehlermeldungen (https://forum.fhem.de/index.php?topic=126126.msg1336926#msg1336926)
Beitrag #30 und #294.

LG Ingo
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: Otto123 am 07 Dezember 2025, 11:20:45
Guten Morgen,
Zitat von: is2late am 07 Dezember 2025, 10:19:40Ich würde das Log daher gern automatisch periodisch löschen
So geht es nicht?
set Logfile clear
Geht übrigens mit jedem TYPE=FileLog ;)

Gruß Otto
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: betateilchen am 07 Dezember 2025, 11:35:19
Lege doch einfach Tages-Logs an, dann funktioniert der Vorschlag mit nrarchive=2 genau so, wie Du es möchtest.

Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: RalfRog am 07 Dezember 2025, 11:52:36
Oder im Device "global" gibt es das Attribut "ignoreRegexp"

Texte, wo dieses Regexp matcht, werden nicht geloggt. ^ und $ wird zum Regexp hinzugefügt, wie bei notify und FileLog.
wenn sich die Ursache für die unerwünschten Einträge nicht abstellen lässt.
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: Otto123 am 07 Dezember 2025, 12:03:40
man kann auch die nervigen Einträge im Nachgang rauslöschen, nehme ich immer wenn ich was im Logfile schauen will es aber zu unübersichtlich geworden ist, Beispiel in der Kommandozeile für Zeilen mit Unknown code autocreate.
{qx(sed /Unknown.code.autocreate/d $currlogfile > temp.log ;; cp temp.log $currlogfile;; rm temp.log);;Log 1, "Logfile manipuliert"}
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: betateilchen am 07 Dezember 2025, 16:25:51
Man sollte aber nicht vergessen, das FileLog-device mit "set ... reopen" erneut in FHEM zu öffnen, wenn man es von außen manipuliert.
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: Otto123 am 07 Dezember 2025, 17:48:36
@betateilchen - irgendwie war ich schon gespannt, ob dieser Einwand kommt :)
Dazu kann ich folgendes berichten:
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: betateilchen am 07 Dezember 2025, 17:57:40
Zitat von: Otto123 am 07 Dezember 2025, 17:48:36das Device Logfile kennt leider kein reopen

Habe ich irgendwo etwas vom device "Logfile" geschrieben?

Zitat von: Otto123 am 07 Dezember 2025, 17:48:36warum weiß ich nicht. Jedes andere FileLog Device kennt reopen

Weil "Logfile" kein reguläres devices vom Type FileLog ist.
Rudi hat das in der Vergangenheit schon mehrfach im Forum erklärt.

ZitatLang:
Logfile ist als passiver Eintrag gedacht, es sollte nur das Code-Doppeln fuer die FHEM-Log Anzeige in FHEMWEB vermeiden.

Aus diesem Grund sind auch viele FileLog Attribute nicht erwünscht.
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: Otto123 am 07 Dezember 2025, 18:49:07
ja ich weiß es ja eigentlich :)
Ich hatte Deinen Beitrag als Antwort auf meine Codezeile verstanden, in der geht es ja um $currlogfile (Logfile/FHEM-Log)
Aber genau da ist der Punkt: für das FHEM-Log - wenn man das extern manipuliert - hat man kein reopen - oder sehe ich es nur nicht?

Es kann aber auch sein, ich habe das alles hier falsch verstanden. Ich dachte nur, weil es um Fehlermeldungen geht, muss es doch hier um das Logfile (FHEM-Log) gehen?
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: is2late am 08 Dezember 2025, 11:38:03
Hallo Zusammen,

recht herzlichen Dank für Eure Hilfe!
@Otto: Stimmt, gemeint ist das Fhem-Log.

Und vermutlich liegt es an meinem begrenzten Verständnis, aber ich habe bei obigen unterschiedlichen Ansätzen immer noch nicht verstanden, wie ich das Fhem-Log zB zweitägig  automatisch löschen kann.

Den Tipp von RalfRog - vielen Dank! - werde ich bezüglich der Photovoltaik-Fehlermeldungen ausprobieren.

LG Ingo
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: betateilchen am 08 Dezember 2025, 12:21:45
Zitat von: is2late am 08 Dezember 2025, 11:38:03Und vermutlich liegt es an meinem begrenzten Verständnis, aber ich habe bei obigen unterschiedlichen Ansätzen immer noch nicht verstanden, wie ich das Fhem-Log zB zweitägig  automatisch löschen kann.

Nochmal:


defmod Logfile FileLog ./log/fhem-%d.log Logfile
attr Logfile nrarchive 2
attr global nrarchive 2
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: is2late am 08 Dezember 2025, 15:51:10
Das ist wunderbar deutlich, danke Betateilchen!

Um das Logfile in dieser Form anlegen zu können,
muss ich das vorhandene erst löschen, richtig?
Dieses sieht so aus:
defmod Logfile FileLog ./log/fhem-%Y-%m.log fakelog
LG Ingo
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: betateilchen am 08 Dezember 2025, 16:36:48
Zitat von: is2late am 08 Dezember 2025, 15:51:10Um das Logfile in dieser Form anlegen zu können,
muss ich das vorhandene erst löschen, richtig?

Musst Du nicht, das übernimmt defmod für Dich.
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: is2late am 08 Dezember 2025, 17:09:09
Herzlichen Dank!!!
Titel: Aw: (GELÖST) Fhem-Log periodisch löschen
Beitrag von: is2late am 08 Dezember 2025, 17:59:36
Hm, Überraschung...
Jetzt gibt es die Fehlermeldung

FileLog_logWrapper: bad arguments
"list logfile" führt zu
No device named logfile found
"list global" zeigt zwei unterschiedliche Definitionen. Aber welche ist richtig für mein "Ein-Tages-Log" bzw. welche muss ich ggf wo anpassen?
currentlogfile ./log/fhem-2025-12.log  oder
logfile    ./log/fhem-%Y-%m.log
Das vorhandene Log
defmod Logfile FileLog ./log/fhem-%Y-%m.log fakeloghatte ich überschrieben mit
defmod Logfile FileLog ./log/fhem-%d.log Logfile
LG
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: betateilchen am 08 Dezember 2025, 19:42:01
Sorry, mein Fehler. Das Logfile ist wirklich sehr speziell...

Du musst vermutlich noch das Attribut im global device anpassen:

attr global logfile ./log/fhem-%d.log
Zitat von: is2late am 08 Dezember 2025, 17:59:36"list logfile" führt zu
No device named logfile found

Man achte auf Groß-/Kleinschreibung: Das in Deinem list gesuchte device heißt Logfile und nicht logfile.
Das Attribut "logfile" im global-device wird aber tatsächlich kleingeschrieben, weil das ein Attributname ist und kein Devicename.

Zusammengefasst:

defmod Logfile FileLog ./log/fhem-%d.log Logfile
attr Logfile nrarchive 2

attr global logfile ./log/fhem-%d.log
attr global nrarchive 2

Und nach den ganzen Änderungen den FHEM-Neustart nicht vergessen!
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: Jamo am 08 Dezember 2025, 21:28:30
Bei mir funktioniert folgendes:
Zum löschen des Log:
set Logfile clear
Zum filtern unerwünschter Einträge lasse ich folgendes Shell Script ausführen. Per sed (als user fhem) werden alle Zeilen mit ebendiesen Einträgen gelöscht:

jamo@inuc:/opt/fhem$ cat ClearLog.sh
#!/bin/bash
cp /opt/fhem/log/fhem.log /opt/fhem/log/fhem.txt
sed -i -e "/Set Low Energy complete/d" -e "/Cannot fork: Cannot allocate memory/d" -e "/1: stacktrace:/d" -e "/Readout_Run_Web/d" -e "/Readout_Run_Web_LuaQuery/d" -e "/Readout_Response/d" -e "/Wide character in syswrite/d" /opt/fhem/log/fhem.txt
cp /opt/fhem/log/fhem.txt /opt/fhem/log/fhem.log
Das funktioniert bei mir gut.
Titel: Aw: Fhem-Log periodisch löschen
Beitrag von: is2late am 09 Dezember 2025, 16:23:54
Herzlichen Dank betateilchen!

Danke auch für deinen Tipp, Jamo; probiere ich aus!
Titel: Aw: (GELÖST) Fhem-Log periodisch löschen
Beitrag von: Prof. Dr. Peter Henning am 09 Dezember 2025, 19:24:47
Zitat von: is2late am 07 Dezember 2025, 11:01:37Oh, eine angenommene Herausforderung
Sicher nicht, ich bin nicht mehr in der Pubertät.

Zu dem betreffenden Thread will ich nur soviel sagen: Offenbar fehlerhafter Python-Code, der sich nicht an die FHEM-Konventionen hält.

LG

pah
Titel: Aw: (GELÖST) Fhem-Log periodisch löschen
Beitrag von: is2late am 10 Dezember 2025, 18:24:18
ZitatSicher nicht, ich bin nicht mehr in der Pubertät.
Ich finde auch mit 71 Jahren Herausforderungen oft noch spannend.....
..und gebe das Ziel nicht auf, in jedem Alter in Teilbereichen besser zu werden.

Ich habe das Problem mit ChatGPT erörtert. Chaty hat offenbar die Lösung gefunden (https://forum.fhem.de/index.php?topic=126126.new#new)
Beitrag 308
Titel: Aw: (GELÖST) Fhem-Log periodisch löschen
Beitrag von: Prof. Dr. Peter Henning am 11 Dezember 2025, 11:58:35
Zitat von: is2late am 10 Dezember 2025, 18:24:18Chaty
Hmm, wer ein statistisch arbeitendes System mit einem Kosenamen belegt, sollte das mal mit einem Arzt seines Vertrauens erörtern.

LG

pah
Titel: Aw: (GELÖST) Fhem-Log periodisch löschen
Beitrag von: rabehd am 11 Dezember 2025, 12:56:14
Zitat von: Prof. Dr. Peter Henning am 11 Dezember 2025, 11:58:35Hmm, wer ein statistisch arbeitendes System mit einem Kosenamen belegt, sollte das mal mit einem Arzt seines Vertrauens erörtern.
Das würde ich nicht pauschalisieren!
Ein "Kose"-Name kann auch sagen, dass man mit Herzblut an der Sache arbeitet.
Es gibt genug Menschen ohne solche Kose-Namen-Themen, die einen Arzt brauchen.