Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Wie kann man feststellen, von wo der Fehler kommt?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Wie kann man feststellen, von wo der Fehler kommt?

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky @bergjet last edited by

      @bergjet der fehler erinnert mich an ein script, indem die coronazahlen von österreich in eine tabelle geschrieben werden - könnte das sein

      bergjet 1 Reply Last reply Reply Quote 0
      • bergjet
        bergjet @Homoran last edited by

        @Homoran sagte in Wie kann man feststellen, von wo der Fehler kommt?:

        @bergjet sagte in Wie kann man feststellen, von wo der Fehler kommt?:

        error: javascript.0 (1321) Request error: Error: write EPROTO 3069269664:error:141A318A:SSL routines:tls_process_ske_dhe:dh key too small:../deps/openssl/openssl/ssl/statem/statem_clnt.c:2150:

        bitte vollständiges log (in code-tags!) posten!
        gerade da wo es spannend werden sollte ist abgeschnitten

        @bergjet sagte in Wie kann man feststellen, von wo der Fehler kommt?:

        Ist die Bezeichnung "javascript.0 (1321)" ein Anhaltspunkt,

        Ja 😉 das sit die Instanz (falls du mehrere hast) und der dazugehörige Prozess

        @bergjet sagte in Wie kann man feststellen, von wo der Fehler kommt?:

        tls_process_ske_dhe:dh key too small:../deps/openssl/openssl/ssl/statem/statem_clnt.c:2150:

        Das ist eher ein Hinweis

        2020-12-25 14:52:21.224 - info: homee.0 (803) initialize 1 homeegrams
        2020-12-25 14:52:25.204 - info: homee.0 (803) initialize 1 homeegrams
        2020-12-25 14:52:52.929 - info: javascript.0 (1321) script.js.common.Büro_Bewegung: Büro Bewegung DEBUG
        2020-12-25 14:57:00.002 - info: javascript.0 (1321) script.js.common.Garten_Sicherheit_Abschaltung: Strahler abschalten Sicherheit
        2020-12-25 15:00:00.067 - info: host.raspberrypi instance system.adapter.daswetter.0 started with pid 7532
        2020-12-25 15:00:00.163 - error: javascript.0 (1321) Error in request callback: SyntaxError: Unexpected token u in JSON at position 0
        2020-12-25 15:00:00.164 - error: javascript.0 (1321) Request error: Error: write EPROTO 3069269664:error:141A318A:SSL routines:tls_process_ske_dhe:dh key too small:../deps/openssl/openssl/ssl/statem/statem_clnt.c:2150:
        2020-12-25 15:00:00.361 - info: web.0 (3312) <==Disconnect system.user.admin from ::ffff:192.168.1.34 vis.0
        2020-12-25 15:00:00.456 - info: web.0 (3312) <==Disconnect system.user.admin from ::ffff:192.168.1.36 vis.0
        2020-12-25 15:00:02.445 - info: daswetter.0 (7532) starting. Version 3.0.4 in /opt/iobroker/node_modules/iobroker.daswetter, node: v12.20.0, js-controller: 3.1.6
        2020-12-25 15:00:02.655 - info: web.0 (3312) ==>Connected system.user.admin from ::ffff:192.168.1.34
        2020-12-25 15:00:02.684 - info: web.0 (3312) ==>Connected system.user.admin from ::ffff:192.168.1.36
        
        paul53 1 Reply Last reply Reply Quote 0
        • bergjet
          bergjet @liv-in-sky last edited by

          @liv-in-sky sagte in Wie kann man feststellen, von wo der Fehler kommt?:

          @bergjet der fehler erinnert mich an ein script, indem die coronazahlen von österreich in eine tabelle geschrieben werden - könnte das sein

          Das könnte sein. Kurz davor steht was von Corona Zahlen

          2020-12-25 14:52:25.204 - info: homee.0 (803) initialize 1 homeegrams
          2020-12-25 14:52:52.929 - info: javascript.0 (1321) script.js.common.Büro_Bewegung: Büro Bewegung DEBUG
          2020-12-25 14:57:00.002 - info: javascript.0 (1321) script.js.common.Garten_Sicherheit_Abschaltung: Strahler abschalten Sicherheit
          2020-12-25 15:00:00.067 - info: host.raspberrypi instance system.adapter.daswetter.0 started with pid 7532
          2020-12-25 15:00:00.163 - error: javascript.0 (1321) Error in request callback: SyntaxError: Unexpected token u in JSON at position 0
          2020-12-25 15:00:00.164 - error: javascript.0 (1321) Request error: Error: write EPROTO 3069269664:error:141A318A:SSL routines:tls_process_ske_dhe:dh key too small:../deps/openssl/openssl/ssl/statem/statem_clnt.c:2150:
          2020-12-25 15:00:00.361 - info: web.0 (3312) <==Disconnect system.user.admin from ::ffff:192.168.1.34 vis.0
          2020-12-25 15:00:00.456 - info: web.0 (3312) <==Disconnect system.user.admin from ::ffff:192.168.1.36 vis.0
          2020-12-25 15:00:02.445 - info: daswetter.0 (7532) starting. Version 3.0.4 in /opt/iobroker/node_modules/iobroker.daswetter, node: v12.20.0, js-controller: 3.1.6
          2020-12-25 15:00:02.655 - info: web.0 (3312) ==>Connected system.user.admin from ::ffff:192.168.1.34
          2020-12-25 15:00:02.684 - info: web.0 (3312) ==>Connected system.user.admin from ::ffff:192.168.1.36
          2020-12-25 15:00:04.096 - info: host.raspberrypi instance system.adapter.coronavirus-statistics.0 started with pid 7716
          2020-12-25 15:00:06.409 - info: coronavirus-statistics.0 (7716) starting. Version 0.6.3 in /opt/iobroker/node_modules/iobroker.coronavirus-statistics, node: v12.20.0, js-controller: 3.1.6
          2020-12-25 15:00:13.538 - info: daswetter.0 (7532) Terminated (NO_ERROR): Without reason
          2020-12-25 15:00:14.057 - info: host.raspberrypi instance system.adapter.daswetter.0 terminated with code 0 (NO_ERROR)
          2020-12-25 15:00:18.643 - info: coronavirus-statistics.0 (7716) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
          
          
          liv-in-sky 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @bergjet last edited by

            @bergjet sagte:

            Error in request callback: SyntaxError: Unexpected token u in JSON at position 0

            Das wird ein Script sein, in dem per request() ein JSON abgeholt werden soll.

            liv-in-sky 1 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @bergjet last edited by

              @bergjet suche mal nach corona in den scripten

              bergjet 1 Reply Last reply Reply Quote 0
              • liv-in-sky
                liv-in-sky @paul53 last edited by

                @paul53

                wenn es um das script geht stimmt das- man mußte unter linux etwas einstellen, weil die seite eine seltsame verschlüsselung hatte

                1 Reply Last reply Reply Quote 0
                • bergjet
                  bergjet @liv-in-sky last edited by

                  @liv-in-sky sagte in Wie kann man feststellen, von wo der Fehler kommt?:

                  suche mal nach corona in den scripten

                  Ja, das Script gibt es.

                  //6.10.2020 9:00
                  const url2 = 'https://corona-ampel.gv.at/sites/corona-ampel.gv.at/files/assets/Warnstufen_Corona_Ampel_aktuell.json';
                  const url = 'https://corona-ampel.gv.at/sites/corona-ampel.gv.at/files/assets/Warnstufen_Corona_Ampel_Gemeinden_aktuell.json';
                  var warnstufe=0;
                  var htmlwidget ='';
                  var arrStand="";
                  var sucheGKZ="32013"
                  var zusatzRegionen=["320","32013","32008"]
                   
                  var farbwertLevel1 = '#04B404'
                  var farbwertLevel2 = '#FFFF00'
                  var farbwertLevel3 = '#FF8000'
                  var farbwertLevel4 = '#DF0101'
                  var warngebiet = ''
                  var warnregion="";
                  var anzahl=0;
                  var gkz=""
                  var directory = 'Coronaampel' //javascript.0.xxx
                  var tableContent = ''
                  var dpSort;
                   
                  createState(directory  + '.warnstufe', {
                     name: 'Corona Warnstufe',
                     read: true, 
                     write: false, 
                     type: "number", 
                     def: 0
                  });
                  createState(directory  + '.anzahl', {
                     name: 'Corona Anzahl',
                     read: true, 
                     write: false, 
                     type: "number", 
                     def: 0
                  });
                  createState(directory  + '.Sortierung', {
                     name: 'Corona Sortierung',
                     read: true, 
                     write: true, 
                     type: "number", 
                     def: 1
                  });
                  createState(directory  + '.Refresh', {
                     name: 'Corona Refresh',
                     read: true, 
                     write: true, 
                     type: "boolean", 
                     def: false
                  });
                   
                  createState(directory  + '.warngebiet', {
                     name: 'Corona Warngebiet',
                     read: true, 
                     write: false, 
                     type: "string", 
                     def: ""
                  });
                   
                  createState(directory  + '.warnfarbe', {
                     name: 'Corona Warnfarbe',
                     read: true, 
                     write: false, 
                     type: "string", 
                     def: ""
                  });
                  createState(directory  + '.geholt', {
                     name: 'Corona Datum',
                     read: true, 
                     write: false, 
                     type: "string", 
                     def: ""
                  });
                   
                  createState(directory  + '.GKZ', {
                     name: 'Corona GKZ',
                     read: true, 
                     write: false, 
                     type: "string", 
                     def: ""
                  });
                   
                  createState(directory  + '.warnregion', {
                     name: 'Corona Region',
                     read: true, 
                     write: false, 
                     type: "string", 
                     def: ""
                  });
                   
                  createState(directory  + '.stand', {
                     name: 'Corona stand',
                     read: true, 
                     write: false, 
                     type: "string", 
                     def: ""
                  });
                   
                  createState(directory  + '.warntabelle', {
                     name: 'Corona Tabelle',
                     read: true, 
                     write: false, 
                     type: "string", 
                     def: ""
                  });
                   
                   
                  createState(directory  + '.jsonTable', {
                     name: 'Corona jsonTabelle',
                     read: true, 
                     write: false, 
                     type: "string", 
                     def: ""
                  });
                  var myObj=[];
                   
                  schedule(' 0 15 * * *', function() { 
                  main()
                  });
                   
                  setTimeout(function(){main()},10000);
                   
                   
                   
                  function main() {   dpSort=getState(directory+'.Sortierung').val
                     myObj=[];
                     warnstufe = 0;
                     tableContent = ''
                     request(url, function(err, response, json) {
                   
                         let arr = (JSON.parse(json)[0]).Warnstufen;
                          arrStand = (JSON.parse(json)[0]).Stand;
                       //  log(JSON.stringify(arr))
                       //  log(arr.flat(1))
                         //log(arrStand.toString())
                         //Loop und suche nach Bezirk
                   
                        request(url2, function(err, response, json) {
                   
                         let arr2 = (JSON.parse(json)[0]).Warnstufen;
                      // log(arr.length.toString())
                         arr= arr.concat(arr2)
                        //    log(arr.length.toString())
                      for(var z = 0; z < zusatzRegionen.length; z++) {    
                          for(let i = 0; i < arr.length; i++) { 
                            if(arr[i].GKZ == zusatzRegionen[z]){
                              myObj.push(arr[i])
                              break;
                              }
                         }
                      }
                      
                      for(let i = 0; i < arr.length; i++) { 
                            if(arr[i].GKZ == sucheGKZ){
                              //log(' Warnstufe für ' + suchwertBezirk + ': ' + arr[i].Warnstufe)
                              warnstufe = Number(arr[i].Warnstufe);
                              gkz=sucheGKZ
                              warnregion=arr[i].Region
                              warngebiet = arr[i].Name 
                             break;}}
                   
                         anzahl=arr.length
                   
                   
                   
                   
                   
                         for(let i = 0; i < arr.length; i++) { 
                             fillTable(arr[i].Region,arr[i].Name,arr[i].Warnstufe,arr[i].GKZ)
                         }
                         finishTable()
                   
                     
                   
                   
                   
                     saveData()
                   
                     });
                     });
                   
                  }
                   
                  function fillTable(gebiet,name,warnstufe,gkz){
                     if (tableContent == ''){
                       tableContent = '<table ><tbody>'  
                     }
                     tableContent += '<tr><td>' + gebiet + '</td>'
                     tableContent += '<td>' + gkz + '</td>'
                     tableContent += '<td>' + name + '</td>'
                     tableContent += '<td>' + warnstufe + '</td>'
                     tableContent += '</tr>';
                  }
                   
                  function finishTable(){
                   
                     tableContent += '</tbody></table>'
                     setState(directory+'.warntabelle',tableContent)
                  }
                   
                  function saveData(){
                       sotiereJson(dpSort)    
                             
                   
                     jsonWarn()
                      setState(directory+'.jsonTable',JSON.stringify(myObj))
                   
                     setState(directory+'.Refresh',false)
                     setState(directory+'.anzahl',anzahl)
                   //  setState(directory+'.searchbyGKZ',suchGKZactivieren)
                     setState(directory+'.warnstufe',warnstufe)
                     setState(directory+'.warngebiet',warngebiet)
                     setState(directory+'.GKZ',gkz)
                     setState(directory+'.warnregion',warnregion)
                     setState(directory+'.geholt',formatDate(getDateObject((new Date().getTime())), "hh:mm"))
                     setState(directory+'.stand',   formatDate(getDateObject(arrStand.toString()), "TT:MM:JJJJ -  SS:mm"));
                     switch (warnstufe) {
                                 case 1: 
                                                 setState(directory+'.warnfarbe',farbwertLevel1)
                                                 break;
                                 case 2: 
                                                  setState(directory+'.warnfarbe',farbwertLevel2)
                                                 break;
                                 case 3: 
                                                 setState(directory+'.warnfarbe',farbwertLevel3)
                                                 break;
                                 case 4   : 
                                                 setState(directory+'.warnfarbe',farbwertLevel4)
                                                 break;
                                 default: setState(directory+'.warnfarbe',"");
                                 ;
                             }
                  }
                   
                  function jsonWarn(){
                   
                      for(let i = 0; i < myObj.length; i++) { 
                        var istWarnstufe=Number(myObj[i].Warnstufe)
                         switch (istWarnstufe) {
                                 case 1: 
                                                 myObj[i].Warnstufe="<img src="+"/vis.0/Bilder/Icon/grün.png"+" height=\"30\" width=\"30\">"//"🟢"
                                                 break;
                                 case 2: 
                                                 myObj[i].Warnstufe="<img src="+"/vis.0/Bilder/Icon/gelb.png"+" height=\"30\" width=\"30\">"//"🟡"
                                                 break;
                                 case 3: 
                                                 myObj[i].Warnstufe="<img src="+"/vis.0/Bilder/Icon/orange.png"+" height=\"30\" width=\"30\">"//"🟠"
                                                 break;
                                 case 4   : 
                                                 myObj[i].Warnstufe="<img src="+"/vis.0/Bilder/Icon/rot.png"+" height=\"30\" width=\"30\">"//"🔴"
                                                 break;
                                 default: myObj[i].Warnstufe="?";
                                 ;
                             }
                           }
                           }
                           
                   
                  function sotiereJson(mySort) {
                     // log(mySort.toString())
                  switch (mySort) {
                                 case 1: 
                                                  myObj.sort(function (alpha, beta) {
                                                       if (alpha.Region > beta.Region )
                              
                                                       return 1;
                                                       if (beta.Region > alpha.Region)
                                                       return -1;
                                                       return 0;
                                                    }); 
                                                 break;
                                 case 2: 
                                                 myObj.sort(function (alpha, beta) {
                                                      if (Number(alpha.GKZ) > Number(beta.GKZ) )
                                                      return 1;
                                                     if (Number(beta.GKZ) > Number(alpha.GKZ)  )
                                                     return -1;
                                                     return 0;
                                                         }); 
                                                 break;
                                 case 3: 
                                               myObj.sort(function (alpha, beta) {
                                                      if (alpha.Name > beta.Name )
                              
                                                      return 1;
                                                     if (beta.Name > alpha.Name)
                                                     return -1;
                                                     return 0;
                             });
                                                 break;
                                 case 4   : 
                                                 myObj.sort(function(a, b){
                                                 return b.Warnstufe - a.Warnstufe;
                                                 });
                                                 break;
                                 default:        myObj.sort(function(a, b){
                                                 return b.Warnstufe - a.Warnstufe;
                                                 });
                                 ;
                             }
                   
                   
                   
                  }
                   
                  on({id: 'javascript.'+instance+'.'+directory  + '.Sortierung', change: "any"}, function (obj) { 
                     
                      main()
                   
                  });
                   on({id: 'javascript.'+instance+'.'+directory  + '.Refresh', val: true}, function (obj) { 
                     
                      main()
                      
                   
                  });
                   
                   
                   
                  
                  
                  liv-in-sky 1 Reply Last reply Reply Quote 0
                  • liv-in-sky
                    liv-in-sky @bergjet last edited by

                    @bergjet mit den refresh datenpunkt kannst du es starten und testen - da sollte dann der fehler kommen

                    bergjet 1 Reply Last reply Reply Quote 0
                    • bergjet
                      bergjet @liv-in-sky last edited by

                      @liv-in-sky sagte in Wie kann man feststellen, von wo der Fehler kommt?:

                      da sollte dann der fehler kommen

                      Im Script ist der cron Job auf 15 Uhr eingestellt. Das stimmt mit der Fehlermeldung überein. Also es ist das Script.

                      liv-in-sky 1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @bergjet last edited by

                        @bergjet siehe mal hier - du mußt diese einstellung machen

                        bergjet 2 Replies Last reply Reply Quote 0
                        • bergjet
                          bergjet @liv-in-sky last edited by

                          @liv-in-sky sagte in Wie kann man feststellen, von wo der Fehler kommt?:

                          siehe mal hier

                          Der Link fehlt. 🙂

                          liv-in-sky 1 Reply Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @bergjet last edited by

                            @bergjet starke leistung 🙂

                            https://forum.iobroker.net/post/486217

                            1 Reply Last reply Reply Quote 0
                            • bergjet
                              bergjet @liv-in-sky last edited by

                              @liv-in-sky sagte in Wie kann man feststellen, von wo der Fehler kommt?:

                              siehe mal hier - du mußt diese einstellung machen

                              Danke, hat funktioniert. Zu meiner Schande, ich habe das schon einmal gemacht nach diesem Vorschlag. Aber ich habe den pi4 neu installiert und das natürlich schon wieder vergessen gehabt.

                              liv-in-sky 1 Reply Last reply Reply Quote 0
                              • liv-in-sky
                                liv-in-sky @bergjet last edited by

                                @bergjet kein thema - dachte mir schon, dass du neu installiert hast

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                917
                                Online

                                31.9k
                                Users

                                80.2k
                                Topics

                                1.3m
                                Posts

                                javascript
                                4
                                16
                                476
                                Loading More Posts
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes
                                Reply
                                • Reply as topic
                                Log in to reply
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                The ioBroker Community 2014-2023
                                logo