Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] Probleme mit sql logging (früher:Button Zustand bei Neustart einlesen)

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Probleme mit sql logging (früher:Button Zustand bei Neustart einlesen)

    This topic has been deleted. Only users with topic management privileges can see it.
    • Dutchman
      Dutchman Developer Most Active Administrators last edited by

      Das mit der history ist merkwürdig klinkt nach einen Bug.

      Ich verstehe aber nicht warum du das machen willst?

      iObroker behält bei einen Neustart seine object states also warum aus history lesen und setzen?

      –-----------------------

      Send from mobile device

      Das schöne ios hat Auto Korrektur zum k****

      Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

      1 Reply Last reply Reply Quote 0
      • G
        GerdSo last edited by

        Hallo Dutchman,

        hab es gerade ausprobiert und Du hast Recht funktioniert einwandfrei. Habe ich sicherlich vor längerer Zeit auch mal so probiert und da funktioniert es nicht, keine Ahnung weshalb.

        Bzgl. sql-Adapter: Soll/Kann ich da noch weiter evaluieren?

        Ich hab mal einen aktuellen Screenshot angehängt und darin sieht man, dass die Variable auf 0 steht aber der History-Adapter dies nicht mitbekommen hat

        Viele Grüße Gerd.
        1154_snip_20180110161803.png

        1 Reply Last reply Reply Quote 0
        • Dutchman
          Dutchman Developer Most Active Administrators last edited by

          Hmm ändere Mal bitten deinen topic Title in Probleme mit sql logging (ersten thread Editieren) da muss Wert anders ran 🙂

          Im Log kommt nichts ungewöhnliches wenn du die Variable änderst?

          Wie sehen deine SQL Einstellungen aus für diesen Datenpunkt ?

          –-----------------------

          Send from mobile device

          Das schöne ios hat Auto Korrektur zum k****

          Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

          1 Reply Last reply Reply Quote 0
          • G
            GerdSo last edited by

            Hallo Dutchman,

            die Konfig für den Datenpunkt siehst Du im ersten Beitrag, da habe ich die JSON davon. Im Log passiert nichts. Identisches Verhalten, habe ich auch bei 2 anderen Knöpfen, da sieht das genauso aus. Wenn ich die Knöpfe subscribe, dann wird sowohl bei 0 als auch bei 1 ausgelöst. Wenn ich dann jedesmal in eine weitere (neue) Variable schreibe und diese ebenfalls mitprotokolliere im History-Adapter, dann tritt da auch dieser Effekt auf, daher dürfte es nicht mit den Buttons zu tun haben.

            Viele Grüße Gerd.

            1 Reply Last reply Reply Quote 0
            • apollon77
              apollon77 last edited by

              naja, der "Debouce"- Wert ist leer, also wird das Default aus dem Adapter genommen. Was ist denn da eingestellt?

              Wie lange ist das auf dem anderen Zustand? Lang genug?

              Am Ende wäre eine Idee mal den sql-Adapter in "Debug" zu schalten und zu schauen was dann so über die Zeit im Log steht nachdem du mal hin- und her geschaltet hast

              1 Reply Last reply Reply Quote 0
              • G
                GerdSo last edited by

                @apollon77:

                naja, der "Debouce"- Wert ist leer, also wird das Default aus dem Adapter genommen. Was ist denn da eingestellt?

                Wie lange ist das auf dem anderen Zustand? Lang genug?

                Am Ende wäre eine Idee mal den sql-Adapter in "Debug" zu schalten und zu schauen was dann so über die Zeit im Log steht nachdem du mal hin- und her geschaltet hast `

                Danke für den Hinweis den SQL in Debug zu schalten, hätte ich auch mal drauf kommen können:

                2018-01-10 17:44:54.470  - [31merror[39m: Caught by controller[20]: 2018-01-10 17:44:35.656  - debug: sql.0 Min-Delta reached javascript.0.Badezimmer.E-Heizung-Zeitsteuerung, last-value=1, new-value=0, ts=1515602675657
                2018-01-10 17:44:54.470  - [31merror[39m: Caught by controller[25]: 2018-01-10 17:44:37.593  - debug: sql.0 Min-Delta reached javascript.0.Badezimmer.E-Heizung-Zeitsteuerung, last-value=0, new-value=1, ts=1515602677595
                
                

                Demnach hat er es erkannt und er sollte es speichern, lt. Tabelle des History-Adapters hat er es aber nicht gemacht.

                sql ist wie folgt eingestellt
                1154_snip_20180110175137.png

                1 Reply Last reply Reply Quote 0
                • apollon77
                  apollon77 last edited by

                  Also denounce time von 10000 sind 10s innerhalb dessen der Wert sich nicht ändern darf. Ansonsten wird nur der „stabile“ =letzte wert geloggt. Also die 1

                  Du schaltest also für die eingestellte debounce Zeit zu schnell. Setz mal den Wert runter.

                  Ansonsten steht da noch mehr im log? Das „caught by js-controller“ weist auf nen Fehler hin bei irgendwas …

                  1 Reply Last reply Reply Quote 0
                  • G
                    GerdSo last edited by

                    Hallo apollon77,

                    die Entprellzeit war es nicht, habe den Fehler jetzt aber gefunden. Die korrekte Lösung leider noch nicht!

                    Ich habe beim Anlegen mit createState einen Defaultwert true mitgegeben. Der Schalter vom Typ tplFancyToggleswitch schickt aber 0 oder 1, also einen Zahlenwert.

                    Es sieht also so aus, als ob der sql-Adapter jetzt nur Booleans loggen möchte und die 0 oder 1 Werte einfach ignoriert.

                    Wenn ich auf die Variable subscribe und einfach nochmal bei 1 den Wert auf true setze und bei 0 auf false, wird alles korrekt protokolliert. In ioBroker ist der Variablen Typ auf misc gesetzt. Kann man in der mySQL nachträglich den Typ ändern oder ist diese Variable für "immer" mit dem falschen Typ verbunden? Ein Neuanlegen hat nichts gebracht.

                    Viele Grüße Gerd.

                    1 Reply Last reply Reply Quote 0
                    • apollon77
                      apollon77 last edited by

                      Wenn Du nicht in der DB den typ ändern willst dann kannst Du versuchen bei dem Datenopunkt in den SQL-EInstellungen den "Speichern als" Typ (im Standard leer) auf Boolean zu setzen. Dann sollte 0/1 in false/true umgewandelt werden beim Speichern.

                      Versuch mal

                      1 Reply Last reply Reply Quote 0
                      • G
                        GerdSo last edited by

                        @apollon77:

                        Wenn Du nicht in der DB den typ ändern willst dann kannst Du versuchen bei dem Datenopunkt in den SQL-EInstellungen den "Speichern als" Typ (im Standard leer) auf Boolean zu setzen. Dann sollte 0/1 in false/true umgewandelt werden beim Speichern.

                        Versuch mal `
                        Hallo,

                        funktioniert leider nicht. Hab es auf "Logikwert" umgestellt und es wird nicht protokolliert. Zur Sicherheit habe ich noch javascript und sql neu gestartet, trotzdem kein Erfolg. Danach habe ich dann wieder meinen Workaround eingeschaltet und es hat geklappt.

                        Gibt es irgendwelche Möglichkeiten dieses "nicht protokollieren" per Script zu erkennen? Würde das dann bei mir einbauen, da ich immer mal wieder Variablen mit anderen Dingen/Typen fülle aufgrund von Änderungen im Script und da würde ich schon gerne sichergehen, dass der sql-Adapter dass auch ordentlich protokolliert. Die Überwachung müsste ja nur für eigene Variablen gemacht werden.

                        Viele Grüße Gerd.

                        1 Reply Last reply Reply Quote 0
                        • apollon77
                          apollon77 last edited by

                          naja ich denke nicht as er "Nicht "richtig arbeitet … er stellt ggf keine Änderung des wertes fest und loggt deswegen nichts .. also ist komplett korrekt.

                          Geht es wenn du "nur änderungen loggen" raus nimmst?

                          1 Reply Last reply Reply Quote 0
                          • G
                            GerdSo last edited by

                            @apollon77:

                            naja ich denke nicht as er "Nicht "richtig arbeitet … er stellt ggf keine Änderung des wertes fest und loggt deswegen nichts .. also ist komplett korrekt.

                            Geht es wenn du "nur änderungen loggen" raus nimmst? `
                            Leider nein, hatte ich auch schon probiert, dann funktioniert es auch nicht.

                            1 Reply Last reply Reply Quote 0
                            • apollon77
                              apollon77 last edited by

                              Ok, dann bleibt dir nur das fixen des Datentyps der ID direkt in der DB und potz. löschen falscher Daten und am besten immer an Datentypen halten :-))

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              740
                              Online

                              31.7k
                              Users

                              79.8k
                              Topics

                              1.3m
                              Posts

                              3
                              14
                              1114
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo