mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-11-03 19:17:13 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
import os
 | 
						|
 | 
						|
bind = f'0.0.0.0:{os.getenv("PAPERLESS_PORT", 8000)}'
 | 
						|
workers = int(os.getenv("PAPERLESS_WEBSERVER_WORKERS", 2))
 | 
						|
worker_class = "paperless.workers.ConfigurableWorker"
 | 
						|
timeout = 120
 | 
						|
 | 
						|
 | 
						|
def pre_fork(server, worker):
 | 
						|
    pass
 | 
						|
 | 
						|
 | 
						|
def pre_exec(server):
 | 
						|
    server.log.info("Forked child, re-executing.")
 | 
						|
 | 
						|
 | 
						|
def when_ready(server):
 | 
						|
    server.log.info("Server is ready. Spawning workers")
 | 
						|
 | 
						|
 | 
						|
def worker_int(worker):
 | 
						|
    worker.log.info("worker received INT or QUIT signal")
 | 
						|
 | 
						|
    ## get traceback info
 | 
						|
    import threading, sys, traceback
 | 
						|
 | 
						|
    id2name = dict([(th.ident, th.name) for th in threading.enumerate()])
 | 
						|
    code = []
 | 
						|
    for threadId, stack in sys._current_frames().items():
 | 
						|
        code.append("\n# Thread: %s(%d)" % (id2name.get(threadId, ""), threadId))
 | 
						|
        for filename, lineno, name, line in traceback.extract_stack(stack):
 | 
						|
            code.append('File: "%s", line %d, in %s' % (filename, lineno, name))
 | 
						|
            if line:
 | 
						|
                code.append("  %s" % (line.strip()))
 | 
						|
    worker.log.debug("\n".join(code))
 | 
						|
 | 
						|
 | 
						|
def worker_abort(worker):
 | 
						|
    worker.log.info("worker received SIGABRT signal")
 |