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.7k

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

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

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.
  • 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 Offline
              O Offline
              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
                                        • apollon77A Offline
                                          apollon77A Offline
                                          apollon77
                                          schrieb am zuletzt editiert von
                                          #44

                                          neues Paket released ... jetzt ist der fixer weiter am Anfang vor dem Service kram

                                          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
                                          mcm1957M 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

                                          745

                                          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