Ankündigung

Einklappen
Keine Ankündigung bisher.

Fehlersuche Admin-Interface

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Fehlersuche Admin-Interface

    Ich habe jetzt SmartHomeNG mal auf einen Raspberri Pi 5 mit SSD gebracht. SmartHomeNG läuft derzeit auch noch mit den Standardeinstellungen. Also ich habe noch nichts übernommen. Soweit auch keine relevanten Fehler im Log:

    Code:
    2024-11-20  09:08:12 NOTICE   lib.smarthome       --------------------   Init SmartHomeNG v1.10.0-master (4b25822a0)   --------------------
    2024-11-20  09:08:12 NOTICE   lib.smarthome       Running in Python interpreter 'v3.11.2 final' in virtual environment, from directory /usr/local/smarthome
    2024-11-20  09:08:12 NOTICE   lib.smarthome        - operating system 'Debian GNU/Linux 12 (bookworm)' (pid=2470)
    2024-11-20  09:08:12 NOTICE   lib.smarthome        - on 'Raspberry Pi (Rev. d04171)'
    2024-11-20  09:08:12 NOTICE   lib.smarthome        - Nutze Feiertage für Land 'DE', Provinz 'None', 1 benutzerdefinierte(r) Feiertag(e) definiert
    2024-11-20  09:08:13 NOTICE   lib.smarthome       --------------------   SmartHomeNG initialization finished   --------------------
    2024-11-20  09:08:13 WARNING  plugins.smartvisu   Not generating item-masterfile because smartVISU v3.4.0 in directory /var/www/html/smartvisu is not yet configured​
    Mir ist bewusst, dass Python 11 auch noch nicht offiziell unterstützt wird. Was allerdings nicht geht ist das Admin-Interface. Es zeigt nach der Anmeldung keine Inhalte. Also sowohl die Menüs enthalten keine Texte und lauten MENU.SYSTEM usw. als auch die Seiten sind inhaltlich leer. Ich finde jedoch nichts in den Logs. Wie kann ich denn herausfinden, was das Problem ist?

    #2
    Ich habe aktuell das gleiche Problem, aber eigentlich nichts Großes geändert. Bist du im master branch?

    wenn du modules.admin auf debug log stellst siehst du vielleicht was bezüglich jwt token

    Kommentar


      #3
      Zitat von Onkelandy Beitrag anzeigen
      Ich habe aktuell das gleiche Problem, aber eigentlich nichts Großes geändert. Bist du im master branch?

      wenn du modules.admin auf debug log stellst siehst du vielleicht was bezüglich jwt token



      Ja master. Ich habe das mal eingestellt und da kommen durchaus Fehler, mit denen ich aber nicht so richtig was anfangen kann. Hier mal der komplette log:

      Code:
      2024-11-20  10:20:32 NOTICE   lib.smarthome       --------------------   Init SmartHomeNG v1.10.0-master (4b25822a0)   --------------------
      2024-11-20  10:20:32 NOTICE   lib.smarthome       Running in Python interpreter 'v3.11.2 final' in virtual environment, from directory /usr/local/smarthome
      2024-11-20  10:20:32 NOTICE   lib.smarthome        - operating system 'Debian GNU/Linux 12 (bookworm)' (pid=707)
      2024-11-20  10:20:32 NOTICE   lib.smarthome        - on 'Raspberry Pi (Rev. d04171)'
      2024-11-20  10:20:32 NOTICE   lib.smarthome        - Nutze Feiertage für Land 'DE', Provinz 'None', 1 benutzerdefinierte(r) Feiertag(e) definiert
      2024-11-20  10:20:37 DEBUG    modules.admin       Module 'admin': Initializing
      2024-11-20  10:20:37 DEBUG    modules.admin       Module 'admin': Parameters = 'OrderedDict([('login_expiration', 48.0), ('login_autorenew', True), ('pypi_timeout', 5), ('itemtree_fullpath', True), ('itemtree_searchstart', 2.0), ('websocket_host', '0.0.0.0'), ('websocket_port', 2424), ('log_chunksize', 1000), ('developer_mode', False), ('rest_dispatch_force_exception', False), ('click_dropdown_header', False)])'
      2024-11-20  10:20:37 DBGHIGH  modules.admin       Methode 'start()' aufgerufen
      2024-11-20  10:20:37 INFO     modules.admin       Module 'admin': webif_dir = webif_dir = /usr/local/smarthome/modules/admin/webif
      2024-11-20  10:20:37 DEBUG    modules.admin.systemdata Systemdata.__init__()
      2024-11-20  10:20:38 INFO     modules.admin.logics __init__ self.logics = None
      2024-11-20  10:20:38 INFO     modules.admin.logics __init__ self.plugins = None
      2024-11-20  10:20:38 INFO     modules.admin.logics __init__ self.scheduler = <Scheduler(Scheduler, started 140736028144000)>
      2024-11-20  10:20:38 INFO     modules.admin.logs  logging_conf: self.root_logname = smarthome-warnings
      2024-11-20  10:20:38 INFO     modules.admin.plugin PluginController(): __init__
      2024-11-20  10:20:38 INFO     modules.admin       Adding stop method of class PluginsInfoController
      2024-11-20  10:20:38 NOTICE   lib.smarthome       --------------------   SmartHomeNG initialization finished   --------------------
      2024-11-20  10:20:38 WARNING  plugins.smartvisu   Not generating item-masterfile because smartVISU v3.4.0 in directory /var/www/html/smartvisu is not yet configured
      2024-11-20  10:20:40 INFO     modules.admin.plugins _test_for_blog_articles_task: Used time: 2.2757937908172607 - blog_urls = {'database': 'https://www.smarthomeng.de/tag/database', 'smartvisu': 'https://www.smarthomeng.de/tag/smartvisu'}
      2024-11-20  10:21:00 INFO     modules.admin.server RESTResource.index for class ServerController
      2024-11-20  10:21:00 INFO     modules.admin.server RESTResource.default: *vpath=(), **params={}
      2024-11-20  10:21:00 INFO     modules.admin.server REST_dispatch_execute(): public_root = 'True'
      2024-11-20  10:21:00 INFO     modules.admin.server ServerController.read('None')
      2024-11-20  10:21:00 INFO     modules.admin.server RESTResource.index for class ServerController
      2024-11-20  10:21:00 INFO     modules.admin.server RESTResource.default: *vpath=(), **params={}
      2024-11-20  10:21:00 INFO     modules.admin.server REST_dispatch_execute(): public_root = 'True'
      2024-11-20  10:21:00 INFO     modules.admin.server ServerController.read('None')
      2024-11-20  10:21:00 INFO     modules.admin.server RESTResource.default: *vpath=('info',), **params={}
      2024-11-20  10:21:00 INFO     modules.admin.server RESTResource.default: vpath = '['info']',  params = '{}'
      2024-11-20  10:21:00 INFO     modules.admin.server REST_dispatch_execute(): Authentication needed for GET (ServerController.read)
      2024-11-20  10:21:00 DEBUG    modules.admin.server REST_test_jwt_token(): Exception = JWT ID must be a string
      2024-11-20  10:21:00 DEBUG    modules.admin.server REST_test_jwt_token(): decoded jwt token = {}
      2024-11-20  10:21:00 INFO     modules.admin.server REST_dispatch_execute(): Authentication failed for {method} ({str(m).split()[2]})
      2024-11-20  10:21:00 INFO     modules.admin.server RESTResource.default: *vpath=('info',), **params={}
      2024-11-20  10:21:00 INFO     modules.admin.server RESTResource.default: vpath = '['info']',  params = '{}'
      2024-11-20  10:21:00 INFO     modules.admin.server REST_dispatch_execute(): Authentication needed for GET (ServerController.read)
      2024-11-20  10:21:00 DEBUG    modules.admin.server REST_test_jwt_token(): Exception = JWT ID must be a string
      2024-11-20  10:21:00 DEBUG    modules.admin.server REST_test_jwt_token(): decoded jwt token = {}
      2024-11-20  10:21:00 INFO     modules.admin.server REST_dispatch_execute(): Authentication failed for {method} ({str(m).split()[2]})​

      Kommentar


        #4
        Für mich sieht das so aus, als gäbe es ein Problem mit den JWT (Json Web Token).

        Welche Version des Packages PyJWT hast Du installiert? Am 17. November ist eine neue Version von PyJWT rausgekommen (v2.10.0). Die Version könnte evtl. einen breaking Change enthalten.

        Installiere mal eine ältere Version von PyJWT. Ich habe bei mir v2.8.0 am laufen.
        Viele Grüße
        Martin

        There is no cloud. It's only someone else's computer.

        Kommentar


          #5
          Zitat von Msinn Beitrag anzeigen
          Ich habe bei mir v2.8.0 am laufen.

          Ich habe das mit pip freeze geprüft. Bewusst installiert habe ich das nicht. Ich hatte Version 2.10.0. Mit Version 2.8.0 läufts.

          Problem gelöst!

          Kommentar


            #6
            Löst das Prob bei mir auch, thx!

            Kommentar


              #7
              Zitat von Onkelandy Beitrag anzeigen
              Löst das Prob bei mir auch, thx!




              Ist der Weihnachts-Raspi schon da? Deshalb neu aufgesetzt?

              Kommentar


                #8
                Ich habe im develop die Requirements angepasst, damit maximal die Version 2.8 von PyJWT installiert wird.
                Viele Grüße
                Martin

                There is no cloud. It's only someone else's computer.

                Kommentar


                  #9
                  Zitat von Cannon Beitrag anzeigen

                  Ist der Weihnachts-Raspi schon da? Deshalb neu aufgesetzt?
                  Nö, ich installiere immer wieder mal zwischendurch neue Python Modulversionen, auch zum Testen. War mir nur nicht klar, was das admin Interface alles nutzt.

                  Kommentar


                    #10
                    Ich würde das mal noch ergänzen. Auch mit websockets gibt es ein Problem. Mit 14.1 ging es nicht, weil da ein Fehler mit der Connection ist. Also auch da sollte die letzte Version 13.1 sein. Hier mit 14.1.:

                    Code:
                    > TypeError: Websocket.handle_new_connection() missing 1 required positional argument: 'path'
                    2024-11-21  15:55:21 ERROR    websockets.server   connection handler failed
                    > Traceback (most recent call last):
                    >   File "/usr/local/smarthome/venvs/py_shng/lib/python3.11/site-packages/websockets/asyncio/server.py", line 373, in conn_handler
                    >     await self.handler(connection)
                    >           ^^^^^^^^^^^^^^^^^^^^^^^^
                    > TypeError: Websocket.handle_new_connection() missing 1 required positional argument: 'path'​

                    Kommentar


                      #11
                      In den Requirements zum websockets Package steht im develop Branch bereits
                      Code:
                      websockets>=8.1,<13.0
                      Das hat bmx letzte Woche eingetragen.

                      Also sollte beim Start von shng ein Downgrade auf Version 12.x durchgeführt werden.
                      Viele Grüße
                      Martin

                      There is no cloud. It's only someone else's computer.

                      Kommentar


                        #12
                        Zitat von Msinn Beitrag anzeigen
                        In den Requirements zum websockets Package steht im develop Branch bereits
                        Sorry ... wusste ich nicht. Ich nutze ja die master-Version. Aber wie gesagt 13.1. geht ja auch.

                        Kommentar


                          #13
                          Habe heute nach einen clean Install auf einem Raspi ebenfalls eine leere GUI gehabt. Ein Downgrade von PyJWT auf 2.8.0 hat es auch bei mir behoben.
                          Die Requirements base.txt auf dem Github sollte Mal geupdated werden zu
                          pyjwt>=1.6.4,<=2.8.0
                          Das wird sonst alle ab jetzt erwischen.

                          Kommentar


                            #14
                            Zitat von undyingND Beitrag anzeigen
                            Die Requirements base.txt auf dem Github sollte Mal geupdated werden zu
                            pyjwt>=1.6.4,<=2.8.0
                            Das wird sonst alle ab jetzt erwischen.



                            Das ist wohl schon passiert. Aber das letzte Master-Release ist schon fast ein Jahr her. Deshalb wird das nur bei denen ein Problem sein, die sich die 1.10 installieren. Bei den Betas wird das dann sicher nicht mehr auftreten.

                            Zitat von Msinn Beitrag anzeigen
                            Also sollte beim Start von shng ein Downgrade auf Version 12.x durchgeführt werden.
                            Also wie schon geschrieben, sollte es so geändert werden, wenn man schon die 13 drauf hat. Ich habs mit 13.1 fehlerfrei am laufen. Also so dann:

                            Code:
                            websockets>=8.1,<14.0

                            Kommentar


                              #15
                              Zitat von Cannon Beitrag anzeigen
                              Also wie schon geschrieben, sollte es so geändert werden, wenn man schon die 13 drauf hat. Ich habs mit 13.1 fehlerfrei am laufen. Also so dann:

                              Code:
                              websockets>=8.1,<14.0
                              Dazu kann ich nichts sagen. Ich vermute, bmx hat sich was dabei gedacht die Requirements so zu setzen.
                              Viele Grüße
                              Martin

                              There is no cloud. It's only someone else's computer.

                              Kommentar

                              Lädt...
                              X