import multiprocessing
import os
import json

bind = "127.0.0.1:8000"
workers = multiprocessing.cpu_count() * 2 + 1
preload_app = True # By preloading an application you can save some RAM resources as well as speed up server boot times
keepalive = 5
# daemon = True # Detaches the server from the controlling terminal and enters the background. disabled for now
# logging

with open("settings.json", "r") as jfile:
    settings = json.load(jfile)

errorlog = settings["LOGFOLDER"] + "/gunicorn_error.log"
loglevel = "warning"
accesslog = settings["LOGFOLDER"] + "/gunicorn_access.log"

if not os.path.isdir("/usr/src/app/data/logs"):
    os.mkdir("/usr/src/app/data/logs")
if not os.path.isfile(errorlog):
    os.system('touch {}'.format(errorlog))
if not os.path.isfile(accesslog):
    os.system('touch {}'.format(accesslog))
capture_output = True

# debug settings which need to be commented out in prod
# reload=True
# reload_engine = "inotify"


# I only went till the section https://docs.gunicorn.org/en/latest/settings.html#logging there are more settings
# some of them might be useful