Commit Graph

567 Commits

Author SHA1 Message Date
Klaas van Schelven
082986f8ad Cornless: an interruptable server
does not work for sqlite though, because that c-code does not
regularly check whether signal handling is needed.
2024-05-27 13:54:01 +02:00
Klaas van Schelven
e6403ccfe2 cornless util added 2024-05-23 15:34:13 +02:00
Klaas van Schelven
8b0a4aafe0 Note playground.bugsink findings of get_period_counter initialization 2024-05-23 14:32:30 +02:00
Klaas van Schelven
fb66b04be9 Document playground.bugsink.com performance findings 2024-05-23 14:24:04 +02:00
Klaas van Schelven
4647c1b498 Stress test: better stats 2024-05-23 12:36:14 +02:00
Klaas van Schelven
f0c255a346 Force envelope use in stress tests 2024-05-23 11:02:44 +02:00
Klaas van Schelven
75b620941a Don't (accidentally) load all events into memory on-init 2024-05-23 10:43:28 +02:00
Klaas van Schelven
82d40e3741 Push get_pc_registry into snappea.foreman init 2024-05-23 10:12:24 +02:00
Klaas van Schelven
093f81f2f2 Log 'period counter registry initialization' 2024-05-23 10:08:11 +02:00
Klaas van Schelven
23d7f2172d Add showstat (for snappea queue size) 2024-05-23 08:37:48 +02:00
Klaas van Schelven
aee60969ad Fix typo 2024-05-22 21:02:24 +02:00
Klaas van Schelven
a24c295535 Forgotten file added 2024-05-22 20:57:16 +02:00
Klaas van Schelven
78a85087a2 'performance' info for event bytes count 2024-05-22 20:43:10 +02:00
Klaas van Schelven
5af1d2384e Performance logging of Snappea task create/delete 2024-05-22 17:45:28 +02:00
Klaas van Schelven
34f58f9106 Logging fixes
* only use snappea handler when there was already something configured
* in development, use the 'snappea' rather than the 'look below' version for snappea
2024-05-22 17:34:29 +02:00
Klaas van Schelven
e331ef6d79 Clarify development loggers somewhat 2024-05-22 17:12:19 +02:00
Klaas van Schelven
151af98559 Performance logging: push into development.py (i.e. remove from non-development servers) 2024-05-22 17:06:21 +02:00
Klaas van Schelven
9f53ba5a8f Remove timestamps from default snappea
e.g. systemd otherwise has double timestamps
2024-05-22 13:08:24 +02:00
Klaas van Schelven
4624c1d88c Default max request size: also nginx-side 2024-05-22 13:02:51 +02:00
Klaas van Schelven
b09cfb21c3 Configure runsnappea to be rebooted every day
a way to limit memory leaks

also: deal with SIGTERM 'correctly' (i.e. as demanded by systemd)
2024-05-22 12:44:58 +02:00
Klaas van Schelven
9fcbfb9033 Add templates for 404, 500 2024-05-22 09:37:51 +02:00
Klaas van Schelven
7c760ba546 Remove RuntimeDirectory from runsnappea systemd example conf 2024-05-22 09:24:53 +02:00
Klaas van Schelven
529a7a7c9f runssnappea as a separate command (for e.g. ps) 2024-05-22 09:23:31 +02:00
Klaas van Schelven
bf0855b11d Gunicorn: max-requests
just picked 'some reasonably seeming value' to avoid memory leaks (which I've not
observed yet, but are easily imagined)
2024-05-22 08:43:57 +02:00
Klaas van Schelven
f150c839dc Recommended setup: fix tmpfile troubles in 2 ways
* recommend to just run in the home dir
* don't use private tmp

The troubles were: when set up using private tmp files, the 2 processes
cannot communicate with each other
2024-05-22 08:37:52 +02:00
Klaas van Schelven
d4c74c22f8 In the recommended setup, just use port 8000
simplify simplify simplify. In particular, this creates a symmetry with a 'just run
manage.py runserver', which could be used for debugging

Also, turns out sockets aren't actually faster:
https://stackoverflow.com/a/54013893/339144

> In this particular setup no unix socket performance advantage.
2024-05-22 08:30:16 +02:00
Klaas van Schelven
c92e3ec772 Add INGEST_STORE_BASE_DIR 2024-05-20 09:44:38 +02:00
Klaas van Schelven
653bbe0dd2 Remove 'default' conf; it doesn't really map to any particular idea we express in the docs 2024-05-20 09:27:50 +02:00
Klaas van Schelven
53353d2d8c Add some more percentiles 2024-05-19 15:36:27 +02:00
Klaas van Schelven
4b5f1371ed docs: Add server_name to the 443 server too
this is needed when you have multiple servers on the same host
i.e. I ran into it when running munin on the same server
2024-05-18 08:24:36 +02:00
Klaas van Schelven
89dba6e6e5 Fix typo 2024-05-17 15:52:43 +02:00
Klaas van Schelven
0d1f966914 Header configuration: settings-side to correspond with the recommended setup 2024-05-17 12:30:10 +02:00
Klaas van Schelven
371c86b552 Docs for single-server: cleanup by doing a full replay 2024-05-17 12:23:17 +02:00
Klaas van Schelven
5ff2623112 Add checksnappea command 2024-05-17 12:03:40 +02:00
Klaas van Schelven
d2ba9b9ddb Add missing migration 2024-05-17 10:14:09 +02:00
Klaas van Schelven
769e413d28 (WIP) docs for and DDD for single-server deployment 2024-05-16 21:56:39 +02:00
Klaas van Schelven
cb62ec7c58 Docs; WIP for single-server-deployment 2024-05-16 13:11:19 +02:00
Klaas van Schelven
ee228a681d Project 'view on site' button 2024-05-16 10:36:55 +02:00
Klaas van Schelven
0f0a4f996c DDD: whitenoise
Why?

> One is that WhiteNoise is designed to work in situations where Apache, nginx
> and the like aren’t easily available. But more importantly, it’s easy to
> underestimate what’s involved in serving static files correctly

We deal with both these situations:

* for local development, we recommend running with DEBUG=False and still want to
  sever staticfiles

* for deploying using nginx/whatever, I'd like to keep my instructions as simple
  as possible, and doing this right once (in whitenoise) saves us from having to
  come up with the right instructions for a bunch of webservers.
2024-05-16 10:31:59 +02:00
Klaas van Schelven
6c9cc2ab4f Remove asgi.py
we don't do ASGI, let's not have this hanging around as a point of confusion
2024-05-16 10:10:42 +02:00
Klaas van Schelven
5bc3a54e71 Documentation Driven Development: getting started guide
excluding static files
2024-05-16 10:09:55 +02:00
Klaas van Schelven
f07e5aa322 Add show-version command 2024-05-16 09:14:47 +02:00
Klaas van Schelven
7a6dc42478 First version of local-install tutorial 2024-05-16 09:08:15 +02:00
Klaas van Schelven
26d2cddee9 Don't put DB in source-code-root by default 2024-05-15 13:50:18 +02:00
Klaas van Schelven
c1fdb3b591 Proof of Concept for pyproject.toml 2024-05-15 13:32:11 +02:00
Klaas van Schelven
6f9706c85b Add LICENCE file (that points to not-yet-defined terms) 2024-05-14 22:14:14 +02:00
Klaas van Schelven
3e2b6965f9 settings/development.py and create_example_conf working 2024-05-14 11:24:59 +02:00
Klaas van Schelven
0863284a50 WIP (midway checkin): create_example_conf.py 2024-05-13 23:07:20 +02:00
Klaas van Schelven
f2de61b273 Use app_settings for Bugsink-specific stuff
something about consistency
2024-05-13 15:09:35 +02:00
Klaas van Schelven
24917b3324 Rename for clarity 2024-05-13 14:57:47 +02:00