[gelöst] Neue filelogs in definierten Raum mit Zusatzattribute anlegen

Begonnen von sash.sc, 31 Mai 2026, 22:22:30

Vorheriges Thema - Nächstes Thema

sash.sc

Hallo zusammen.

Habe bis jetzt leider nix gefunden.
Neue Filelogs sollen in einem definierten Raum angelegt werden. Ebenfalls soll dann automatisch das narchive mit 8 Monaten und das arichve Verzeichnis auf ./arc_log/ angelegt werden.

Jemand einen Vorschlag wie ich das umsetzen kann?

Gruß und danke
Sascha
Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

Beta-User

"help archetype" sollte auch auf Alternativen verweisen.
Server: HP-elitedesk@Debian 13, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

betateilchen

Soll das dauerhaft so sein oder nur jetzt bei einer Umstellung nach dem Motto "ich muss jetzt 10 FileLogs anlegen und möchte nicht 10 Mal die gleichen Attribute von Hand setzen"?

Wenn es um eine Einmalaktion geht, kannst Du auch "setdefaultattr" verwenden. Das wirkt aber auf alle danach neu angelegten devices, deshalb sollte man nicht vergessen, das setdefaultattr auch wieder zu löschen.

Als dauerhafte Lösung kann man ein notify bauen, das auf global:DEFINED reagiert und dann in einer Funktion z.B. in 99_myUtils.pm feststellt, ob das neu angelegte device vom Type FileLog ist und dann die gewünschten Attribute setzt.

Noch eine Alternative: auf DbLog umsteigen :)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

sash.sc

Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

sash.sc

So, habe mal nachgeschaut.

Habe mich für ein notify entschieden.

Hier die Definition

defmod nt_move_filelogs notify global:DEFINED.* { if (InternalVal($EVTPART1, "TYPE", "") eq "FileLog") { fhem("attr $EVTPART1 room 99_Logs") } }
attr nt_move_filelogs room 99_System

Habe dann noch mit dem Einzeller alle vorhandenen FileLogs in einen Raum schieben lassen.

Eingabe in fhem Kommando Zeile.

attr TYPE=FileLog room 99_Logs


Scheint bis jetzt zu funktionieren.

Habe das mit gemini gelöst. 😉

Gruß
Sascha
Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

betateilchen

Zitat von: sash.sc am 06 Juni 2026, 12:05:06Habe das mit gemini gelöst. 😉

Das steht doch alles genau so in der commandref.
Wofür braucht man dafür gemini?

Achso - im Gegensatz zu Dir hat gemini schonmal irgendwann einen Blick in die commandref geworfen 8)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

sash.sc

Mag sein das gemini das gemacht hat. Habe im Moment leider nicht Zeit dafür.
War, für mich, im Moment der schneller weg.
Habe in der Vergangenheit öfters rein geschaut.  8)

Fhem läuft bei mir im Moment so wie ich es brauche. Befasse mich daher nicht mehr soviel damit.

Danke euch

Gruß
Sascha
Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb