I'm using Django
, uwsgi
and nginx
in Cloud Run.
A Cloud Run service can't show django logging and error log. That's why Error Report
can't use ,too.
Cloud Run log is like this. It can not see stack trace... I can't know what error happened in the server.
This is my settings.
Django settings.py
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'local': {
'format': "[%(asctime)s] %(levelname)s [%(name)s.%(funcName)s:%(lineno)d] %(message)s"
},
'verbose': {
'format': '{message}',
'style': '{',
},
},
'filters': {
'require_debug_false': {
'()': 'django.utils.log.RequireDebugFalse',
}
},
'handlers': {
'console': {
'class': 'logging.StreamHandler',
'formatter': 'local',
},
},
'root': {
'handlers': ['console'],
'level': 'WARNING',
},
'loggers': {
'users': {
'handlers': ['console'],
'level': 'DEBUG',
'propagate': False,
},
'django': {
'handlers': ['console'],
'level': 'INFO',
'propagate': False,
},
'django.db.backends': {
'handlers': ['console'],
'level': 'INFO',
'propagate': False,
},
'mail_admins': {
'level': 'ERROR',
'filters': ['require_debug_false'],
'class': 'django.utils.log.AdminEmailHandler'
}
}
}
uwsgi.ini
[uwsgi]
# this config will be loaded if nothing specific is specified
# load base config from below
ini = :base
# %d is the dir this configuration file is in
socket =