FHEM Forum

FHEM - Entwicklung => FHEM Development => Thema gestartet von: Byte09 am 12 Dezember 2018, 09:15:42

Titel: Log3 und Datenübergabe an $logInform{$li}
Beitrag von: Byte09 am 12 Dezember 2018, 09:15:42
guten morgen ,

nur mal eine vorsichtige Anfrage:

kan sein , dasss ich falsch liege , ich gehe aber davon aus, dass der gesamte codeteil in der fhem.pl - sub Log3 :  no strict "refs";
  foreach my $li (keys %logInform) {
    if($defs{$li}) {
      &{$logInform{$li}}($li, "$tim $loglevel : $text");
    } else {
      delete $logInform{$li};
    }
  }
  use strict "refs";
derzeit nur von notify genutzt/benötigt wird ?.

sollte das so sein , wäre es dann ggf. möglich , hier den Namen des Log3-aufrufenden Devices mit zu übergeben  - z.b.:&{$logInform{$li}}($li, "$dev $tim $loglevel : $text");das würde eine darauf aufbauende Auswertung des übergebenen Strings in meinen Augen vereinfachen (zumindest für mein Modul) .

dürfte dann doch für vorhandene Konfigurationen keinen Unterschied machen , da ( bei Nutzung ) wohl eh per Regex nach 'Treffern' gesucht werden muss - oder sehe ich das falsch ?

Gruss Byte09
Titel: Antw:Log3 und Datenübergabe an $logInform{$li}
Beitrag von: rudolfkoenig am 12 Dezember 2018, 09:38:27
% grep -l logInform FHEM/*.pm
FHEM/01_FHEMWEB.pm
FHEM/91_notify.pm
FHEM/93_Log2Syslog.pm
FHEM/98_telnet.pm
Zitat
wäre es dann ggf. möglich , hier den Namen des Log3-aufrufenden Devices mit zu übergeben  - z.b.
Ungern, da ich nicht ueberblicke, was das fuer Nebenwirkungen haette.
Abgesehen davon, dass bereits definierte Notifies evtl. nicht mehr funktionieren.
Fuer welchen Zweck willst du diese Daten auswerten?
Ich plane nicht logInform zu Event-Ersatz auszubauen.
Titel: Antw:Log3 und Datenübergabe an $logInform{$li}
Beitrag von: Byte09 am 12 Dezember 2018, 09:47:54
danke für die schnelle antwort, auf diese idee % grep -l logInform FHEM/*.pm bin ich irgendwie nicht gekommen und soviel zu 'wird nur von notify verwendet'.

ein ausbau zum eventersatz soll es ja nicht sein  ( ist es ja im grunde schon / zumindest kann es von notify so genutzt werden )

diese Funktion möchte ich von notify ( für den bedarfsfall ) übernehmen , könnte anhand der Namesübergabe aber zu einem sehr frühen Zeitpunkt prüfen , ob diese Daten überhaupt relevant sind ( im Rahmen der Konfiguration ) und kann ansonsten den Aufruf sehr schnell beenden ( wenn ich den Namen an einer definierten position habe/bzw. ihn überhaupt habe.)

kann aber durchaus verstehen wenn du hier keine änderung vornehmen möchtest und überlege mir etwas anderes.

danke und gruss Byte09