Posts by gwaag

    hyle

    sorry, die geschweiften Klammern habe ich nicht gesehen, aber jetzt wo Du es sagst, habe ich es probiert und es funktioniert auch, habe jetzt Deine Version gelassen.

    Gruss und Danke

    gwaag

    So gehts:


    Code
    logging.info("Heizung Aus KW: %s", s)


    Code
    Woche 19 Mi 10.05.2023 19:41 Einspeisung/Bezug: 87.5 W
    Woche 19 Mi 10.05.2023 19:41 Wohnzimmer/Schnitt: 22.8°
    Woche 19 Mi 10.05.2023 19:41 Aussentemperatur: 12.6°
    Woche 19 Mi 10.05.2023 19:41 Heizung Aus KW: 19

    Jetzt zeigt die log datei:

    Code
    Woche 19 Mi 10.05.2023 19:32 Einspeisung/Bezug: 773.1 W
    Woche 19 Mi 10.05.2023 19:32 Wohnzimmer/Schnitt: 22.8°
    Woche 19 Mi 10.05.2023 19:32 Aussentemperatur: 12.6°
    Woche 19 Mi 10.05.2023 19:32 Heizung Aus KW: (s)

    aber keine Fehlermeldung mehr?

    Hier wie gewünscht.

    Danke.




    Hallo,

    mein logeintrag gibt folgende Fehlermeldung aus:


    --- Logging error ---

    Traceback (most recent call last):

    File "/usr/lib/python3.7/logging/__init__.py", line 1034, in emit

    msg = self.format(record)

    File "/usr/lib/python3.7/logging/__init__.py", line 880, in format

    return fmt.format(record)

    File "/usr/lib/python3.7/logging/__init__.py", line 619, in format

    record.message = record.getMessage()

    File "/usr/lib/python3.7/logging/__init__.py", line 380, in getMessage

    msg = msg % self.args

    TypeError: not all arguments converted during string formatting

    Call stack:

    File "/home/pi/th/WP-Steuerung.py", line 163, in <module>

    logging.info("Heizung Aus KW: ", s) # Logeintrag

    Message: 'Heizung Aus KW: '

    Arguments: ('19',)

    ^X^CTraceback (most recent call last):

    File "/home/pi/th/WP-Steuerung.py", line 17, in <module>

    sleep(60)

    KeyboardInterrupt



    Der print eintrag funktioniert, Heizung Aus KW 19

    Code
     s = strftime("%W")  # Kalenderwoche
    
        if s >= str(18):
            print("Kalenderwoche: ", s)
            logging.info("Heizung Aus, KW: ", s)  # Logeintrag


    Andere logging.info im selben scrip funktionieren mit gleicher schreibweise.


    Gruss und Danke

    gwaag

    So, jetzt gehts.

    Habe die Schleife raus, und alles wieder richtig eingerückt, und starte jetzt das script mit crontab -e, jede Minute.(später wird das noch in Timer Unit geändert)

    Log zeigt jetzt Eintrag pro Ereignis nur noch 1x pro minute.

    Danke an alle.

    Gruss

    gwaag

    Macht immer noch zu viele Einträge.




    Ja das hatten wir schon mal. Habe aber vor langer Zeit die Logs separat, pro script gemacht.

    Hier die beiden System-Units ( Mit systemctl status, laufen beide.)


    Crontab-Einträge gibt es nicht.


    " Konfiguriere deine Logeinträge einmal vor der Schleife und nicht in jedem Durchgang."

    Das verstehe ich nicht, wie muss ich das machen?

    Danke

    gwaag

    Habe jetzt die script angepasst.

    Script WP-Steuerung is jetzt eigentlich ok, Script PV-Licht ist etwas besser geworden, logged aber immer noch das Gleiche 5-6x obwohl der Eintrag alle 60 sec nur 1x erfolgen sollte .

    Habe mal die Files angehaengt, ev habe ich ja noch was nicht richtig verstanden und es ist immer noch etwas falsch.

    Danke und Gruss

    gwaag

    Ja es sind einige if Bedingungen im code, aber es kann jeweils nur eine wahr sein.

    Wenn

    Code
      if winter and einspeisung >= -1200 and einspeisung < -0 and Ledw_ein:

    wahr ist, fuehrt es etwas aus, und es wird gelbw gelogged, aber warum in der selben 1 Sekunde bis zu 14x?

    Hallo,

    glaube vor einigen Monaten schon mal gefragt zu haben, weiss aber leider nicht mehr wo der Beitrag zu finden ist.

    Problem:

    Ich habe ein Python script, das lauft wunderbar, aber in die .log Datei schreibt es pro sec. bis zu 14x, obwohl das script eigentlich nur alle 60 sec. abgearbeitet wird.



    Ist da Grundsäzlich was falsch?

    Warum loged es pro durchgang nicht nur 1x?


    Das script wird mit systemd gestartet und läuft zuverlässig.


    Gruss und Danke


    gwaag

    Noch eine Frage.

    Wenn ich mehrere http Abfragen habe muss dann payload auf payload 1/2/3 geändert werden ?


    Danke, das wars , der No Break-Space.

    Jetzt funktioniert es:

    Code
    pi@solaranzeige:~/th $ /home/pi/th/WP-Steuerung_test.py
    http://192.168.0.200/command?SetHeatpump=1
    <Response [200]>
    set heatpump state to 2

    Danke fuer die Antwort.

    Leider kommt ein Fehler.

    Ist aber so geschrieben wie in der verlinkten readthedocs.

    Code
    pi@solaranzeige:~/th $ /home/pi/th/WP-Steuerung_test.py
      File "/home/pi/th/WP-Steuerung_test.py", line 100
        payload = {'SetHeatpump': '0'}
                 ^
    SyntaxError: invalid character in identifier

    Hallo,

    wenn ich im Browser http://192.168.0.200/command?SetHeatpump=1 eingebe, funktioniert es, schaltet ein /aus

    wenn ich im Python scrip das mache geht es nicht:





    Traceback (most recent call last):

    File "/home/pi/th/WP-Steuerung_test.py", line 102, in <module>

    r1 = conn.getresponse()

    File "/usr/lib/python3.7/http/client.py", line 1352, in getresponse

    response.begin()

    File "/usr/lib/python3.7/http/client.py", line 310, in begin

    version, status, reason = self._read_status()

    File "/usr/lib/python3.7/http/client.py", line 279, in _read_status

    raise RemoteDisconnected("Remote end closed connection without"

    http.client.RemoteDisconnected: Remote end closed connection without response


    Was mache ich falsch?