![]() Out of the customer’s control, we had a clear choice: Figure out a way to handle these requests or lose their business. ![]() These large requests, however, were no accident: A new customer is monitoring an external SaaS service that happens to send along these large payloads. Their traffic gets blocked at the firewall while we reach out. ![]() Occasionally a customer will push a bug into production that tries to DOS us in some way. Client intended to send too large body: 14601004 bytes, client: xx.xx.xx.xx, server: cronitor.link. I was on the train when my phone buzzed in my pocket. The daemon’s job is to rescue failures by re-processing them but it was puzzled by these requests and flagged them for manual review. Last week our LogWatcher daemon alerted us to failed pings in our Nginx error log. With this focus we’ve grown from a Django app on a single Linode box to a stack that today handles our traffic bursts of 100 requests/sec. We process ping requests into telemetry data and a missed ping can lead to errant reporting and, even worse, false-positive alerts. How to ignore large requests with Nginx and uWSGI (and several ways not to)Īt Cronitor, our primary engineering objective is to never miss a tracking ping.
0 Comments
Leave a Reply. |