Ankündigung

Einklappen
Keine Ankündigung bisher.

Neues Database Plugin

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

    Kannst in so einem Fall mal nachsehen, was für Zeitpunkte für das Item dann in der AdmiGUI in den Item Details angezeigt werden?
    Viele Grüße
    Martin

    There is no cloud. It's only someone else's computer.

    Kommentar


      Onkelandy : Das Abfragen der item Funktionen direkt per Logik liefert auch ein prev_change(), welches neuer ist als ein last_change() Wert.

      Allerdings wird das Item auch gerade nicht extern durch eine Messung upgedatet sondern bei Neustart durch das database plugin entsprechend falsch initialisiert.

      Meine Vermuting ist, dass das database plugin aktuell nur die falschen Werte nach einem Neustart wie gewünscht durch das (database: init) wieder initialisiert.

      Der Fall, bei dem erstmalig last_change() und prev_change fehlerhaft sind, kann durchaus an anderer Stelle wieder auftauchen. Ich weiß aktuell nur nicht, wie ich den ertmaligen Fehler reproduzieren oder nachstellen kann.

      Kommentar


        Msinn :

        Auszug aus der Admin Gui:

        Code:
         
        Letztes Update 26.04.2020 11:17:34 CEST
        Letze Änderung 25.04.2020 17:07:47 CEST
        Zeit seit dem letzten Update 5 Minuten, 33.14 Sekunden
        Zeit seit dem letzten Change 18 Stunden, 15 Minuten, 20.53 Sekunden
        Update durch EnOcean:FFCB0501
        Change durch Database
        vorheriger Wert 0
        vorheriges Update 25.04.2020 20:55:43 CEST
        vorherige Änderung 25.04.2020 20:55:43 CEST
        Zeit seit dem vorh. Update 10 Minuten, 6.04 Sekunden

        Kommentar


          Ist der Auszug für den Fall/Zeitpunkt für den das database Plugin eine negative Duration auswirft?
          Viele Grüße
          Martin

          There is no cloud. It's only someone else's computer.

          Kommentar


            Der Auszug oben ist von heute für den keine negative Duration sondern bei Duration ein None steht. Hier der Auszug aus dem DB plugin, der für heute nur einen Eintrag enthält:
            Code:
             
            26.04.2020 10:55:32 None 26.04.2020 10:55:34 0.0
            Gestern sieht man schön, wie die negativen Durations als folge eines None in Duration auftauchen:

            Code:
             
            1 25.04.2020 20:55:43 -13675886 26.04.2020 14:29:28 0.0
            1 25.04.2020 20:44:50 -13023070 26.04.2020 10:37:11 0.0
            1 25.04.2020 17:15:07 -440204 25.04.2020 20:49:00 0.0
            1 25.04.2020 17:07:47 None 26.04.2020 14:29:28 0.0
            1 25.04.2020 16:57:10 636990 25.04.2020 17:26:59 0.0
            1 25.04.2020 16:53:52 -142415 25.04.2020 17:06:47 0.0
            1 25.04.2020 16:52:46 -76244 25.04.2020 16:56:41 0.0
            1 25.04.2020 16:52:00 None 25.04.2020 16:52:01 0.0
            1 25.04.2020 16:51:29 977793 25.04.2020 17:07:47 0.0
            1 25.04.2020 16:50:42 None 25.04.2020 16:50:43 0.0
            1 25.04.2020 16:39:32 None 25.04.2020 16:39:34 0.0
            1 25.04.2020 16:36:41 888364 25.04.2020 16:51:29 0.0
            1 25.04.2020 16:34:03 158242 25.04.2020 16:46:35 0.0

            Kommentar


              also Ich weiß nicht mehr , was das Plugin noch von mir möchte. Habe mariea install und auch die py pakete mit allen rechten und im plugin.yaml habe ich diese einstellungen,

              database_mysql:
              plugin_name: database
              driver: pymysql
              connect:
              - host:127.0.0.1
              - user:smarthome1
              - passwd:smarthome1
              - db:smarthome1
              - port:3306
              instance: nas
              precision: 4

              aber immer wieder die fehlermeldung. Raspi, buster python3.7 smhg 1.7.1

              2020-05-18 18:37:52 INFO Main Loading plugin translations (id=plugin/database) from plugins/database/locale.yaml
              2020-05-18 18:37:52 INFO Main Loading plugin translations (id=plugin/database) from plugins/database/locale.yaml
              2020-05-18 18:37:52 INFO Main plugin 'database': value not found in plugin configuration file for parameter 'prefix' -> using default value '' instead
              2020-05-18 18:37:52 INFO Main plugin 'database': value not found in plugin configuration file for parameter 'prefix' -> using default value '' instead
              2020-05-18 18:37:52 INFO Main plugin 'database': value not found in plugin configuration file for parameter 'cycle' -> using default value '60' instead
              2020-05-18 18:37:52 INFO Main plugin 'database': value not found in plugin configuration file for parameter 'cycle' -> using default value '60' instead
              2020-05-18 18:37:52 INFO Main plugin 'database': value not found in plugin configuration file for parameter 'precision' -> using default value '2' instead
              2020-05-18 18:37:52 INFO Main plugin 'database': value not found in plugin configuration file for parameter 'precision' -> using default value '2' instead
              2020-05-18 18:37:52 ERROR Main Plugin 'database' from section 'database_sqlite' exception: 'collections.OrderedDict' object has no attribute 'partition'
              Traceback (most recent call last):
              File "/usr/local/smarthome/lib/plugin.py", line 144, in __init__
              plugin_thread = PluginWrapper(smarthome, plugin, classname, classpath, args, instance, self.meta)
              File "/usr/local/smarthome/lib/plugin.py", line 610, in __init__
              exec("self.plugin.__init__(smarthome{0}{1})".forma t("," if len(arglist) else "", argstring))
              File "<string>", line 1, in <module>
              File "/usr/local/smarthome/plugins/database/__init__.py", line 103, in __init__
              Utils.string_to_list(self.get_parameter_value('con nect')))
              File "/usr/local/smarthome/lib/db.py", line 170, in __init__
              key, sep, value = arg.partition(':')
              AttributeError: 'collections.OrderedDict' object has no attribute 'partition'
              2020-05-18 18:37:52 ERROR Main Plugin 'database' from section 'database_sqlite' exception: 'collections.OrderedDict' object has no attribute 'partition'
              Traceback (most recent call last):
              File "/usr/local/smarthome/lib/plugin.py", line 144, in __init__
              plugin_thread = PluginWrapper(smarthome, plugin, classname, classpath, args, instance, self.meta)
              File "/usr/local/smarthome/lib/plugin.py", line 610, in __init__
              exec("self.plugin.__init__(smarthome{0}{1})".forma t("," if len(arglist) else "", argstring))
              File "<string>", line 1, in <module>
              File "/usr/local/smarthome/plugins/database/__init__.py", line 103, in __init__
              Utils.string_to_list(self.get_parameter_value('con nect')))
              File "/usr/local/smarthome/lib/db.py", line 170, in __init__
              key, sep, value = arg.partition(':')
              AttributeError: 'collections.OrderedDict' object has no attribute 'partition'

              Kommentar


                Du hast nicht alles interessante gepostet. Die gepostete Konfiguration passt nicht zu der Fehlermeldung. Gepostet hast Du die Section database_mysql, der Fehler bezieht ich aber auf die Section database_sqlite.

                Siehe:
                Code:
                2020-05-18 18:37:52 ERROR Main Plugin 'database' from section 'database_sqlite' exception: 'collections.OrderedDict' object has no attribute 'partition'
                Poste bitte in Zukunft mit richtiger Formatierung. Siehe Thread Hilfe zu SmartHomeNG erhalten --> Python Code und Yaml Konfig richtig einfügen.
                Viele Grüße
                Martin

                There is no cloud. It's only someone else's computer.

                Kommentar


                  das ist nur die database_sqlite:
                  alles andere ist gleich:

                  # class__name: database
                  # class_path: plugins.database
                  # driver: pymysql
                  # connect:
                  # - host: 127.0.0.1
                  # - user: smarthome
                  # - passwd: smarthome1
                  # - database: smarthome1
                  # - port: 3306
                  # instance: nas
                  # precision: 2
                  # plugin_enabled: false

                  da ich mit dem Admin tool auch schon versucht hatte

                  Kommentar


                    Ich geb‘s auf...
                    Viele Grüße
                    Martin

                    There is no cloud. It's only someone else's computer.

                    Kommentar


                      pino :
                      Zitat von Msinn Beitrag anzeigen
                      Poste bitte in Zukunft mit richtiger Formatierung. Siehe Thread Hilfe zu SmartHomeNG erhalten --> Python Code und Yaml Konfig richtig einfügen.
                      Poste mal die plugin.yml für beide Bereiche.
                      ​​​​​​​Dein obiger Auszug hatte alles auskommentiert, dazu würden auch die Meldungen passen. Allerdings hast du uns die erste und entscheidende Zeile der Plugins Definition verschwiegen

                      Kommentar


                        Hier die ganze plugin
                        Angehängte Dateien

                        Kommentar


                          Hallo,

                          ich möchte meinen Produktivinstanz von shNG (auf einem RPI3) neu aufsetzten bzw. von einem RPI auf einen anderen übertragen.
                          Wie sieht aus eurer Sicht die einfachste Möglichkeit aus, die Maria-DB umzuziehen und wieder aktiv zu befüllen?

                          Danke für Eure Meinung.
                          Michael

                          Kommentar


                            Das hängt davon ab wo und wie Du die MariaDB installiert hast:
                            - Falls MariaDB auf einem anderen Rechner läuft, brauchst Du nichts zu tun
                            - Falls MariaDB auf dem PI läuft, installierst Du am besten die selbe Version der MariaDB auf dem neuen Rechner. Anschließend stoppst Du MariaDB und kopierst die entsprechenden Datendateien in die neue MarisDB Installation.
                            Viele Grüße
                            Martin

                            There is no cloud. It's only someone else's computer.

                            Kommentar


                              Zitat von Msinn Beitrag anzeigen
                              - Falls MariaDB auf dem PI läuft, installierst Du am besten die selbe Version der MariaDB auf dem neuen Rechner. Anschließend stoppst Du MariaDB und kopierst die entsprechenden Datendateien in die neue MarisDB Installation.
                              Sobald sich kleinere Versionänderungen in der Server-Version ergeben, wäre der sicherer Weg über einen MySQL-Dump zu gehen.
                              Dump:
                              https://mariadb.com/kb/en/making-bac...ith-mysqldump/

                              Restore:
                              https://mariadb.com/kb/en/restoring-...om-dump-files/

                              Kommentar

                              Lädt...
                              X