TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: Debuglater – Serialize Python traceback for later debugging

5 pointsby edublancasalmost 3 years ago

1 comment

edublancasalmost 3 years ago
Hi HN!<p>We just released debuglater (<a href="https:&#x2F;&#x2F;github.com&#x2F;ploomber&#x2F;debuglater" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ploomber&#x2F;debuglater</a>), an open-source library that serializes a Python traceback object for later debugging.<p>You can see a quick video demo here: <a href="https:&#x2F;&#x2F;github.com&#x2F;ploomber&#x2F;debuglater&#x2F;blob&#x2F;master&#x2F;README.md" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ploomber&#x2F;debuglater&#x2F;blob&#x2F;master&#x2F;README.md</a><p>Countless times, we&#x27;ve scheduled overnight jobs to find out the following day that they failed. While logs are helpful, they are often insufficient for debugging. debuglater allows you to store the traceback object so you can start a debugging session at any moment.<p>We built this to support our open-source framework for data scientists (<a href="https:&#x2F;&#x2F;github.com&#x2F;ploomber&#x2F;ploomber" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ploomber&#x2F;ploomber</a>), who often execute long-running code in remote environments. However, we realized this could be useful for the Python community, so we created a separate package. This project is a fork of Eli Finer&#x27;s pydump, so kudos to him for laying the foundations!<p>The implementation is quite interesting. You can see it here (<a href="https:&#x2F;&#x2F;github.com&#x2F;ploomber&#x2F;debuglater&#x2F;blob&#x2F;master&#x2F;src&#x2F;debuglater&#x2F;pydump.py" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;ploomber&#x2F;debuglater&#x2F;blob&#x2F;master&#x2F;src&#x2F;debug...</a>). The serialization step has two parts: it takes the traceback object and wraps it into a new object so it can be serialized; secondly, it stores the source code so you can debug even if you don&#x27;t have access to the source code!<p>Please take it for a spin and let us what you think!