Patch FileLog, Attribut "createGlueFile" funktioniert nicht mit Wochen-Logs

Begonnen von Happy Fhem User, 16 Oktober 2016, 13:17:17

Vorheriges Thema - Nächstes Thema

Happy Fhem User

Beim Lesen des Threads https://forum.fhem.de/index.php/topic,57989.msg494170.html#msg494170 stolperte ich über diese für mich hilfreiche Funktion (ich nutze an vielen Stellen Wochen-Logs) zum automatischen Anzeigen von älteren Log-Werten in den SVG-Plots.

Die verantwortliche Funktion "expandFileWildcards" in 92_FileLog.pm betrachtet leider nur eine sehr kleine Auswahl an Platzhaltern, die man in der FileLog Defintion angeben kann.

Mittels des folgenden Patches wird die zentrale Routine aus fhem.pl zur Auflösung der Platzhalter genutzt und es dürfte bei mehr Leuten funktionieren - mich eingeschlossen.

Ich hoffe, nix an Nebeneffekten übersehen zu haben und der Patch wird übernommen.

Mfg, Happy FHEM User


--- BK/92_FileLog_pre_createGluedFile.pm 2016-10-16 12:27:17.550111276 +0200
+++ 92_FileLog.pm 2016-10-16 13:00:28.092615987 +0200
@@ -608,11 +608,7 @@
         sub expandFileWildcards($$$$) {
             my $f=shift;
             my ($Y,$m,$d)=@_;
-            $f =~ s/%Y/$Y/g;
-            $f =~ s/%m/$m/g;
-            $f =~ s/%d/$d/g;
-            $f =~ s/%L/$attr{global}{logdir}/g if($attr{global}{logdir});
-            return($f);
+           return ResolveDateWildcards($f,localtime(time_str2num("$Y-$m-$d")));
         };
         $linf=expandFileWildcards($linf,$Y,$m,$d);
         if(AttrVal($name, "createGluedFile", 0)) {


rudolfkoenig

Habs eingecheckt.
Weiss nicht mehr, warum ich extra Code verwendet habe, aber wenn ich was uebersehen habe, dann taucht das bestimmt demnaechst hier auf.