NEWS
Test: Tidy Adapter
-
Aktuelle Test Version 0.0.xx Veröffentlichungsdatum 14.04.2026 Github Link https://github.com/inventwo/ioBroker.tidy npm Link https://www.npmjs.com/package/iobroker.tidy Tidy ... helps to find unused objects and states to clean up your system
Ich hatte mir mit der Hilfe von Copilot ein Javascript gebastelt, um Datenleichen in meinem 8 Jahre alten ioBroker aufzuspüren.
Das hat so gut geklappt, machte die Konfiguration innerhalb des Script aber aufwendig. Deswegen habe ich mit entschieden, einen kleinen Adapter daraus zu machen.
Der Adapter scannt einen definierten Pfad
Beispiel:

.. und stellt das Ergebnis anhand folgender Einstellungen:

.. als folgende Datenpunkte bereit:

.. der Scan lässt sich automatisch in der Config definieren oder auch per Button (tidy.0.userdata.trigger) starten
.. unter anderem auch ein json mit diesem Inhalt:

.. in der VIS könnte es dann so aussehen (inventwo json Widget VIS2):

Man sieht hier sehr schön, dass ich Datenpunkte habe, die seit 2020 nicht mehr beschrieben wurden. Das deutet daraufhin, dass sie nicht mehr benötigt werden und gelöscht werden könnten.
Der Adapter kann keine Daten löschen! Das müsste ihr dann anhand des ausgegeben Pfad selbst erledigen. Auf eine Löschung habe ich bewusst verzichtet (wenn der ioBroker es überhaupt zulassen würde), damit nichts versehentlich mit einem Klick entfernt werden würde.
Viel Spaß beim Testen :)
-
Also der Adapter funktioniert :)
Frage:
Wie kann ich einfach alles scannen lassen? Hab da sicher noch Leichen von unbenutzten Adaptern oder so rumliegen. -
@Merlin123 ... alles auf einmal scannen ist in Planung. Zur Zeit muss man in der Config den Pfade eingeben.
@skvarel Kämpfe etwas mit der Interpretation....

Wenn ich das richtig verstehe, wurden die noch nie benutzt, oder?
Da würde ich gerne sehen, wann die angelegt wurden.
So hab ich nicht wirklich nen Anhaltspunkt, oder?Und ne Löschfunktion fehlt wirklich....
-
Ein Traum wäre es, wenn der Adapter auch noch Blocklys und JavaScripts auflisten würde in denen die mit „death“ markierten DPs vorkommen. Und dann noch die vis views in denen die verwendet werden. Ja, ich weiß- ich träume….
-
Ein Traum wäre es, wenn der Adapter auch noch Blocklys und JavaScripts auflisten würde in denen die mit „death“ markierten DPs vorkommen. Und dann noch die vis views in denen die verwendet werden. Ja, ich weiß- ich träume….
@Linedancer wären aber sinnvolle Erweiterungen... Mach auf Git nen Issue mit den Vorschlägen auf. Dann sind die dokumentiert.
-
@skvarel Kämpfe etwas mit der Interpretation....

Wenn ich das richtig verstehe, wurden die noch nie benutzt, oder?
Da würde ich gerne sehen, wann die angelegt wurden.
So hab ich nicht wirklich nen Anhaltspunkt, oder?Und ne Löschfunktion fehlt wirklich....
-
@Merlin123 ... ich weiß nicht, ob es irgendwie gespeichert, wann ein Datenpunkt angelegt wurde. Ich lese jetzt den Timestamp vom letzten Wert aus.
@skvarel Hier mal das, was iobroker zum ersten DP in meiner Liste sagt. Da ist ein TS drin.
{ "common": { "read": true, "write": false, "desc": "Created by Node-Red", "role": "state", "name": "signalStrength", "type": "object" }, "native": {}, "type": "state", "from": "system.adapter.node-red.0", "user": "system.user.admin", "ts": 1687193468226, "_id": "0_userdata.0.tibber.signalStrength", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } } -
@skvarel Hier mal das, was iobroker zum ersten DP in meiner Liste sagt. Da ist ein TS drin.
{ "common": { "read": true, "write": false, "desc": "Created by Node-Red", "role": "state", "name": "signalStrength", "type": "object" }, "native": {}, "type": "state", "from": "system.adapter.node-red.0", "user": "system.user.admin", "ts": 1687193468226, "_id": "0_userdata.0.tibber.signalStrength", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } } -
Ich fange gerade mit dem Aufräumen an.
Zwei Bildschirme. Auf einem die VIS mit der Tabelle und einem Trigger-Button und auf dem anderen Bildschirm die Objekte.
Die Tabelle aktualisiert sich sofort nach dem Klick auf den Button (tidy.0.userdata.trigger)

-
@Merlin123 .. ich habe mir gerade ein paar Datenpunkte angesehen. Es gibt bei mir immer nur einen TS und das wird der, von der letzten Aktualisierung des Wert sein und den lese ich bereits aus
@Merlin123 .. ich habe mir gerade ein paar Datenpunkte angesehen. Es gibt bei mir immer nur einen TS und das wird der, von der letzten Aktualisierung des Wert sein und den lese ich bereits aus
Hmmm. Wieso zeigt der dann bei mit in der Tabelle da nix an?
Ansonsten: Danke für die Erweiterung! Schau ich mir mal an
-
Ich fange gerade mit dem Aufräumen an.
Zwei Bildschirme. Auf einem die VIS mit der Tabelle und einem Trigger-Button und auf dem anderen Bildschirm die Objekte.
Die Tabelle aktualisiert sich sofort nach dem Klick auf den Button (tidy.0.userdata.trigger)

@skvarel zum Hausputz gehört bei mir auch immer nach nicht mehr verwendeten Historydaten zu suchen.
@mcu hat da mal ein Skript geschrieben
https://mcuiobroker.gitbook.io/iobroker-tipps/tipps/scripte-blockly-javascript/javascript/history-adapter/nicht-mehr-geloggte-dps-in-history-verzeichnissen-finden
Mit dem man Historydaten zu nicht mehr existenten Datenpunkten suchen und löschen kann.Vielleicht wäre das was für den Adapter
-
@skvarel zum Hausputz gehört bei mir auch immer nach nicht mehr verwendeten Historydaten zu suchen.
@mcu hat da mal ein Skript geschrieben
https://mcuiobroker.gitbook.io/iobroker-tipps/tipps/scripte-blockly-javascript/javascript/history-adapter/nicht-mehr-geloggte-dps-in-history-verzeichnissen-finden
Mit dem man Historydaten zu nicht mehr existenten Datenpunkten suchen und löschen kann.Vielleicht wäre das was für den Adapter
-
@Merlin123 .. ich habe mir gerade ein paar Datenpunkte angesehen. Es gibt bei mir immer nur einen TS und das wird der, von der letzten Aktualisierung des Wert sein und den lese ich bereits aus
Hmmm. Wieso zeigt der dann bei mit in der Tabelle da nix an?
Ansonsten: Danke für die Erweiterung! Schau ich mir mal an
-
@Merlin123 ... das mit dem kompletten Scan muss ich morgen noch mal anschauen. Ich denke, ich kann das noch optimieren. Das kann einem schon den ioBroker ausbremsen.
@skvarel system health hat auch immer alles gescannt, das hat keine Spürbaren Auswirkungen bei der Systemlast verursacht.
Aber ich muss sagen alles zu scannen bringt nichts, weil man die DP der Adapter nicht löschen kann. Da sind auch einfach viel Statische Daten gespeichert, wie Namen, IPs, Versionsnummern, etc. Die andern sich halt nie oder nur dann und wann mal. -
@skvarel system health hat auch immer alles gescannt, das hat keine Spürbaren Auswirkungen bei der Systemlast verursacht.
Aber ich muss sagen alles zu scannen bringt nichts, weil man die DP der Adapter nicht löschen kann. Da sind auch einfach viel Statische Daten gespeichert, wie Namen, IPs, Versionsnummern, etc. Die andern sich halt nie oder nur dann und wann mal.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden


