4 BASE_DIR = os.path.dirname(os.path.dirname(__file__))
5 LOGS_DIR = os.path.join(BASE_DIR, 'logs')
8 class RequestFilter(logging.Filter):
9 def filter(self, record):
10 record.client = record.request.META.get('REMOTE_HOST') or record.request.META.get('REMOTE_ADDR')
14 DATE_FORMAT = "%Y.%m.%d %H:%M:%S"
18 'disable_existing_loggers': False,
21 'format': '[%(asctime)s] %(levelname)-8s %(client)16s - %(status_code)s - %(message)s',
22 'datefmt': DATE_FORMAT,
25 'format': '[%(asctime)s] %(levelname)-8s - %(message)s',
26 'datefmt': DATE_FORMAT,
29 'format': '[%(asctime)s] %(levelname)-8s - %(filename)s:%(lineno)s in %(funcName)s - %(message)s',
30 'datefmt': DATE_FORMAT,
35 '()': 'plgng.settings_logging.RequestFilter',
41 'class': 'logging.StreamHandler',
45 'class': 'logging.handlers.RotatingFileHandler',
46 'filename': os.path.join(LOGS_DIR, 'main.log'),
47 'maxBytes': 1024 * 1024 * 5, # 5 MB
49 'formatter': 'request',
50 'filters': ['request_filter']
54 'class': 'logging.handlers.RotatingFileHandler',
55 'filename': os.path.join(LOGS_DIR, 'requests.log'),
56 'maxBytes': 1024 * 1024 * 5, # 5 MB
58 'formatter': 'request',
59 'filters': ['request_filter']
63 'class': 'logging.handlers.RotatingFileHandler',
64 'filename': os.path.join(LOGS_DIR, 'openid.log'),
65 'maxBytes': 1024 * 1024 * 5, # 5 MB
66 'formatter': 'simple',
70 'class': 'logging.handlers.RotatingFileHandler',
71 'filename': os.path.join(LOGS_DIR, 'sql.log'),
72 'maxBytes': 1024 * 1024 * 5, # 5 MB
73 'formatter': 'simple',
77 'class': 'logging.handlers.RotatingFileHandler',
78 'filename': os.path.join(LOGS_DIR, 'service.log'),
79 'maxBytes': 1024 * 1024 * 5, # 5 MB
80 'formatter': 'verbose',
89 'handlers': ['request'],
93 'django.db.backends': {
99 'handlers': ['openid'],
103 'handlers': ['service'],