FHEM Statistik

Begonnen von erwin, 02 Oktober 2021, 19:20:29

Vorheriges Thema - Nächstes Thema

erwin

Ich bin nicht sicher, ob das in dieses Forum gehört, bei Bedarf bitte verschieben.

Die Frage zur FHEM Statistik: https://fhem.de/stats/statistics.html
Unter ..used Modules finde ich die Anzahl der Installs/Modul und die Anz Definitionen...
Ist hier ein Ageing implementiert ? Sprich: verschwinden Modulzahlen wenn nach xx Monaten kein update passiert ?
Hintergrund: Es gibt da ein Modul EIB, dass seit 2018 deprecated ist,... und noch immer 11 Installs und 1238 defs hat...
Das Nachfolger-Modul hat: 147 installs und 20000+ Defs! Das wirft die Frage auf, wieviel ich in die Kompatibilität zum EIB-Modul investieren will  ;D

Zusatzfrage zu defined Models: ich gehe davon aus, dass diese Zahlen aus dem Attr Model generiert werden.
Wäre es möglich, (falls kein Attr Model existiert), das aus einem Internal z.B. $hash->{Model} od. $hash->{'.Model'} auszulesen?

Die Attribute, die vom System gesetzt werden scheinen ja aus der Mode zu kommen... (Stichwort: IODev), daher will ich kein Attr Model setzen... - Die Zahlen wären jedoch für den Developer sehr interessant!
l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

Markus Bloch

Hallo Erwin,

ja, es gibt ein Ageing. Alle Datensätze die seit 1 Jahr nicht mehr aktualisiert worden sind (durch "fheminfo send" oder ein update inkl. "fheminfo send" werden gelöscht: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/statistics/2017/maintainDB.cgi#L13

Zu den "defined models". Ja, es gehen alle 3 Möglichkeiten:


  • Internal: "MODEL": $hash->{'MODEL'} oder "model": $hash->{'model'}
  • Reading: "model"
  • Attribut: "model"

VG
Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

erwin

Danke Markus,
das hilft mir sehr!

wg. Migration EIB->KNX: ich muss offensichtlich mehr Werbung machen   ;D
l.g. Erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

erwin

Hallo Markus,

ich hab jetzt gefunden, warum es nicht geht:
das Modul KNX ist vom model-update ausgeschlossen, gleich 2mal!
und zwar: ( fheminfo.pm):
1) in der @noModelList
2) hier:# 2. look for model information in internals
     unless (lc($type) eq 'knx') {
         $model = defined($defs{$key}{model}) ? $defs{$key}{model} : $model;
         $model = defined($defs{$key}{MODEL}) ? $defs{$key}{MODEL} : $model;
     }

Es hat allerdings keine Dringlichkeit, ich werde nächte Woche die neue Version vom KNX-Modul releasen, die $hash->{model} hat.
Noch eleganter wäre allerdings $hash->{'.model'}...  :)
Danke Erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

betateilchen

#4
Der Ausschluss von KNX an dieser Stelle wurde seinerzeit eingebaut, weil in den KNX devices sehr oft Model-Informationen standen, die sich nicht sinnvoll auswerten lassen.

Sollte sich das Verhalten des KNX Moduls an dieser Stelle zwischenzeitlich geändert haben, werde ich mir das gerne anschauen und ggf. auch die KNX-Models in der Statistik berücksichtigen.

Warum man in Internals allerdings das Model in .model verstecken müsste, erschließt sich mir bisher nicht. An dieser Stelle würde ich gerne beim bisherigen Standard bleiben.


--
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

erwin

Hi,
Ich bin erst seit kurzem Maintainer vom KNX-Modul,
kann aber mit Sicherheit sagen, dass in den letzten 2 Jahren kein Internal und kein Attr"model" gegeben hat.
Das war/ist allerdings beim Vorgänger-Modul (EIB =deprecated seit 2018) der Fall und richtig: die Bezeichnungen waren nicht optimal....
Bitte um diesbez. review (werde vmtl. am Dienstag das Modul updaten mit $hash{model}).

Ad Internals verstecken: - damit der Detail-view möglichst übersichtlich bleibt   ;D - bietet in diesem Fall keine zus. Info, weil diese info schon in der def verfügbar ist/sein muss.
Ist mir aber auch nicht so wichtig!

Danke für eure Unterstützung!
Erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

betateilchen

Zitat von: erwin am 03 Oktober 2021, 18:30:23
kann aber mit Sicherheit sagen, dass in den letzten 2 Jahren kein Internal und kein Attr"model" gegeben hat.

Da wette ich problemlos dagegen, da ich mir gerade die letzte Version vor Deinem Umbau gezogen und angeschaut habe.

Im deviceHash von KNX devices gab es in der Vergangenheit sehr wohl $hash->{MODEL} und das war als eigener hash ausgeprägt.
Genau dieser hash führte zu den Problemen, die zum Ausschluss von KNX aus fheminfo führten, weil dann versucht wurde, den hash als "model" zu interpretieren.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

erwin

Sorry falls ich falsch gelegen bin, ich finde das zwar nicht in Rev. 17408 v. 26.09.2018
was ich finde ist:
$hash->{GADDETAILS}{$gadName} = {GROUP => $gad, CODE => $gadCode, MODEL => $gadModel, ......
und das kann ja nicht das Problem sein, oder?
möglich das ich noch was übersehe....

Ist aber auch egal, die Vergangenheit!
Wichtig ist mir die sinnvolle Wartung des Moduls, und dabei kann ich Unterstützung u. Kritik gut brauchen.
l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

betateilchen

Zitat von: betateilchen am 03 Oktober 2021, 19:02:26
da ich mir gerade die letzte Version vor Deinem Umbau gezogen und angeschaut habe.

Ok, das war nicht korrekt. Ich hatte mir nicht die letzte Version vor Deinem Umbau gezogen, sondern eine Version, die zum Zeitpunkt des Umbaus von fheminfo und der FHEM Statistik aktuell war. Darin finden sich Dinge wie z.B.


#model
$hash->{MODEL}{$gno} = $model;


was seinerzeit zu den beschriebenen Problemen führte.

Vorschlag:
bau mal Dein Modul fertig und checke das am Dienstag ein, dann machen wir ein paar Tests, bezüglich der Auswertung von Modellen. Leider habe ich keine KNX Geräte, um das selbst testen zu können.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

erwin

Ok danke, guter Vorschlag!
Schönen Abend noch!
erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

erwin

Hi betateilchen,
ich bin "ready for testing"...

Vorschlag: ich teste mit einer gepatchten fheminfo - auf 2 systemen, du checkst die Ergebnisse am Server und falls ok schick ich dir ein diff als Vorschlag ?
l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

betateilchen

moin,

das mit der gepatchten fheminfo ist ok, das mit dem diff auch...

Nur das mit "Ergebnisse am Server checken" funktioniert nicht, da ich keinen Zugriff auf den Server oder die Statistikdatenbank habe. Brauche ich aber für eine Einschätzung auch nicht.

Schick mir einfach von beiden Systemen die Ausgabe von "fheminfo send debug", das reicht mir für eine Einschätzung. Am besten per email hier über das Forum.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

erwin

Hi,
..email ist unterwegs, patch-vorschlag hier...
l.g erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

betateilchen

funktioniert prinzipiell, aber so richtig sinnvoll - im Sinne von sprechend - erscheinen mir die Modellbezeichnungen irgendwie nicht...


"KNX":{"dpt1":18,"dpt10":1,"dpt11":1,"dpt12":1,"dpt13":1,"dpt14":1,"dpt16":2,"dpt17":1,"dpt19":1,"dpt2":1,"dpt20":1,"dpt232":1,"dpt3":1,"dpt5":7,"dpt6":1,"dpt7":2,"dpt8":1,"dpt9":6,"noModel":43},

"KNX":{"dpt1":1,"dpt10":1,"dpt11":1,"noModel":119}

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

erwin

...sind schon sprechend: im KNX standard spricht man von data-point-types (dpt) - bezeichnet die codierung der jeweiligen Message für das Gerät - die geht von 1bit bis 4byte (long), dann gibts noch float und auch noch 14Byte (ascii)Text....
Die vielen noModel (vom system2) sind noch der Tatsache geschuldet, dass ich auf dem system noch kein fhem-shutdown/restart gemacht hab und daher viele devices noch kein $hash{model} haben.
l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...