6 from django.conf import settings
9 errorlog = "/var/log/horizon/gunicorn.log"
12 # maxrss ceiling in kbytes
13 MAXRSS_CEILING = 512000
16 def worker_abort(worker):
17 path = ("/proc/%s/fd") % os.getpid()
18 contents = os.listdir(path)
19 upload_dir = getattr(settings, 'FILE_UPLOAD_TEMP_DIR', '/tmp')
20 pattern = os.path.join(upload_dir, '*.upload')
23 f = os.path.join(path, i)
27 if fnmatch.fnmatch(link, pattern):
34 def when_ready(server):
35 subprocess.check_call(["/usr/bin/horizon-assets-compress"])
38 def post_worker_init(worker):
40 worker.restart = False
43 def pre_request(worker, req):
46 worker.nr = worker.max_requests - 1
47 maxrss = resource.getrusage(resource.RUSAGE_SELF).ru_maxrss
48 msg = "%(date)s %(uri)s %(rss)u" % ({'date': datetime.datetime.now(),
49 'uri': getattr(req, "uri"),
54 def post_request(worker, req, environ, resp):
56 if not worker.restart:
57 maxrss = resource.getrusage(resource.RUSAGE_SELF).ru_maxrss
58 if maxrss > MAXRSS_CEILING and worker.nrq == 0: