o Pc*@s*ddlZedd4ZiZeD]%ZeZedrqedkr!qedddd eedd<qWdn1s@wYej ed ej d gZ d Z d ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZddZ ddZ!ddZ"ddZ#ddZ$d d!Z%dS)"Nz.flaskenv-prodr# ="'z 127.0.0.1:portisynciF-infoz;%(h)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s"cCs|jd|jdS)NzWorker spawned (pid: %s))logrpidserverworkerr,/srv/http/project.prompt.hu/gunicorn.conf.py post_forksrcCsdS)Nrrrrrpre_forksrcC|jddS)NzForked child, re-executing.rrrrrrpre_execrcCr)Nz!Server is ready. Spawning workersrrrrr when_readyrrc Cs|jdddl}ddl}ddl}dd|D}g}|D]2\}}|d| |d|f| |D]\}} } } |d|| | f| rT|d| q9q#|j d |dS) Nz"worker received INT or QUIT signalrcSsi|]}|j|jqSr)identname).0thrrr szworker_int..z # Thread: %s(%d)zFile: "%s", line %d, in %sz %sr)rr threadingsys traceback enumerate_current_framesitemsappendget extract_stackstripdebugjoin) rr%r&r'Zid2namecodeZthreadIdstackfilenamelinenor linerrr worker_ints r6cCr)Nzworker received SIGABRT signalr)rrrr worker_abortrr7)&osopenZfhZ vars_dict readlinesr5r. startswithsplitenvironupdater,bindbacklogworkersthreads worker_classworker_connectionstimeout keepalivespewdaemonpidfileumaskusergrouptmp_upload_direrrorlogloglevel accesslogaccess_log_format proc_namerrrrr6r7rrrrsN   * . +