Ankündigung

Einklappen
Keine Ankündigung bisher.

Support Thread - "DatabaseAddOn" Plugin

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • ooUrmeloo
    antwortet
    Sisamiwe : Vielen Dank!! Sieht auf den Blick gut aus. Die min / max Werte scheinen jetzt zu stimmen. Muss aber auch mal noch Woche, Monat, etc. ausprobieren. Die Betriebsstunden (d.h. verbrauch_tag) kann ich aktuell nicht testen, weil meine Heizung schon ne Weile nicht mehr starten muss ...
    Muss mal überlegen, wie ich das aktuell testen könnte.

    Wenn ich das richtig sehe, hast Du ja aber noch einiges ändern müssen.

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    ooUrmeloo

    Ich konnte den Fehler nachvollziehen und habe für den Bugfix einen PR erstellt.'
    Kannst Du den PR bzw den Inhalt mal testen?

    Einen Kommentar schreiben:


  • ooUrmeloo
    antwortet
    Code:
    paradigma:
          Aussentemperaturraw:
              type: num
              name: AT
              enforce_updates: True
              modBusObjectType@paradigma: InputRegister 
              modBusAddress@paradigma: 0000
              modBusFactor@paradigma: 0.1
              modBusDataType@paradigma: int16
              database_maxage: 30
              database: yes
              cache: True
           Aussentemperatur: 
              type: num
              eval: round(sh.paradigma.Aussentemperaturraw(), 2)
              eval_trigger: paradigma.Aussentemperaturraw
              database_maxage: 1100
              database: yes
              cache: True
    
    
         Betriebsstunden: 
              type: num
              name: Betrieb
              enforce_updates: True
              # modBusObjectType@paradigma: HoldingRegister (default) 
              modBusAddress@paradigma: 0027
              modBusFactor@paradigma: 1
              modBusDataType@paradigma: uint32
              eval: round(value, 2)
              eval_trigger: paradigma.Betriebsstunden
              database_maxage: 365
              database: yes
              cache: True

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    Zitat von ooUrmeloo Beitrag anzeigen
    Siehe zwei Beispiel Items weiter vorne:
    https://knx-user-forum.de/forum/supp...63#post1948163
    Und die Definition der beiden Database-Items, die du per Attribut nutzt? paradigma....

    Einen Kommentar schreiben:


  • ooUrmeloo
    antwortet
    Siehe zwei Beispiel Items weiter vorne:
    https://knx-user-forum.de/forum/supp...63#post1948163

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    ooUrmeloo
    Stell mal deine Item Config der Problemitems hier ein

    Einen Kommentar schreiben:


  • ooUrmeloo
    antwortet
    Darf ich hier nochmal nachhaken? Bei mir tut das Database Add-on irgendwie immer noch nicht, wie es soll :-(
    Was mach ich falsch?

    Zitat von ooUrmeloo Beitrag anzeigen
    Sorry! ... neuer Versuch. Hier mal das, was ich denke, was helfen könnte:

    Code:
    2024-04-07 22:19:45 DEBUG plugins.db_addon parse item: temperatur.aussen.min1d due to 'db_addon_fct'
    2024-04-07 22:19:45 DEBUG plugins.db_addon minmax_tag_min: item_attribute_dict={'cat': 'wertehistorie', 'on': 'change', 'sub_cat': 'onchange', 'item_type': 'num', 'calc': 'daily', 'params': False, 'description': 'Minimalwert seit Tagesbeginn'}
    2024-04-07 22:19:45 DEBUG plugins.db_addon Attribut 'db_addon_database_item' for item='temperatur.aussen.min1d' has been found 0 level above item at 'temperatur.aussen.min1d'.
    2024-04-07 22:19:45 DEBUG plugins.db_addon _database_item_path='paradigma.Aussentemperatur', temperatur.aussen.min1d
    2024-04-07 22:19:45 DEBUG plugins.db_addon database_item='paradigma.Aussentemperatur', db_addon_startup=None, db_addon_ignore_value_list=None, db_addon_ignore_value=None
    2024-04-07 22:19:45 DEBUG plugins.db_addon Item=temperatur.aussen.min1d added with db_addon_fct=minmax_tag_min and database_item=paradigma.Aussentemperatur
    2024-04-07 22:19:45 DEBUG plugins.db_addon Item 'temperatur.aussen.min1d' added to be run daily.
    
    
    2024-04-07 22:19:45 DEBUG plugins.db_addon parse item: temperatur.aussen.max1d due to 'db_addon_fct'
    2024-04-07 22:19:45 DEBUG plugins.db_addon minmax_tag_max: item_attribute_dict={'cat': 'wertehistorie', 'on': 'change', 'sub_cat': 'onchange', 'item_type': 'num', 'calc': 'daily', 'params': False, 'description': 'Maximalwert seit Tagesbeginn'}
    2024-04-07 22:19:45 DEBUG plugins.db_addon Attribut 'db_addon_database_item' for item='temperatur.aussen.max1d' has been found 0 level above item at 'temperatur.aussen.max1d'.
    2024-04-07 22:19:45 DEBUG plugins.db_addon _database_item_path='paradigma.Aussentemperatur', temperatur.aussen.max1d
    2024-04-07 22:19:45 DEBUG plugins.db_addon database_item='paradigma.Aussentemperatur', db_addon_startup=None, db_addon_ignore_value_list=None, db_addon_ignore_value=None
    2024-04-07 22:19:45 DEBUG plugins.db_addon Item=temperatur.aussen.max1d added with db_addon_fct=minmax_tag_max and database_item=paradigma.Aussentemperatur
    2024-04-07 22:19:45 DEBUG plugins.db_addon Item 'temperatur.aussen.max1d' added to be run daily.
    
    
    2024-04-07 22:19:44 DEBUG plugins.db_addon verbrauch_tag: item_attribute_dict={'cat': 'verbrauch', 'on': 'change', 'sub_cat': 'onchange', 'item_type': 'num', 'calc': 'daily', 'params': False, 'description': 'Verbrauch am heutigen Tag (Differenz zwischen aktuellem Wert und den Wert am Ende des vorherigen Tages)'}
    2024-04-07 22:19:44 DEBUG plugins.db_addon Attribut 'db_addon_database_item' for item='paradigma.Betriebsstunden_Tag_bisher' has been found 0 level above item at 'paradigma.Betriebsstunden_Tag_bisher'.
    2024-04-07 22:19:44 DEBUG plugins.db_addon _database_item_path='paradigma.Betriebsstunden', paradigma.Betriebsstunden_Tag_bisher
    2024-04-07 22:19:44 DEBUG plugins.db_addon database_item='paradigma.Betriebsstunden', db_addon_startup=None, db_addon_ignore_value_list=None, db_addon_ignore_value=None
    2024-04-07 22:19:44 DEBUG plugins.db_addon Item=paradigma.Betriebsstunden_Tag_bisher added with db_addon_fct=verbrauch_tag and database_item=paradigma.Betriebsstunden
    2024-04-07 22:19:44 DEBUG plugins.db_addon Item 'paradigma.Betriebsstunden_Tag_bisher' added to be run daily.​

    bei manuellem Trigger:

    Code:
    2024-04-07 22:24:02 INFO plugins.db_addon # 1 item(s) to do. || 'on-demand' item=temperatur.aussen.max1d will be processed.
    2024-04-07 22:24:02 DEBUG plugins.db_addon Item=temperatur.aussen.max1d with item_config={'db_addon': 'function', 'db_addon_fct': 'minmax_tag_max', 'database_item': Item: paradigma.Aussentemperatur, 'query_params': {'func': 'max', 'timeframe': 'day', 'start': 0, 'end': 0}, 'suspended': False, 'database_item_path': True, 'on': 'change', 'cycle': 'daily', 'startup': False}
    2024-04-07 22:24:02 DEBUG plugins.db_addon db_addon_fct='minmax_tag_max' will _query_item with params={'func': 'max', 'timeframe': 'day', 'start': 0, 'end': 0, 'database_item': Item: paradigma.Aussentemperatur}.
    2024-04-07 22:24:02 DEBUG plugins.db_addon called with func='max', item=paradigma.Aussentemperatur, timeframe='day', start=0, end=0, group='', group2='', ignore_value_list=None, use_oldest_entry=False
    2024-04-07 22:24:02 DEBUG plugins.db_addon Called with query="SELECT id, name, time, val_str, val_num, val_bool, changed FROM item WHERE name = 'paradigma.Aussentemperatur'", params={}, cur=None
    2024-04-07 22:24:02 DEBUG plugins.db_addon Connect to database.
    2024-04-07 22:24:02 DEBUG plugins.db_addon Result of query=SELECT id, name, time, val_str, val_num, val_bool, changed FROM item WHERE name = 'paradigma.Aussentemperatur': (19, 'paradigma.Aussentemperatur', 1712521293540, None, 16.7, 1, 1712521294563)
    2024-04-07 22:24:02 DEBUG plugins.db_addon Called with query='SELECT min(time) FROM log WHERE item_id = :item_id;', params={'item_id': 19}, cur=None
    2024-04-07 22:24:02 DEBUG plugins.db_addon Result of query=SELECT min(time) FROM log WHERE item_id = 19;: [(1712261852021,)]
    2024-04-07 22:24:02 DEBUG plugins.db_addon _get_oldest_log for item=paradigma.Aussentemperatur = 1712261852021
    2024-04-07 22:24:02 DEBUG plugins.db_addon Requested timeframe='day' with start=0 and end=0 resulted in start being timestamp=1712440800000/2024-04-07 00:00:00 and end being timestamp=1712527200000/2024-04-08 00:00:00
    2024-04-07 22:24:02 DEBUG plugins.db_addon Called with func='max', item_id=19, ts_start=1712440800000, ts_end=1712527200000, group='', group2='', ignore_value_list=None
    2024-04-07 22:24:02 DEBUG plugins.db_addon query='SELECT time, MAX(val_num) as value FROM log WHERE item_id = :item_id AND time BETWEEN :ts_start AND :ts_end AND val_bool = 1', params={'item_id': 19, 'ts_start': 1712440800000, 'ts_end': 1712527200000}
    2024-04-07 22:24:02 DEBUG plugins.db_addon Called with query='SELECT time, MAX(val_num) as value FROM log WHERE item_id = :item_id AND time BETWEEN :ts_start AND :ts_end AND val_bool = 1', params={'item_id': 19, 'ts_start': 1712440800000, 'ts_end': 1712527200000}, cur=None
    2024-04-07 22:24:02 DEBUG plugins.db_addon Result of query=SELECT time, MAX(val_num) as value FROM log WHERE item_id = 19 AND time BETWEEN 1712440800000 AND 1712527200000 AND val_bool = 1: [(1712493392368, 25.1)]
    2024-04-07 22:24:02 DEBUG plugins.db_addon result of '_query_log_timestamp' query_result=[(1712493392368, 25.1)]
    2024-04-07 22:24:02 DEBUG plugins.db_addon value for item=paradigma.Aussentemperatur with query_params={'func': 'max', 'item_id': 19, 'ts_start': 1712440800000, 'ts_end': 1712527200000, 'group': '', 'group2': '', 'ignore_value_list': None}: [[1712493392368, 25.1]]
    2024-04-07 22:24:02 DEBUG plugins.db_addon result is 25.1 for item 'temperatur.aussen.max1d' with 'db_addon_fct='minmax_tag_max''
    2024-04-07 22:24:02 INFO plugins.db_addon Item value for 'temperatur.aussen.max1d' will be set to 25.1​
    Warum steht denn da überall 'added to be run daily' wenn es on-change sein sollte?

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    Zitat von gklein Beitrag anzeigen
    ich hole mein Issue nochmal hoch, da es vermutlich zwischen dem Startproblem untergegangen ist. Vlt. hat ja jemand eine Idee.
    Kannst Du bitte noch folgende Infos liefern:
    • Plugin Version
    • Item Definition
    Danke dir

    Einen Kommentar schreiben:


  • gklein
    antwortet
    Hallo Michael,

    ich habe das Debugging mal probiert, bekomme aktuell aber nur die Statements für ein manuelles Triggern ausgegeben:
    2024-05-13 08:34:22 DEBUG plugins.db_addon queue_entry=Item: Haus.Zentral.Strom_Haushalt.Gesamtverbrauch_Total. verbrauch_jahr
    2024-05-13 08:34:22 INFO plugins.db_addon # 1 item(s) to do. || 'on-demand' item=Haus.Zentral.Strom_Haushalt.Gesamtverbrauch_T otal.verbrauch_jahr will be processed.
    2024-05-13 08:34:22 DEBUG plugins.db_addon Called with query='SELECT time, val_num as value FROM log WHERE item_id = :item_id AND time BETWEEN :ts_start AND :ts_end ORDER BY time DESC LIMIT 1', params={'item_id': 71, 'ts_start': 1704063600000, 'ts_end': 1735686000000}, cur=None
    2024-05-13 08:34:22 DEBUG plugins.db_addon Result of query=SELECT time, val_num as value FROM log WHERE item_id = 71 AND time BETWEEN 1704063600000 AND 1735686000000 ORDER BY time DESC LIMIT 1: ((1715582016380, 15826.4),)
    2024-05-13 08:34:22 DEBUG plugins.db_addon Called with query='SELECT time, val_num as value FROM log WHERE item_id = :item_id AND time < :ts_start ORDER BY time DESC LIMIT 1', params={'item_id': 71, 'ts_start': 1704063600000}, cur=None
    2024-05-13 08:34:22 DEBUG plugins.db_addon Result of query=SELECT time, val_num as value FROM log WHERE item_id = 71 AND time < 1704063600000 ORDER BY time DESC LIMIT 1: ((1704063576415, 11885.12),)
    2024-05-13 08:34:22 INFO plugins.db_addon Item value for 'Haus.Zentral.Strom_Haushalt.Gesamtverbrauch_Total .verbrauch_jahr' will be set to 3941.28​
    Die Statements aus den normalen Berechnungen werden mir aktuell nicht angezeigt, nur der Ergebniswert.
    Ich kann mich an einen Forums-Beitrag zum Logging des Addons erinnern, finde den aber nicht wieder. Vlt. kannst Du mir da mal auf die Sprünge helfen.

    Viele Grüße
    Gunnar

    Einen Kommentar schreiben:


  • Sisamiwe
    antwortet
    Zitat von gklein Beitrag anzeigen
    ich hole mein Issue nochmal hoch, da es vermutlich zwischen dem Startproblem untergegangen ist. Vlt. hat ja jemand eine Idee.
    Hallo Gunnar,

    ich schaue mir das mal an. Kann gut sein, dass es da noch einen Bug gibt.
    Kann aber etwas dauern.

    Was Du noch machen kannst: Schalte mal das Debug-Log ein. Dort wird jeder Berechnungsschritt mitgelogged. Vielleicht fällt dir schon dort was auf.

    Beste Grüße
    Michael

    Einen Kommentar schreiben:


  • gklein
    antwortet
    Hallo zusammen,

    ich hole mein Issue nochmal hoch, da es vermutlich zwischen dem Startproblem untergegangen ist. Vlt. hat ja jemand eine Idee.

    Danke
    Gunnar

    Zitat von gklein Beitrag anzeigen
    Hallo Onkelandy,

    ich habe ein seltsames Verhalten bei der Berechnung von Jahreswerten. Der Wert der im Standard berechnet wird, scheint der Rolling-Wert zu sein (genau habe ich es noch nicht nachollzogen). Wenn ich nun eine Neuberechnung im WebIF des Plugins triggere, ist der Wert korrekt, wird aber kurz danach durch den Background-Job wieder auf den falschen Wert geändert Der Fehler tritt seit dem Upgrde auf 1.10 auf. Vorher war alles korrekt

    Hier die Screenshots dazu:
    dataurl524149.png

    dataurl531467.png

    dataurl538289.png

    Any Ideas?

    Viele Grüße
    Gunnar

    Einen Kommentar schreiben:


  • Hochpass
    antwortet
    Moin, das von Hand installieren hat funktioniert Aber ja das ist mittlerweile OT und bei dem Thema bin ich glaube ich keine große Hilfe...

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Hm, vielleicht ist die Dauerschleife auch deshalb, weil eben ein bereits bestehendes Paket überschrieben werden muss, evtl. klappt es drum nicht ganz. Sollte zwar nicht sein, könnte aber eine Erklärung sein, warum es teils klappt, teils nicht (zumindest bei mir). Die Logzeile besagt, dass eigentlich genau die 2 Zeilen von shng automatisch ausgeführt werden. Aber manuell klappt es auf jeden Fall..

    .. nur - wir kommen hier grad massiv vom Thema ab. Die Requirements-Problematik sollten wir wenn denn in einen anderen Thread auslagern und uns hier auf dbaddon konzentrieren, falls es da noch Probleme gibt.

    Einen Kommentar schreiben:


  • gklein
    antwortet
    Guten Morgen,

    ich hänge mich mal rein, in der Hoffnung keine Quatsch zu erzählen.

    Muss das nicht noch behoben sein, damit er nicht immer wieder versucht das auf die passende Version zu bringen?
    test_requirements: 'lxml' v5.2.1 too new. Maximum v4.9.4 needed
    Also einmal von Hand ins venv gehen, abhängig von Deiner Umgebung - sudo smarthome; source bin/activate

    pip3 uninstall lxml
    pip3 install lxml==4..9.4

    und dann mal von Hand smarthome starten.

    Viele Grüße
    Gunnar

    Einen Kommentar schreiben:


  • Hochpass
    antwortet
    no, shng hängt in einer Endlosschleife fest

    Code:
    2024-05-01  17:04:37 NOTICE   lib.smarthome       --------------------   SmartHomeNG restarting, initiated by SmartHomeNG (Python package installation)   --------------------
    2024-05-01  17:04:38 NOTICE   lib.smarthome       --------------------   Init SmartHomeNG v1.10.0-master (4b25822a0)   --------------------
    2024-05-01  17:04:38 NOTICE   lib.smarthome       Running in Python interpreter 'v3.10.13 final' in virtual environment, from directory /usr/local/smarthome
    2024-05-01  17:04:38 NOTICE   lib.smarthome        - operating system 'Debian GNU/Linux 12 (bookworm)' (pid=3222)
    2024-05-01  17:04:38 NOTICE   lib.smarthome        - on 'Raspberry Pi (Rev. b03114)'
    2024-05-01  17:04:41 WARNING  lib.shpypi          test_requirements: 'lxml' v5.2.1 too new. Maximum v4.9.4 needed
    2024-05-01  17:04:41 NOTICE   lib.shpypi          Installing plugin requirements for the current user, please wait...
    2024-05-01  17:04:41 NOTICE   lib.shpypi          Using auto-determined PIP: '/usr/local/smarthome/venvs/py_310/bin/pip3'
    2024-05-01  17:04:42 NOTICE   lib.shpypi          Running in a virtualenv environment - installing plugin requirements only to current virtual environment, please wait...
    2024-05-01  17:04:46 NOTICE   lib.shpypi          plugin requirements installed
    2024-05-01  17:04:46 NOTICE   lib.smarthome       --------------------   SmartHomeNG restarting, initiated by SmartHomeNG (Python package installation)   --------------------
    2024-05-01  17:04:47 NOTICE   lib.smarthome       --------------------   Init SmartHomeNG v1.10.0-master (4b25822a0)   --------------------
    2024-05-01  17:04:47 NOTICE   lib.smarthome       Running in Python interpreter 'v3.10.13 final' in virtual environment, from directory /usr/local/smarthome
    2024-05-01  17:04:47 NOTICE   lib.smarthome        - operating system 'Debian GNU/Linux 12 (bookworm)' (pid=3286)
    2024-05-01  17:04:47 NOTICE   lib.smarthome        - on 'Raspberry Pi (Rev. b03114)'
    2024-05-01  17:04:50 WARNING  lib.shpypi          test_requirements: 'lxml' v5.2.1 too new. Maximum v4.9.4 needed
    2024-05-01  17:04:50 NOTICE   lib.shpypi          Installing plugin requirements for the current user, please wait...
    2024-05-01  17:04:50 NOTICE   lib.shpypi          Using auto-determined PIP: '/usr/local/smarthome/venvs/py_310/bin/pip3'
    2024-05-01  17:04:51 NOTICE   lib.shpypi          Running in a virtualenv environment - installing plugin requirements only to current virtual environment, please wait...
    2024-05-01  17:04:54 NOTICE   lib.shpypi          plugin requirements installed
    2024-05-01  17:04:54 NOTICE   lib.smarthome       --------------------   SmartHomeNG restarting, initiated by SmartHomeNG (Python package installation)   --------------------
    2024-05-01  17:04:56 NOTICE   lib.smarthome       --------------------   Init SmartHomeNG v1.10.0-master (4b25822a0)   --------------------
    2024-05-01  17:04:56 NOTICE   lib.smarthome       Running in Python interpreter 'v3.10.13 final' in virtual environment, from directory /usr/local/smarthome
    2024-05-01  17:04:56 NOTICE   lib.smarthome        - operating system 'Debian GNU/Linux 12 (bookworm)' (pid=3348)
    2024-05-01  17:04:56 NOTICE   lib.smarthome        - on 'Raspberry Pi (Rev. b03114)'
    2024-05-01  17:04:58 WARNING  lib.shpypi          test_requirements: 'lxml' v5.2.1 too new. Maximum v4.9.4 needed
    2024-05-01  17:04:58 NOTICE   lib.shpypi          Installing plugin requirements for the current user, please wait...
    2024-05-01  17:04:58 NOTICE   lib.shpypi          Using auto-determined PIP: '/usr/local/smarthome/venvs/py_310/bin/pip3'
    2024-05-01  17:05:00 NOTICE   lib.shpypi          Running in a virtualenv environment - installing plugin requirements only to current virtual environment, please wait...
    2024-05-01  17:05:03 NOTICE   lib.shpypi          plugin requirements installed
    2024-05-01  17:05:03 NOTICE   lib.smarthome       --------------------   SmartHomeNG restarting, initiated by SmartHomeNG (Python package installation)   --------------------
    2024-05-01  17:05:05 NOTICE   lib.smarthome       --------------------   Init SmartHomeNG v1.10.0-master (4b25822a0)   --------------------​

    Einen Kommentar schreiben:

Lädt...
X