Autor Thema: Log3 und Datenübergabe an $logInform{$li}  (Gelesen 299 mal)

Offline Byte09

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1395
Log3 und Datenübergabe an $logInform{$li}
« 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

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 20680
Antw:Log3 und Datenübergabe an $logInform{$li}
« Antwort #1 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.

Offline Byte09

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1395
Antw:Log3 und Datenübergabe an $logInform{$li}
« Antwort #2 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
« Letzte Änderung: 12 Dezember 2018, 10:14:24 von Byte09 »

 

decade-submarginal