Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test ioBroker Fixer mit JSONL-Compression

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.5k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.7k

Test ioBroker Fixer mit JSONL-Compression

Geplant Angeheftet Gesperrt Verschoben Tester
84 Beiträge 15 Kommentatoren 7.8k Aufrufe 15 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M mrjeschke

    @latzi

    Das Script soll beim Start und vor summary auf einen Tastendruck warten.
    Das macht es aber leider nicht.

    Thomas BraunT Online
    Thomas BraunT Online
    Thomas Braun
    Most Active
    schrieb am zuletzt editiert von Thomas Braun
    #24

    @mrjeschke

    Richtig, sollte es.
    Tut es auf meiner lokalen Version auch. Muss ich mal buddeln was da jetzt auf dem Server gelandet ist.

    echad@chet:~/iob_diag $ diff iob_diag diag.sh
    8c8
    < SKRIPTV="0.0.8"; #version of this script
    ---
    > SKRIPTV="2022-12-09"; #version of this script
    

    Bis auf der angepasste Versionsnummer ist das gleich. Keine Ahnung warum das nicht wie vorgesehen funktioniert.

    Linux-Werkzeugkasten:
    https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
    NodeJS Fixer Skript:
    https://forum.iobroker.net/topic/68035/iob-node-fix-skript
    iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

    M 1 Antwort Letzte Antwort
    0
    • Thomas BraunT Thomas Braun

      @mrjeschke

      Richtig, sollte es.
      Tut es auf meiner lokalen Version auch. Muss ich mal buddeln was da jetzt auf dem Server gelandet ist.

      echad@chet:~/iob_diag $ diff iob_diag diag.sh
      8c8
      < SKRIPTV="0.0.8"; #version of this script
      ---
      > SKRIPTV="2022-12-09"; #version of this script
      

      Bis auf der angepasste Versionsnummer ist das gleich. Keine Ahnung warum das nicht wie vorgesehen funktioniert.

      M Online
      M Online
      mrjeschke
      schrieb am zuletzt editiert von
      #25

      @thomas-braun

      Seltsam, wenn ich das Script mit

      
      curl -sLf https://iobroker.net/diag.sh > diag.sh
      

      runterlade und lokal ausführe wartet es auf Tastendruck.
      Mit

      
      curl -sLf https://iobroker.net/diag.sh | bash -
      
      

      aber nicht.

      Thomas BraunT 1 Antwort Letzte Antwort
      1
      • M mrjeschke

        @thomas-braun

        Seltsam, wenn ich das Script mit

        
        curl -sLf https://iobroker.net/diag.sh > diag.sh
        

        runterlade und lokal ausführe wartet es auf Tastendruck.
        Mit

        
        curl -sLf https://iobroker.net/diag.sh | bash -
        
        

        aber nicht.

        Thomas BraunT Online
        Thomas BraunT Online
        Thomas Braun
        Most Active
        schrieb am zuletzt editiert von Thomas Braun
        #26

        @mrjeschke

        Kannst du mal versuchen ob es so richtig herunterkommt:

        curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh
        

        Mit Ausgabe in ein log file:

        curl -sLf -o .diag.sh https://iobroker.net/diag.sh && bash .diag.sh | tee iob_diag.log
        

        Linux-Werkzeugkasten:
        https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
        NodeJS Fixer Skript:
        https://forum.iobroker.net/topic/68035/iob-node-fix-skript
        iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

        M 1 Antwort Letzte Antwort
        0
        • Thomas BraunT Thomas Braun

          @mrjeschke

          Kannst du mal versuchen ob es so richtig herunterkommt:

          curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh
          

          Mit Ausgabe in ein log file:

          curl -sLf -o .diag.sh https://iobroker.net/diag.sh && bash .diag.sh | tee iob_diag.log
          
          M Online
          M Online
          mrjeschke
          schrieb am zuletzt editiert von
          #27

          @thomas-braun

          Ja, das läuft jetzt wie es soll.

          Thomas BraunT 2 Antworten Letzte Antwort
          0
          • M mrjeschke

            @thomas-braun

            Ja, das läuft jetzt wie es soll.

            Thomas BraunT Online
            Thomas BraunT Online
            Thomas Braun
            Most Active
            schrieb am zuletzt editiert von
            #28

            @mrjeschke

            Hmmm, danke. Dann muss ich mal schauen wie das richtig umgesetzt werden kann.

            Linux-Werkzeugkasten:
            https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
            NodeJS Fixer Skript:
            https://forum.iobroker.net/topic/68035/iob-node-fix-skript
            iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

            1 Antwort Letzte Antwort
            0
            • M mrjeschke

              @thomas-braun

              Ja, das läuft jetzt wie es soll.

              Thomas BraunT Online
              Thomas BraunT Online
              Thomas Braun
              Most Active
              schrieb am zuletzt editiert von
              #29

              @mrjeschke

              Jetzt läuft iob diag, auch mit Warterei auf Tastatureingaben.

              Linux-Werkzeugkasten:
              https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
              NodeJS Fixer Skript:
              https://forum.iobroker.net/topic/68035/iob-node-fix-skript
              iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

              O M 2 Antworten Letzte Antwort
              1
              • Thomas BraunT Thomas Braun

                @mrjeschke

                Jetzt läuft iob diag, auch mit Warterei auf Tastatureingaben.

                O Abwesend
                O Abwesend
                oFbEQnpoLKKl6mbY5e13
                schrieb am zuletzt editiert von
                #30

                @thomas-braun

                Kann/darf man den Befehl auch bei laufenden iobroker ausführen?

                Thomas BraunT 1 Antwort Letzte Antwort
                0
                • O oFbEQnpoLKKl6mbY5e13

                  @thomas-braun

                  Kann/darf man den Befehl auch bei laufenden iobroker ausführen?

                  Thomas BraunT Online
                  Thomas BraunT Online
                  Thomas Braun
                  Most Active
                  schrieb am zuletzt editiert von Thomas Braun
                  #31

                  @ofbeqnpolkkl6mby5e13

                  Ja, der liest nur Werte aus und schreibt nichts in die Konfig.
                  Wenn der iobroker läuft geht es etwas schneller, weil dann schon viel im RAM ist, was bei gestopptem iobroker erst noch geladen werden müsste.

                  Bei einem Bestandssystem muss nur einmal per

                  iobroker fix
                  

                  der aktuelle Stand geladen werden. Dafür muss der ioBroker natürlich wie üblich gestoppt sein.

                  Linux-Werkzeugkasten:
                  https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                  NodeJS Fixer Skript:
                  https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                  iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                  1 Antwort Letzte Antwort
                  2
                  • Thomas BraunT Thomas Braun

                    @mrjeschke

                    Jetzt läuft iob diag, auch mit Warterei auf Tastatureingaben.

                    M Online
                    M Online
                    mrjeschke
                    schrieb am zuletzt editiert von
                    #32

                    @thomas-braun
                    Wenn ich

                    iob diag
                    

                    eingebe, läuft das Script immer noch ohne Stop durch.

                    Thomas BraunT 1 Antwort Letzte Antwort
                    0
                    • M mrjeschke

                      @thomas-braun
                      Wenn ich

                      iob diag
                      

                      eingebe, läuft das Script immer noch ohne Stop durch.

                      Thomas BraunT Online
                      Thomas BraunT Online
                      Thomas Braun
                      Most Active
                      schrieb am zuletzt editiert von
                      #33

                      @mrjeschke
                      Vorher

                      iobroker fix
                      

                      damit der richtige Aufruf geladen wird.

                      Linux-Werkzeugkasten:
                      https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                      NodeJS Fixer Skript:
                      https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                      iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                      M 1 Antwort Letzte Antwort
                      0
                      • Thomas BraunT Thomas Braun

                        @mrjeschke
                        Vorher

                        iobroker fix
                        

                        damit der richtige Aufruf geladen wird.

                        M Online
                        M Online
                        mrjeschke
                        schrieb am zuletzt editiert von
                        #34

                        @thomas-braun
                        Alles klar, jetzt läuft es.

                        Thomas BraunT 1 Antwort Letzte Antwort
                        0
                        • M mrjeschke

                          @thomas-braun
                          Alles klar, jetzt läuft es.

                          Thomas BraunT Online
                          Thomas BraunT Online
                          Thomas Braun
                          Most Active
                          schrieb am zuletzt editiert von
                          #35

                          @mrjeschke
                          Und legt dir auch ein Log nach

                          /home/iobroker/iob_diag.log

                          Linux-Werkzeugkasten:
                          https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                          NodeJS Fixer Skript:
                          https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                          iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                          M 1 Antwort Letzte Antwort
                          0
                          • Thomas BraunT Thomas Braun

                            @mrjeschke
                            Und legt dir auch ein Log nach

                            /home/iobroker/iob_diag.log

                            M Online
                            M Online
                            mrjeschke
                            schrieb am zuletzt editiert von
                            #36

                            @thomas-braun
                            Ja, Log wird erstellt.

                            1 Antwort Letzte Antwort
                            0
                            • GaspodeG Online
                              GaspodeG Online
                              Gaspode
                              schrieb am zuletzt editiert von
                              #37

                              @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

                              Der Fixer ist jetzt auch unter Windows verfügbar! Wäre cool wenn ich da ggf auch Tester finden ...

                              Also, wie schon im anderen Thread geschrieben, bekomme auch ich unter Windows den schon bekannten Fehler:

                              F:\ioBrokerTest>npx @iobroker/fix
                              Need to install the following packages:
                                @iobroker/fix@4.2.1
                              Ok to proceed? (y) y
                              "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                              

                              Wenn ich jetzt das Package nicht per npx ausführe, sondern installiere

                              F:\ioBrokerTest>npm install @iobroker/fix
                              

                              Und dann das Script direkt starte:

                              F:\ioBrokerTest>node node_modules\@iobroker\fix\lib-npx\install.js fix
                              

                              Läuft der Fixer erstmal los(!?), meldet am Ende aber einen Fehler:

                              Windows installation starting... (fixing = true)
                              NPM version: 8.19.3
                              Write "iobroker start" to start the ioBroker
                              npm install node-windows@1.0.0-beta.8 --force --loglevel error --production --save --prefix "F:/ioBrokerTest"
                              
                              up to date, audited 524 packages in 9s
                              
                              36 packages are looking for funding
                                run `npm fund` for details
                              
                              20 vulnerabilities (2 low, 16 moderate, 2 high)
                              
                              To address issues that do not require attention, run:
                                npm audit fix
                              
                              To address all issues (including breaking changes), run:
                                npm audit fix --force
                              
                              Run `npm audit` for details.
                              
                              =============================
                              Running Admin shell
                              =============================
                              ioBroker wird beendet.
                              ioBroker wurde erfolgreich beendet.
                              
                              ioBroker service is already installed.
                              
                              =============================
                              Running Admin shell
                              =============================
                              ioBroker wird gestartet.
                              ioBroker wurde erfolgreich gestartet.
                              
                              ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
                              To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
                              NPM version: 8.19.3
                              No path given, using F:\ioBrokerTest\iobroker-data
                              Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
                              Cannot compress states.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\states.jsonl"!
                                  at JsonlDB.open (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
                                  at async compressDB (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
                                  at async main (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:78:17)
                              Compressing F:\ioBrokerTest\iobroker-data\objects.jsonl
                              Cannot compress objects.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\objects.jsonl"!
                                  at JsonlDB.open (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
                                  at async compressDB (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
                                  at async main (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:93:17)
                              No relevant JSONL files found to compress, skip
                              

                              Hilft das irgendwie weiter?

                              apollon77A 1 Antwort Letzte Antwort
                              0
                              • GaspodeG Gaspode

                                @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

                                Der Fixer ist jetzt auch unter Windows verfügbar! Wäre cool wenn ich da ggf auch Tester finden ...

                                Also, wie schon im anderen Thread geschrieben, bekomme auch ich unter Windows den schon bekannten Fehler:

                                F:\ioBrokerTest>npx @iobroker/fix
                                Need to install the following packages:
                                  @iobroker/fix@4.2.1
                                Ok to proceed? (y) y
                                "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                                

                                Wenn ich jetzt das Package nicht per npx ausführe, sondern installiere

                                F:\ioBrokerTest>npm install @iobroker/fix
                                

                                Und dann das Script direkt starte:

                                F:\ioBrokerTest>node node_modules\@iobroker\fix\lib-npx\install.js fix
                                

                                Läuft der Fixer erstmal los(!?), meldet am Ende aber einen Fehler:

                                Windows installation starting... (fixing = true)
                                NPM version: 8.19.3
                                Write "iobroker start" to start the ioBroker
                                npm install node-windows@1.0.0-beta.8 --force --loglevel error --production --save --prefix "F:/ioBrokerTest"
                                
                                up to date, audited 524 packages in 9s
                                
                                36 packages are looking for funding
                                  run `npm fund` for details
                                
                                20 vulnerabilities (2 low, 16 moderate, 2 high)
                                
                                To address issues that do not require attention, run:
                                  npm audit fix
                                
                                To address all issues (including breaking changes), run:
                                  npm audit fix --force
                                
                                Run `npm audit` for details.
                                
                                =============================
                                Running Admin shell
                                =============================
                                ioBroker wird beendet.
                                ioBroker wurde erfolgreich beendet.
                                
                                ioBroker service is already installed.
                                
                                =============================
                                Running Admin shell
                                =============================
                                ioBroker wird gestartet.
                                ioBroker wurde erfolgreich gestartet.
                                
                                ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
                                To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
                                NPM version: 8.19.3
                                No path given, using F:\ioBrokerTest\iobroker-data
                                Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
                                Cannot compress states.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\states.jsonl"!
                                    at JsonlDB.open (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
                                    at async compressDB (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
                                    at async main (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:78:17)
                                Compressing F:\ioBrokerTest\iobroker-data\objects.jsonl
                                Cannot compress objects.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\objects.jsonl"!
                                    at JsonlDB.open (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
                                    at async compressDB (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
                                    at async main (C:\Users\OnkelAdmin\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:93:17)
                                No relevant JSONL files found to compress, skip
                                

                                Hilft das irgendwie weiter?

                                apollon77A Offline
                                apollon77A Offline
                                apollon77
                                schrieb am zuletzt editiert von
                                #38

                                @gaspode iobroker gestoppt vorher? Cannot lock db heißt das die dB offen ist. Fixer darf nur laufen wenn gestoppt ist.

                                Jetzt kapiere ich aber nicht warum es so „zu Fuß“ geht aber nicht direkt per npx. Das sollte genaueste gleiche tun :-(

                                Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                GaspodeG 1 Antwort Letzte Antwort
                                0
                                • apollon77A apollon77

                                  @gaspode iobroker gestoppt vorher? Cannot lock db heißt das die dB offen ist. Fixer darf nur laufen wenn gestoppt ist.

                                  Jetzt kapiere ich aber nicht warum es so „zu Fuß“ geht aber nicht direkt per npx. Das sollte genaueste gleiche tun :-(

                                  GaspodeG Online
                                  GaspodeG Online
                                  Gaspode
                                  schrieb am zuletzt editiert von
                                  #39

                                  @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

                                  iobroker gestoppt vorher?

                                  Ja, ioBroker vorher mit iobroker stop gestoppt. Allerdings scheint er, wenn ich das Log richtig verstehe, unmittelbar vor der Komprimierung wieder gestartet zu werden (Zeile 29ff):

                                  ...
                                  =============================
                                  Running Admin shell
                                  =============================
                                  ioBroker wird gestartet.
                                  ioBroker wurde erfolgreich gestartet.
                                  ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
                                  To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
                                  NPM version: 8.19.3
                                  No path given, using F:\ioBrokerTest\iobroker-data
                                  Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
                                  ...
                                  

                                  @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

                                  Jetzt kapiere ich aber nicht warum es so „zu Fuß“ geht aber nicht direkt per npx. Das sollte genaueste gleiche tun

                                  Ich hatte das ja nur "zu Fuß" gemacht, weil ich hoffte, so die Stelle zu finden, wo etwas schief läuft. Hätte nicht erwartet, dass der Fixer dann startet.

                                  Der npx Aufruf mit --verbose liefert übrigens das hier:

                                  F:\ioBrokerTest>iobroker status
                                  iobroker is not running on this host.
                                  
                                  Objects type: jsonl
                                  States  type: jsonl
                                  
                                  F:\ioBrokerTest>npx --verbose @iobroker/fix
                                  npm verb cli C:\Program Files\nodejs\node.exe C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js
                                  npm info using npm@8.19.3
                                  npm info using node@v16.19.0
                                  npm timing npm:load:whichnode Completed in 0ms
                                  npm timing config:load:defaults Completed in 2ms
                                  npm timing config:load:file:C:\Program Files\nodejs\node_modules\npm\npmrc Completed in 10ms
                                  npm timing config:load:builtin Completed in 11ms
                                  npm timing config:load:cli Completed in 2ms
                                  npm timing config:load:env Completed in 1ms
                                  npm timing config:load:file:F:\ioBrokerTest\.npmrc Completed in 1ms
                                  npm timing config:load:project Completed in 3ms
                                  npm timing config:load:file:C:\Users\OnkelAdmin\.npmrc Completed in 1ms
                                  npm timing config:load:user Completed in 1ms
                                  npm timing config:load:file:C:\Users\OnkelAdmin\AppData\Roaming\npm\etc\npmrc Completed in 0ms
                                  npm timing config:load:global Completed in 0ms
                                  npm timing config:load:validate Completed in 1ms
                                  npm timing config:load:credentials Completed in 1ms
                                  npm timing config:load:setEnvs Completed in 1ms
                                  npm timing config:load Completed in 25ms
                                  npm timing npm:load:configload Completed in 26ms
                                  npm timing npm:load:mkdirpcache Completed in 1ms
                                  npm timing npm:load:mkdirplogs Completed in 1ms
                                  npm verb title npm exec @iobroker/fix
                                  npm verb argv "exec" "--loglevel" "verbose" "--" "@iobroker/fix"
                                  npm timing npm:load:setTitle Completed in 2ms
                                  npm timing config:load:flatten Completed in 5ms
                                  npm timing npm:load:display Completed in 20ms
                                  npm verb logfile logs-max:10 dir:C:\Users\OnkelAdmin\AppData\Local\npm-cache\_logs
                                  npm verb logfile C:\Users\OnkelAdmin\AppData\Local\npm-cache\_logs\2023-01-14T08_15_41_665Z-debug-0.log
                                  npm timing npm:load:logFile Completed in 12ms
                                  npm timing npm:load:timers Completed in 0ms
                                  npm timing npm:load:configScope Completed in 0ms
                                  npm timing npm:load Completed in 67ms
                                  npm timing arborist:ctor Completed in 1ms
                                  npm verb shrinkwrap failed to load node_modules/.package-lock.json out of date, updated: node_modules/iobroker.js-controller
                                  "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                                  npm timing command:exec Completed in 938ms
                                  npm verb exit 255
                                  npm timing npm Completed in 1307ms
                                  npm verb code 255
                                  

                                  Hilf das evtl. weiter?

                                  apollon77A 1 Antwort Letzte Antwort
                                  0
                                  • GaspodeG Gaspode

                                    @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

                                    iobroker gestoppt vorher?

                                    Ja, ioBroker vorher mit iobroker stop gestoppt. Allerdings scheint er, wenn ich das Log richtig verstehe, unmittelbar vor der Komprimierung wieder gestartet zu werden (Zeile 29ff):

                                    ...
                                    =============================
                                    Running Admin shell
                                    =============================
                                    ioBroker wird gestartet.
                                    ioBroker wurde erfolgreich gestartet.
                                    ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
                                    To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
                                    NPM version: 8.19.3
                                    No path given, using F:\ioBrokerTest\iobroker-data
                                    Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
                                    ...
                                    

                                    @apollon77 said in Test ioBroker Fixer mit JSONL-Compression:

                                    Jetzt kapiere ich aber nicht warum es so „zu Fuß“ geht aber nicht direkt per npx. Das sollte genaueste gleiche tun

                                    Ich hatte das ja nur "zu Fuß" gemacht, weil ich hoffte, so die Stelle zu finden, wo etwas schief läuft. Hätte nicht erwartet, dass der Fixer dann startet.

                                    Der npx Aufruf mit --verbose liefert übrigens das hier:

                                    F:\ioBrokerTest>iobroker status
                                    iobroker is not running on this host.
                                    
                                    Objects type: jsonl
                                    States  type: jsonl
                                    
                                    F:\ioBrokerTest>npx --verbose @iobroker/fix
                                    npm verb cli C:\Program Files\nodejs\node.exe C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js
                                    npm info using npm@8.19.3
                                    npm info using node@v16.19.0
                                    npm timing npm:load:whichnode Completed in 0ms
                                    npm timing config:load:defaults Completed in 2ms
                                    npm timing config:load:file:C:\Program Files\nodejs\node_modules\npm\npmrc Completed in 10ms
                                    npm timing config:load:builtin Completed in 11ms
                                    npm timing config:load:cli Completed in 2ms
                                    npm timing config:load:env Completed in 1ms
                                    npm timing config:load:file:F:\ioBrokerTest\.npmrc Completed in 1ms
                                    npm timing config:load:project Completed in 3ms
                                    npm timing config:load:file:C:\Users\OnkelAdmin\.npmrc Completed in 1ms
                                    npm timing config:load:user Completed in 1ms
                                    npm timing config:load:file:C:\Users\OnkelAdmin\AppData\Roaming\npm\etc\npmrc Completed in 0ms
                                    npm timing config:load:global Completed in 0ms
                                    npm timing config:load:validate Completed in 1ms
                                    npm timing config:load:credentials Completed in 1ms
                                    npm timing config:load:setEnvs Completed in 1ms
                                    npm timing config:load Completed in 25ms
                                    npm timing npm:load:configload Completed in 26ms
                                    npm timing npm:load:mkdirpcache Completed in 1ms
                                    npm timing npm:load:mkdirplogs Completed in 1ms
                                    npm verb title npm exec @iobroker/fix
                                    npm verb argv "exec" "--loglevel" "verbose" "--" "@iobroker/fix"
                                    npm timing npm:load:setTitle Completed in 2ms
                                    npm timing config:load:flatten Completed in 5ms
                                    npm timing npm:load:display Completed in 20ms
                                    npm verb logfile logs-max:10 dir:C:\Users\OnkelAdmin\AppData\Local\npm-cache\_logs
                                    npm verb logfile C:\Users\OnkelAdmin\AppData\Local\npm-cache\_logs\2023-01-14T08_15_41_665Z-debug-0.log
                                    npm timing npm:load:logFile Completed in 12ms
                                    npm timing npm:load:timers Completed in 0ms
                                    npm timing npm:load:configScope Completed in 0ms
                                    npm timing npm:load Completed in 67ms
                                    npm timing arborist:ctor Completed in 1ms
                                    npm verb shrinkwrap failed to load node_modules/.package-lock.json out of date, updated: node_modules/iobroker.js-controller
                                    "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                                    npm timing command:exec Completed in 938ms
                                    npm verb exit 255
                                    npm timing npm Completed in 1307ms
                                    npm verb code 255
                                    

                                    Hilf das evtl. weiter?

                                    apollon77A Offline
                                    apollon77A Offline
                                    apollon77
                                    schrieb am zuletzt editiert von
                                    #40

                                    @gaspode ok das mit dem Start ist gut zu wissen. Dann schiebe ich den fixer weiter nach vorn im Code. Das logfile gibt sonst leider nix her was helfen würde außer das dieser Fehler vom exec des fix kommt. Aber waasrruuuuuuuuuuuummm :-(

                                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                    GaspodeG 1 Antwort Letzte Antwort
                                    0
                                    • apollon77A apollon77

                                      @gaspode ok das mit dem Start ist gut zu wissen. Dann schiebe ich den fixer weiter nach vorn im Code. Das logfile gibt sonst leider nix her was helfen würde außer das dieser Fehler vom exec des fix kommt. Aber waasrruuuuuuuuuuuummm :-(

                                      GaspodeG Online
                                      GaspodeG Online
                                      Gaspode
                                      schrieb am zuletzt editiert von Gaspode
                                      #41

                                      @apollon77
                                      Falls du vorab was zum lokal testen hast, kann ich das gerne erledigen.

                                      Zeile 42 (kann das Zufall sein, 42? :D ) ist nicht verdächtig? Kommt jedes Mal.

                                      1 Antwort Letzte Antwort
                                      0
                                      • apollon77A apollon77

                                        Hey All,

                                        ich habe heute mal etwas anderes zum testen.

                                        Es gibt aktuell ein Problem das JSONL Files manchmal zu große werden. Ein die Tage kommender js-controller 4.0.24 wird die Ursache beheben, aber wir wissen nicht wie viele User betroffen sind.

                                        Das Problem tritt meistens bei der objects.jsonl Datei auf, wenn JSONL genutzt wird und sich selten Objekte ändern. Dann kann es durchaus zu 1 GB großen Dateien kommen.
                                        Um sicherzustellen das es beim Update des js-controller dann zu keinen Probleme kommt weil Files zu groß geworden sind haben wir entschieden den Fixer zu erweitern das dieser die Datenbank-Files komprimiert. Vielen Dank an @Thomas-Braun für die Unterstützung beim Bash-en :-)

                                        Das würde ich gern mit Euch kurz testen bevor wir es offiziell ausrollen, weil es dann aufgrund von npm Versionen ggf doch kleine Unterschiede geben kann.

                                        Was ist zu tun?

                                        Zuerst Bitte ioBroker auf dem Host stoppen iob stop.

                                        Wer es genau wissen will macht jetzt und später nach der Optimierung ein ls -la /opt/iobroker/iobroker-data/*.jsonl um zu sehen wie die Filegrößen waren und ob die Komprimierung funktioniert hat.

                                        Dann den Test-Fixer über folgendes Kommando ausführen.

                                        curl -sLf https://raw.githubusercontent.com/ioBroker/ioBroker/dbcompress/fix_installation.sh | bash -
                                        

                                        Wenn alles klappt gibt es einen neuen Schritt 3/4 namens "Database maintenance".

                                        Wenn JSONL als Datenbank genutzt wird dann sieht es ungefähr so aus wenn alles durch ist:

                                        Bildschirm­foto 2022-11-19 um 21.48.52.png

                                        Wenn keine JSONL genutzt wird zB so:

                                        Bildschirm­foto 2022-11-19 um 21.49.41.png

                                        Wenn npm 5 oder 6 noch auf dem System ist kann es sein das zusätzlich noch 1-2 Zeilen mehr ausgegeben werden. Aber generell muss es das gleiche sein.

                                        Welches Ergebnis ist interessant

                                        Primär ob es getan hat bzw ob der Fixer ohne komische Zusatz-Fehlermeldungen getan hat was er soll ... und idealerweise, wenn JSONL in Benutzung ist, ob die Kompression getan hat.

                                        Rückmeldungen gern (am besten mit npm -v Ausgabe - also NPM Version) hier im Thread.

                                        Danke für Eure Unterstützung!

                                        Ingo

                                        qqolliQ Offline
                                        qqolliQ Offline
                                        qqolli
                                        schrieb am zuletzt editiert von
                                        #42

                                        @apollon77
                                        Anbei meine Ergebnis (npm: 8.19.3), keine Probleme, Kompression erfolgreich:

                                        olli@ioBroker:~$ iob stop
                                        olli@ioBroker:~$ ls -la /opt/iobroker/iobroker-data/*.jsonl 
                                        -rw-rw-r--+ 1 iobroker iobroker 27528654 Jan 14 09:12 /opt/iobroker/iobroker-data/objects.jsonl
                                        -rw-rw-r--+ 1 iobroker iobroker 11819686 Jan 14 09:12 /opt/iobroker/iobroker-data/states.jsonl
                                        olli@ioBroker:~$ curl -sLf https://raw.githubusercontent.com/ioBroker/ioBroker/dbcompress/fix_installation.sh | bash -
                                        library: loaded
                                        Library version=2022-12-09
                                        
                                        ==========================================================================
                                        
                                            Welcome to the ioBroker installation fixer!
                                            Script version: 2022-11-19
                                            
                                            You might need to enter your password a couple of times.
                                        
                                        ==========================================================================
                                        
                                        
                                        ==========================================================================
                                            Installing prerequisites (1/4)
                                        ==========================================================================
                                        
                                        [sudo] password for olli: 
                                        Get:1 http://security.debian.org bullseye-security InRelease [48.4 kB]
                                        Hit:2 http://ftp.debian.org/debian bullseye InRelease                                                                    
                                        Get:3 http://ftp.debian.org/debian bullseye-updates InRelease [44.1 kB]                                                   
                                        Hit:4 https://deb.nodesource.com/node_16.x bullseye InRelease                                  
                                        Get:5 http://security.debian.org bullseye-security/main amd64 Packages [214 kB]
                                        Get:6 http://security.debian.org bullseye-security/main Translation-en [139 kB]
                                        Fetched 445 kB in 0s (1154 kB/s)                          
                                        Reading package lists... Done
                                        Installed gcc-c++
                                        
                                        ==========================================================================
                                            Checking ioBroker user and directory permissions (2/4)
                                        ==========================================================================
                                        
                                        Created /etc/sudoers.d/iobroker
                                        Fixing directory permissions...
                                        
                                        ==========================================================================
                                            Database maintenance (3/4)
                                        ==========================================================================
                                        
                                        Checking for uncompressed JSONL databases... This might take a while!
                                        
                                        Compressing /opt/iobroker/iobroker-data/states.jsonl
                                        Compressing /opt/iobroker/iobroker-data/objects.jsonl
                                        Compressed 2 JSONL files. Done
                                        
                                        ==========================================================================
                                            Checking autostart (4/4)
                                        ==========================================================================
                                        
                                        Enabling autostart...
                                        Autostart enabled!
                                        
                                        ==========================================================================
                                        
                                            Your installation was fixed successfully
                                            Run iobroker start to start ioBroker again!
                                        
                                        ==========================================================================
                                        
                                        olli@ioBroker:~$ ls -la /opt/iobroker/iobroker-data/*.jsonl
                                        -rw-rw-r--+ 1 iobroker iobroker 16939782 Jan 14 09:13 /opt/iobroker/iobroker-data/objects.jsonl
                                        -rw-rw-r--+ 1 iobroker iobroker  2833129 Jan 14 09:13 /opt/iobroker/iobroker-data/states.jsonl
                                        olli@ioBroker:~$
                                        
                                        1 Antwort Letzte Antwort
                                        0
                                        • GaspodeG Online
                                          GaspodeG Online
                                          Gaspode
                                          schrieb am zuletzt editiert von Gaspode
                                          #43

                                          @apollon77
                                          Nochmal zu Windows:
                                          Hab die Ursache gefunden, aber verstehen tu ich es nicht so richtig:
                                          Der Fehler

                                          "(" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
                                          

                                          kommt aus dem Batch File iobroker.bat, das im ioBroker Verzeichnis liegt (ruft man iobroker.bat ohne Parameter auf, kommt genau dieser Fehler).
                                          Aus irgendeinem Grund wird bei

                                          npx @iobroker/fix
                                          

                                          iobroker.bat ausgeführt. Warum hab ich noch nicht rausbekommen.

                                          Folgendes startet den Fixer auch unter Windows:

                                          F:\ioBrokerTest>del iobroker.bat
                                          
                                          F:\ioBrokerTest>npx @iobroker/fix
                                          
                                          Windows installation starting... (fixing = true)
                                          NPM version: 9.3.0
                                          Write "iobroker start" to start the ioBroker
                                          npm install node-windows@1.0.0-beta.8 --force --loglevel error --production --save --prefix "F:/ioBrokerTest"
                                          
                                          up to date, audited 524 packages in 6s
                                          
                                          36 packages are looking for funding
                                            run `npm fund` for details
                                          
                                          20 vulnerabilities (15 moderate, 5 high)
                                          
                                          To address issues that do not require attention, run:
                                            npm audit fix
                                          
                                          To address all issues (including breaking changes), run:
                                            npm audit fix --force
                                          
                                          Run `npm audit` for details.
                                          
                                          =============================
                                          Running Admin shell
                                          =============================
                                          ioBroker wird beendet.
                                          ioBroker wurde erfolgreich beendet.
                                          
                                          ioBroker service is already installed.
                                          
                                          =============================
                                          Running Admin shell
                                          =============================
                                          ioBroker wird gestartet.
                                          ioBroker wurde erfolgreich gestartet.
                                          
                                          ioBroker service installed and started. Go to http://localhost:8081 to open the admin UI.
                                          To see the outputs do not start the service, but write "node node_modules/iobroker.js-controller/controller"
                                          NPM version: 9.3.0
                                          No path given, using F:\ioBrokerTest\iobroker-data
                                          Compressing F:\ioBrokerTest\iobroker-data\states.jsonl
                                          Cannot compress states.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\states.jsonl"!
                                              at JsonlDB.open (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
                                              at async compressDB (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
                                              at async main (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:78:17)
                                          Compressing F:\ioBrokerTest\iobroker-data\objects.jsonl
                                          Cannot compress objects.jsonl: Error: Failed to lock DB file "F:\ioBrokerTest\iobroker-data\objects.jsonl"!
                                              at JsonlDB.open (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@alcalzone\jsonl-db\build\lib\db.js:185:19)
                                              at async compressDB (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:37:9)
                                              at async main (C:\Users\ONKELA~1\AppData\Local\npm-cache\_npx\36bee06d4228a674\node_modules\@iobroker\jsonltool\index.js:93:17)
                                          No relevant JSONL files found to compress, skip
                                          

                                          Mit dem von oben bekanntem Problem, dass ioBroker vor der Komprimierung gestartet wird. Aber das weißt du ja schon.
                                          Witzig: Der Fixer legt das gelöschte File iobroker.bat gleich wieder an, man macht sich durch das Löschen also nix kaputt. :D

                                          Edit: Für die Fehlermeldung in iobroker.bat und iob.bat hab ich PRs angelegt. Das hilft bei diesem Problem zwar nicht weiter, aber wenn man es schon mal weiß ...

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          456

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe