[Twisted-Python] operational visibility

Patrick Cloke patrick at cloke.us
Tue Nov 12 06:47:28 MST 2019


On 11/12/19 2:12 AM, Glyph wrote:

> At twistedmatrix.com <http://twistedmatrix.com>, we dogfood a bunch of 
> Twisted software: our DNS server (primary and secondary!), our web 
> server, even a little bit of email stuff here and there.  And we have 
> our own structured logging system to make it, ahem, "easy" to put logs 
> into some kind of a system that can tell you what Twisted is doing.
>
> But uh… we don't get a lot of value from this because the tracebacks 
> just go into disk files that nobody ever looks at.
>
> Does anyone know if, say, Sentry supports a free tier for open source 
> projects, or something like that?  Or any other error-tracking 
> provider even vaguely compatible with Twisted might do something like 
> that?  It would be nice to surface and fix tracebacks that affect our 
> own infrastructure before they hit our users.
>
> -g
>
Hi Glyph,

Sentry has a free "developer" tier which I'm sure you already found [1]. 
It supports up to 5k events per month, the downside for using it for 
twistedmatrix.com might be that it only supports 1 team member. I don't 
recall hearing if they do any free plans for OSS, but from talking to a 
few of their early employees a while ago I wouldn't be surprised. It 
could be worth integrating just to see if it gives you the sort of 
information you're looking for? Another option would be to self-host the 
Sentry OSS version, but I'm assuming the team wouldn't want to take on 
more ops stuff.

In terms of integration, note that the (new) Sentry Python library 
doesn't support using Twisted as a transport [2] (meaning you'd block 
the reactor to report the issue), although their old one does [3]. 
Integrating Sentry+Twisted for the actual error reporting works fairly 
well via the logging system and I've been doing it for a while with 
success (>5 years). Although we sometimes get duplicate errors for an 
exception and unhandled errors in deferreds... it'd be great if the 
integration was a bit more plug and play.

Not sure if any of that was useful, but the short version is that I've 
been super impressed with the Sentry integration, especially in 
multi-language environments.

--Patrick

[1] https://sentry.io/pricing/
[2] https://github.com/getsentry/sentry-python/issues/266
[3] 
https://github.com/getsentry/raven-python/blob/master/raven/transport/twisted.py

-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/twisted-python/attachments/20191112/c53aab5f/attachment-0002.html>


More information about the Twisted-Python mailing list