I am trying to run Gunicorn, and I am running into an error (pasted below). At present it looks like Gunicorn or one of its dependencies is attempting to read settings.LOGGING, and the settings.py file does not appear to define a settings.LOGGING.
So I'd like to know what sort of literal or other code I can add so that Gunicorn + dependencies have what they think they need.
Code paste:
(socialenv)jonathan@li393-189:~/directory$ python manage.py run_gunicorn 0.0.0. 0:8000 2013-04-14 17:40:13 [26464] [INFO] Starting gunicorn 0.17.2 2013-04-14 17:40:13 [26464] [INFO] Listening at: http://0.0.0.0:8000 (26464) 2013-04-14 17:40:13 [26464] [INFO] Using worker: sync 2013-04-14 17:40:13 [26469] [INFO] Booting worker with pid: 26469 2013-04-14 17:40:13 [26469] [ERROR] Exception in worker process: Traceback (most recent call last): File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/arbiter.py", line 485, in spawn_worker worker.init_process() File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/workers/base.py", line 100, in init_process self.wsgi = self.app.wsgi() File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/app/base.py", line 103, in wsgi self.callable = self.load() File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/app/djangoapp.py", line 133, in load return mod.make_command_wsgi_application(self.admin_media_path) File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/app/django_wsgi.py", line 113, in make_command_wsgi_application reload_django_settings() File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/app/django_wsgi.py", line 109, in reload_django_settings logging_config_func(settings.LOGGING) File "/usr/lib/python2.7/logging/config.py", line 777, in dictConfig dictConfigClass(config).configure() File "/usr/lib/python2.7/logging/config.py", line 503, in configure raise ValueError("dictionary doesn't specify a version") ValueError: dictionary doesn't specify a version Traceback (most recent call last): File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/arbiter.py", line 485, in spawn_worker worker.init_process() File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/workers/base.py", line 100, in init_process self.wsgi = self.app.wsgi() File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/app/base.py", line 103, in wsgi self.callable = self.load() File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/app/djangoapp.py", line 133, in load return mod.make_command_wsgi_application(self.admin_media_path) File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/app/django_wsgi.py", line 113, in make_command_wsgi_application reload_django_settings() File "/home/jonathan/socialenv/local/lib/python2.7/site-packages/gunicorn/app/django_wsgi.py", line 109, in reload_django_settings logging_config_func(settings.LOGGING) File "/usr/lib/python2.7/logging/config.py", line 777, in dictConfig dictConfigClass(config).configure() File "/usr/lib/python2.7/logging/config.py", line 503, in configure raise ValueError("dictionary doesn't specify a version") ValueError: dictionary doesn't specify a version 2013-04-14 17:40:13 [26469] [INFO] Worker exiting (pid: 26469) 2013-04-14 17:40:13 [26464] [INFO] Shutting down: Master 2013-04-14 17:40:13 [26464] [INFO] Reason: Worker failed to boot. (socialenv)jonathan@li393-189:~/directory$
I had the same error and I fixed it by adding logging configuration to the project's settings file, I used the example from this page
https://docs.djangoproject.com/en/dev/topics/logging/
here is the code from my settings file
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'verbose': {
'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
},
'simple': {
'format': '%(levelname)s %(message)s'
},
},
'handlers': {
'null': {
'level': 'DEBUG',
'class': 'logging.NullHandler',
},
'console':{
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'simple'
},
'mail_admins': {
'level': 'ERROR',
'class': 'django.utils.log.AdminEmailHandler',
'filters': [],
}
},
'loggers': {
'django': {
'handlers': ['null'],
'propagate': True,
'level': 'INFO',
},
'django.request': {
'handlers': ['mail_admins'],
'level': 'ERROR',
'propagate': False,
},
}
}
The easiest way is to add in settings.py:
LOGGING = {
'version': 1,
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With