FHEM Forum

FHEM => Sonstiges => Thema gestartet von: Soc am 07 Oktober 2015, 10:04:39

Titel: löschen Filelogs (delete filelogname) löscht das File nicht?!
Beitrag von: Soc am 07 Oktober 2015, 10:04:39
Hallo Zusammen,

ich habe vor geraumer Zeit das logging auf sqlite3 umgestellt.
Nun habe ich heute mit dem fhem Befehl delete logfilename die überflüssigen Logfiles gelöscht.
Die Files selber werden aber wohl nicht gelöscht (/opt/fhem/log/).

Sprich: Von Hand löschen?

Gruß

Soc
Titel: Antw:löschen Filelogs (delete filelogname) löscht das File nicht?!
Beitrag von: betateilchen am 07 Oktober 2015, 10:32:04
Mit delete logfilename löscht Du ja nicht auf Betriebssystemebene, sondern nur innerhalb von fhem. Du hast also nur die Definition des devices gelöscht, dsa die Logfiles schreibt. Die Dateien auf Deiner Festplatte werden davon überhaupt nicht angerührt.

Das Prinzip ist fhem-weit das gleiche:


Das Löschen solcher Dateien muss immer im Betriebssystem erfolgen. Aber dank Wildcards läßt sich das ja mit einem einzigen Befehl durchführen, z.B.

rm /opt/fhem/log/fhem-2015*

oder wie auch immer Deine Dateinamen aussehen.



Titel: Antw:löschen Filelogs (delete filelogname) löscht das File nicht?!
Beitrag von: Soc am 07 Oktober 2015, 12:07:51
Hab ich mir fast gedacht.
Danke für die Info.

Gruß

Soc
Titel: Antw:löschen Filelogs (delete filelogname) löscht das File nicht?!
Beitrag von: rudolfkoenig am 07 Oktober 2015, 13:39:17
Code ist zwar dafuer vorhanden (DeleteFn), es war mir offensichtlich zu riskant, es zu aktivieren:

------------------------------------------------------------------------
r5068 | rudolfkoenig | 2014-02-28 08:15:18 +0100 (Fri, 28 Feb 2014) | 4 lines

FileLog: deactivate the actual file-deletion, as deleting a device may happen
accidentally, and there is no easy way to reclaim the lost data
Titel: Antw:löschen Filelogs (delete filelogname) löscht das File nicht?!
Beitrag von: karl0123 am 07 Oktober 2015, 14:10:03
Ich bin eigentlich nicht so ein Fan von zu viel Javascript aber könnte man im Falle eines deletes (vor allem beim Link unter der Detailansicht) nicht einfach das Löschen mit Hilfe eines Dialogs bestätigen lassen? Gerade mit dem Link hat man schnell mal ein Device gelöscht, das man eigentlich nicht löschen wollte.

Dann könnte man auch das Löschen der File-Log Datei wieder aktivieren.
Titel: Antw:löschen Filelogs (delete filelogname) löscht das File nicht?!
Beitrag von: betateilchen am 07 Oktober 2015, 14:22:10
Zitat von: karl0123 am 07 Oktober 2015, 14:10:03
Gerade mit dem Link hat man schnell mal ein Device gelöscht, das man eigentlich nicht löschen wollte.

Solange man kein SAVE ausführt, passiert dabei gar nichts. Einfach ein rereadcfg und das Device ist wieder da.
Ausserdem hat man für sowas auch immer eine aktuelle Datensicherung seiner fhem-Konfiguration parat.

Und generell ist das ein Problem, das ausschließlich Anwender betrifft, die mit fhem.cfg arbeiten. In der configDB ist selbst nach einem SAVE immer noch die letzte Konfigurationsversion wiederherstellbar.
Titel: Antw:löschen Filelogs (delete filelogname) löscht das File nicht?!
Beitrag von: rudolfkoenig am 07 Oktober 2015, 14:27:19
Erstens gibt es auch andere Frontends, zweitens bin ich kein Fan von erst klicken dann denken, drittens kann man nach versehentliches Loeschen ein "shutdown restart" ohne save durchfuehren. Wenn wir mit dem Dialog anfangen wuerden, dann muessten wir konsequenterweise nach jeder Aenderung save automatisch durchfuehren.
Titel: Antw:löschen Filelogs (delete filelogname) löscht das File nicht?!
Beitrag von: karl0123 am 07 Oktober 2015, 15:46:20
Das ist mir alles bewusst, führt aber zu zusätzlichem Aufwand. Außerdem war es nur ein Vorschlag um das im Thread angesprochene "Problem" zu lösen, falls man überhaupt von einem Problem sprechen kann. Die "du bist doof, weil du nicht weißt, dass man auf SAVE drücken muss" Keule zu schwingen war hier sicher nicht nötig.

Das hat im Übrigen nichts mit "erst klicken dann denken" oder einer vorhandene Datensicherung zu tun. Die Links in der Deviceansicht stehen so eng beisammen, dass so ein falscher Klick passieren kann, auch wenn man gedacht hat. Dasselbe gilt für Attribute. Usability ist das Stichwort. Von Touch-Devices will ich gar nicht reden, weil man die natürlich für die Administration möglichst nicht verwenden sollte.

Die Mehrheit wird im Übrigen die fhem.cfg verwenden, da bin ich ziemlich sicher, das tut aber nichts zur Sache. Ein "shutdown restart" ist ganz sicher für ein Produktivsystem kein wirklich sinnvoller Tipp und kein Ersatz für eine benutzerfreundliche Umgebung. Konsequenterweise sollte man andernfalls die Links zum Löschen eines Devices aus der Detailansicht entfernen, da die Eingabe in die Kommandozeile das "denken" wahrscheinlicher macht.

Denken hätte hier auch geholfen, den Vorschlag richtig zu interpretieren.