Ankündigung

Einklappen
Keine Ankündigung bisher.

Smarthome.py starten, aber im Vordergrund bleiben

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

    Smarthome.py starten, aber im Vordergrund bleiben

    Hallo,

    gibt es eine Möglichkeit, Sh.py zu starten, ohne dass es sich in den Hintergrund verabschiedet?
    Also quasi das Verhalten, welches mit dem Parameter -d vorhanden ist, nur halt nicht im Debug-Modus?

    Gruß,
    Hendrik

    #2
    Kann keiner helfen?

    Kommentar


      #3
      Vielleicht beschreibst Du kurz warum Du das brauchst?

      Kommentar


        #4
        Moin Bernd,

        es geht dabei um meine Docker Container für knxd, sh.py, owfs und smartvisu.
        Wenn der jeweilige Prozess nicht in den Hintergrund geht ("detached"), ist das für Docker ein Zeichen, dass der Prozess ordnungsgemäß läuft.
        Ich könnte zwar eine run.sh mit
        Code:
        /usr/local/smarthome/bin/smarthome.py
        while true;
         sleep 300
        Machen, aber dann würde der Container auch weiter laufen und nicht neu gestartet, wenn sh.py crasht.

        Aktuell funktioniert es, mit sh.py -d, aber so bin ich halt im debug-modus und es gibt zu viel Output.

        Gruß,
        Hendrik

        Kommentar


          #5
          Hallo Hendrik,

          als Quickhack würde ich mal die Zeile 225 der /usr/local/smarthome/bin/smarthome.py austauschen gegen:
          Code:
          logging.getLogger().disabled = True
          Damit solltest du im Modus -d/--debug das Logging ausgeschaltet haben.

          Beste Grüße,
          Malte

          Kommentar


            #6
            Hendrik wenn Du SmarthomeNG hast, kannst Du trotzdem im Debug Modus starten und dir via logging.yaml die Ausgabe sehr start reduzieren. Das würde Dein Problem erstmal lösen denke ich.

            Siehe auch hier: https://github.com/smarthomeNG/smarthome/wiki/Logging

            Kommentar


              #7

              Die gute alte stout stderr Umleitung ./bin/smartphone.py -d > /dev/null 2>&1 sollte es tun
              Zuletzt geändert von walldi; 13.09.2016, 09:40.

              Kommentar


                #8
                Danke euch für die Ideen!

                Kommentar


                  #9
                  Alternativ würde auch ein Script gehen, was Smarthome startet, und in einer Loop die PID von SH.py abfragt. Wenn diese nicht mehr das ist, beendet sich das Script und damit auch Docker, der sich dann wieder neu startet.

                  Ausserdem ermöglicht Docker, auch von außen die Prozesse des Containers auflisten zu lassen.
                  Gruss,

                  Stefan
                  Sonos

                  Kommentar

                  Lädt...
                  X