Shelly debug messages zu Script zuordnen?

Die Verwendung von Skripten liegt im eigenen Ermessen des Benutzers. Unterstützung für Skripte wird vom Autor des Skripts bereitgestellt.
  • Hallo,

    hier:https://shelly-api-docs.shelly.cloud/gen2/General/DebugLogs/ ist beschrieben was ein Shelly so bisweilen (z.b. über UDP) logged.

    Frage1: Kann man dem irgendwie entnehmen welches Script im Fall eines Fehlers diesen verursacht hat?
    Frage2: Was bedeuten diese Einträge... z.B.: 66 366.319 2 2|? Die werden in unter 'Diagnostics' nicht angezeigt. Aber hat das irgendeine Bedeutung?

    Grund der Frage: Ich würde gerne jede log message (insbesondere Fehler) einem Script zuordnen. Eine Anfrage beim Shelly Support dazu blieb unbeantwortet :cursing:

    Vielen Dank vorab an die Experten.

  • Ich habe mir hierzu ein UDP Consolen Programm erstellt um alle Log's von meinen Shelly's einsehen zu können.
    Welches Script einen Fehler erzeugt müsstest du in jedem Script mit try/catch selbst implementieren.
    Ich bin derzeit zufrieden, wenn ich im Log die entsprechende IP sehe.

    Shelly UDP Console.mp4

  • Ja, eine solche Console habe ich auch. Und ich werde mal mit folgender Idee starten: Wenn man sich den output im Fehlerfall anschaut

    78654 2095288.286 101 2|Uncaught TypeError: Assignment to a constant
    78655 2095288.286 101 2|at counter += 1;
    78656 2095288.288 101 2|^
    78657 2095288.290 101 2|in function called from system
    78658 2095288.291 1 4|' 
    78659 2095288.292 1 1|shelly_user_script.:236 type_error: Error in EjsCall
    78644 2095268.106 1 2|shelly_notification:162 Status change of script:1: {"id":1,"running":false}

    dann ist die letzte Zeile anscheinend die einzige, über die man auf das fehlerhafte Script schließen kann.

    Wenn die also kommt, Script ID merken und alle Zeilen darüber, die '2|' enthalten, als Fehler Beschreibung betrachten. Wobei ich immer noch gerne wüsste, was die Zahlen bis zum '|' bedeuten.|

  • Dieses Thema enthält 4 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind.