Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.python > #5195

Re: [Python-de] Micropython - Exception nachträglich ermitteln

Path csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail
From Stefan Schwarzer <sschwarzer@sschwarzer.net>
Newsgroups de.comp.lang.python
Subject Re: [Python-de] Micropython - Exception nachträglich ermitteln
Date Mon, 2 Jul 2018 15:10:42 +0200
Lines 49
Message-ID <mailman.68.1530537050.2754.python-de@python.org> (permalink)
References <fpufbqF2sqvU1@mid.individual.net> <9a003315-4f84-cadd-bc0e-2a6d025ab072@sschwarzer.net>
Mime-Version 1.0
Content-Type text/plain; charset=utf-8
Content-Transfer-Encoding 8bit
X-Trace news.uni-berlin.de zWXeGpy3rU0gEFBK4mB4ig/Wc32SXYi6TreUpq576ksw==
Return-Path <sschwarzer@sschwarzer.net>
X-Original-To python-de@python.org
Delivered-To python-de@mail.python.org
Openpgp preference=signencrypt
Autocrypt addr=sschwarzer@sschwarzer.net; prefer-encrypt=mutual; keydata= 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 WdtUokwYRxk=
User-Agent Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.24) Gecko/20100411 Thunderbird/2.0.0.24 Mnenhy/0.7.6.666
In-Reply-To <fpufbqF2sqvU1@mid.individual.net>
Content-Language en-MW
X-Provags-ID V03:K1:1cwQFYW3Rk4hTz1/T6nMXo3VibSGuzVkc4ePWu58akLBfGrqmcd G37Z2306gAp0ql2R/FWhFjcBogMF7J3ODA76pZ2o8A4mkxw00Sz9FZ2ZIj0YJHLzo3c9tDm WPRq9juCNZ3jqgdW0sdqiRm8tOXj1eQsMzqAgY1yxAWkLBY7m+KYckeGMwtgRslJTg7sB6f QiUINPi4zWihrlijDCumQ==
X-UI-Out-Filterresults notjunk:1;V01:K0:bc2tPhM+How=:NmAbtIph+dfKwr0a9kh1UY 8lZj94HhF1rsP1W47dKO10hwbvFrfWeqEkHtXv9ZolZKK5Zi/meTcE0uBVTfMuiFNipPat3am rY1HgiI0cDtl5MObxZDeZS1zaPf37PNdp+qfGwW//U102pzHSYk3JySOcVQDatfunwg0NuaII ZmKTRHr8ZUWJnTVyTZtRB7oKcoUS7PmksAHtGh8HbUCyL7PJds47otTv1GCbJJsfDnGwNGpzH jPngXR1vFL2OmK8nHL5D33Cj6s2ti34SaZ0bEzcWz6G7gqYgZT0GtQDFdnX2mZ6MeQpHmWoTE 6vvhh7wTDx/nPLZj1Ep4nIWxlAlAamXnelYb2HNIqAJWVv8eSroCLIll+sYGU9I6/9+H6ozQY I1nKgKiikwZvewbBRiyLH4oC5SGJ/vMNrd2WACmnrRophqjKySl8hYqmJb2nM41lEdxtDbKVq y6V4djUYZ8DSRSrlE7rA3wPLRAssgkrpqM+BGV8PoOfzhjfDUakCWcSLEJHfpunyk5OyCPVNK m5c2EaVUNgFq8sInta9C1EZEzYpwNzDgb3NPXvMuAVWYhuiC1tKjPVcltzQLp/Yw4moEObl0U cniwVEvZMBMk0L2d0Jn8uh0nnrMD5hS0W5lNFngvS9wSLKaksJOWPvw74Mfh7S2+PG725rawC fVQ/IoOh1O0IYMAKSOZgUO+BD2ABp+knBkMBjVCv/ak08rZns42zp9SWspPD5OmNL8zW7YFd+ WLkLehrC1pviEXwI
X-BeenThere python-de@python.org
X-Mailman-Version 2.1.27
Precedence list
List-Id Die Deutsche Python Mailingliste <python-de.python.org>
List-Unsubscribe <https://mail.python.org/mailman/options/python-de>, <mailto:python-de-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-de/>
List-Post <mailto:python-de@python.org>
List-Help <mailto:python-de-request@python.org?subject=help>
List-Subscribe <https://mail.python.org/mailman/listinfo/python-de>, <mailto:python-de-request@python.org?subject=subscribe>
X-Mailman-Original-Message-ID <9a003315-4f84-cadd-bc0e-2a6d025ab072@sschwarzer.net>
X-Mailman-Original-References <fpufbqF2sqvU1@mid.individual.net>
Xref csiph.com de.comp.lang.python:5195

Show key headers only | View raw


On 2018-07-02 13:07, Michael S. wrote:
> habe hier einen ESP8266 mit Micropython am Laufen. Der läuft 24h und 
> sendet zyklisch Daten an einen Webserver. Gelegentlich (Tage bis Wochen) 
> passiert es, das das Python-Script vermutlich mit einer Exception 
> abstürzt. Wenn ich dann mit WebREPL draufschaue sehe ich, dass die 
> Konsole funktional ist.
> Das bedeutet:
> 1. Es hat kein Reboot stattgefunden, denn dann wäre das
>     Script über den Autostart neu gestartet worden.
> 2. Das Script wurde vermutlich durch eine Exception beendet.
> 
> Die mir bekannten kritischen Dinge (Netzwerk) habe ich schon mit 
> Try/Except abgefangen. Trotzdem bricht das Skript ab.
> 
> Wie bekomme ich raus, was das für eine Exception war? Ich kann schlecht 
> wochenlang ein Notebook mit RS232 durchlaufen lassen, um da mitzuhören.

ich habe keine Erfahrung mit MicroPython, aber sonst ist
das übliche Vorgehen, auf der obersten Aufrufebene ein
try/except zu verwenden und im Fehlerfall die Exception
(evtl. mit weiteren Informationen) zu loggen.

Also in etwa:

import logging


def main():
    ...


if __name__ == "__main__":
    # Set up logging.
    log = logging.getLogger()
    ...
    try:
        main()
    except Exception:
        log.exception("ggf. zusätzlicher Text")
    logging.shutdown()

"Netzwerkfehler" lassen sich manchmal schwer abfangen, weil
sie in ganz verschiedenen Exceptions resultieren können (bspw.
Low-Level-Socketfehler oder Fehler auf Anwendungsprotokoll-
Ebene). In dem Fall ist es für die Fehleranalyse hilfreich,
wie oben lieber zu viel als zu wenig abzufangen und zu loggen.

Viele Grüße
Stefan

Back to de.comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Micropython - Exception nachträglich ermitteln "Michael S." <michaely@bigfoot.de> - 2018-07-02 13:07 +0200
  Re: [Python-de]  Micropython - Exception nachträglich ermitteln Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2018-07-02 15:10 +0200
    Re: [Python-de] Micropython - Exception nachträglich ermitteln "Michael S." <michaely@bigfoot.de> - 2018-07-02 15:25 +0200
    Re: [Python-de]  Micropython - Exception nachträglich ermitteln "Peter Heitzer" <peter.heitzer@rz.uni-regensburg.de> - 2018-07-02 13:30 +0000
      Re: [Python-de] Micropython - Exception nachträglich ermitteln "Michael S." <michaely@bigfoot.de> - 2018-07-02 15:57 +0200

csiph-web