Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Javascript Adapter stellt für einen kurzen Moment den Dienst ein

    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

    Javascript Adapter stellt für einen kurzen Moment den Dienst ein

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

      Hallo, tu mir gerade schwer dieses spezielle Verhalten meines Javascript Adapters zu beschrieben.

      Wenn das Skript:

      Original:
      https://forum.iobroker.net/topic/13971/vorlage-log-datei-aufbereiten-für-vis-javascript
      https://github.com/Mic-M/iobroker.logfile-script

      Mit meinen Anpassungen:
      https://gist.github.com/darkiop/27488d572899adf08bd54b075ee662f3

      läuft, sieht man in der Instanz-Übersicht das der JS-Adapter kurz Austeigt, der connected und ab und zu auch der alive Status ist kurz rot. Die Ursache konnte ich definitiv auf dieses Skript eingrenzen. Im Log welches ich mit tail -f parallel laufen lassen sieht man oft zu diesem Zeitpunkt folgendes:

      2019-02-22 16:58:17.924 - warn: javascript.0 Reconnection to DB.
      2019-02-22 16:58:17.929 - warn: javascript.0 Reconnection to DB.

      Diese Einträge tauchen nicht mehr auf, sobald ich das Skript stoppe und die JS Instanz verhält sich dann auch normal. Das Instanz Log steht auf Debug - mehr Einträge gibt es wohl leider nicht.

      Seltsamersamerweise kann ich das Verhalten in meiner Testumgebung nicht nachstellen (komplettes Backup in einer VM eingespielt)

      Aktuell läuft das Skript in einer speraten JS Instanz - macht dort also nicht viel kaputt. Die Logs die das Skript extrahiert werden in die entsprechenden Objekte geschrieben, funktionieren tut es ... aber gut anfühlen tut sich das nicht 🙂

      System: iobroker im Docker-Container
      Node: 8.15.0
      NPM: 6.8.0
      js-controller: 1.4.2 (Bin zurück von 1.5.x - aber selbes Verhalten dort)
      js-engine: 4.0.12 (auch hier habe ich bereits ein paar Versionen durch, auch die 3.6.x)

      Hat jemand eine Idee wonach ich noch schauen könnte/sollte?

      Danke und einen schönen Abend,

      Thorsten

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

        Also nur so kurz reingeschaut kann das gut sein. Es wird das gesamte logfile eingelesen (was ja am Tag immer größer wird) dann wird es gesplittet und dann komplett abgearbeitet.

        Reconnect to dB bedeutet das dieser Prozess mehr als 20 Sekunden gebraucht hat und damit der ganze nodejs Prozess mit dem verarbeiten der Logs blockiert war. Ergo: für das Ping Pong spiel mit der States bzw objects Datenbank im Hintergrund war einfach keine Zeit.

        Bedeutet: Skript umschreiben das hier und da mal mit setImmediate oder so Schritte asynchron weggetrennt werden. Nur so hätten andere Aktionen eine Chance auch ihre Aufgaben zu machen.

        1 Reply Last reply Reply Quote 0
        • D
          darkiop Most Active last edited by

          Guten Morgen Ingo, vielen Dank!! Das deckt sich mit meiner Erkenntnis von heute Morgen - aktuell ist das Verhalten nicht im Log zu finden --> Morgen, kleines Logfile.

          Ich gebe die Info mal an den Entwickler des Skripts weiter, ggf. kann da ja optimiert werden.

          Grüße und ein schönes WE,

          Thorsten

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

          Support us

          ioBroker
          Community Adapters
          Donate

          686
          Online

          31.9k
          Users

          80.2k
          Topics

          1.3m
          Posts

          javascript
          2
          3
          415
          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