[英]Django too many open files
我的django應用程序中顯示“打開的文件太多”。 我認為這與日志記錄系統有關,因為對於每個請求,都會為stage.log文件創建一個新的描述符。
處理程序python_logging_rabbitmq.RabbitMQHandler屬於此軟件包python-logging-rabbitmq
有什么幫助嗎? 謝謝。
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'filters': {
'request_id': {
'()': 'log_request_id.filters.RequestIDFilter'
},
'ip': {
'()': 'audit.ip_address.filters.IPAddressFilter'
}
},
'formatters': {
'standard': {
'format': STANDARD_FORMAT
},
'compact': {
'format': COMPACT_FORMAT
},
'json': {
'()': 'pythonjsonlogger.jsonlogger.JsonFormatter',
'fmt': JSON_FORMAT
}
},
'handlers': {
'file': {
'level': 'DEBUG',
'class': 'logging.handlers.RotatingFileHandler',
'filters': ['request_id', 'ip'],
'filename': BASE_DIR + '/logs/stage.log',
'formatter': 'standard',
'backupCount': LOG_FILE_BACKUP_COUNT,
'maxBytes': LOG_FILE_MAX_SIZE
},
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'filters': ['request_id', 'ip'],
'formatter': 'compact'
},
'rabbit': {
'level': 'DEBUG',
'class': 'python_logging_rabbitmq.RabbitMQHandler',
'formatter': 'json',
'host': RABBIT_HOST,
'username': RABBIT_USER,
'password': RABBIT_PWD,
'exchange': 'log',
'fields': {
'origin': 'main-api',
'env': 'stage'
},
'fields_under_root': True
}
},
'loggers': {
'app': {
'handlers': ['console', 'file', 'rabbit'],
'level': 'DEBUG',
'propagate': False,
},
'django.request': {
'handlers': ['console', 'file'],
'level': 'DEBUG',
'propagate': False,
},
'requests.packages.urllib3': {
'handlers': ['console', 'file'],
'level': 'DEBUG',
'propagate': True,
}
}
}
使用ulimit -n
檢查系統限制。 在我的機器中,值為65536。
然后可以設置更大的值。
ulimit -n 70000
要么:
sudo echo 70000 > /proc/sys/fs/file-max
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.