OSERROR: [ERRNO 24] Слишком много открытых файлов одушевленное числоPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 OSERROR: [ERRNO 24] Слишком много открытых файлов одушевленное число

Сообщение Anonymous »

У меня приложение Django, работающее на сервере, который я использую на сервере на сервере. Это то, что выглядит мой файл службы стрелочного завода, выглядит как < /p>
myapp.service написан < /p>

Код: Выделить всё

[Unit]
Description=myapp daemon
Requires=myapp.socket
After=network.target

[Service]
User=root
Group=www-data
WorkingDirectory=/myappApi/
ExecStart=/myappApi/venv/bin/gunicorn \
--access-logfile - \
--workers 10 \
--timeout 0 \
--bind unix:/run/myapp.sock \
myappProject.wsgi:application

[Install]
WantedBy=multi-user.target
< /code>
И это ошибка, которую я получаю < /p>
File "/myappApi/views.py", line 293, in CustomHandler
Jan 23 10:48:30 myapp gunicorn[2957207]:     app = CustomApp()
Jan 23 10:48:30 myapp gunicorn[2957207]:   File "app.py", line 22, in __init__
Jan 23 10:48:30 myapp gunicorn[2957207]:     self.logger = start_logger(__file__)
Jan 23 10:48:30 myapp gunicorn[2957207]:   File "utils/loggerUtil.py", line 19, in start_logger
Jan 23 10:48:30 myapp gunicorn[2957207]: OSError: [Errno 24] Too many open files: 'conf/config.json'
< /code>
выше ошибку повышается этим кодом < /p>
from logging.handlers import RotatingFileHandler
import os, logging, time, json

def start_logger(__file__):
os.makedirs('logs', exist_ok=True)
fileName = os.path.basename(__file__)
logdatetime = time.strftime("%d-%m-%Y-%I-%M")
logFilename = 'logs/' + fileName[:-3] + logdatetime + '.log'

logger = logging.getLogger(__file__)
''' Setting the threshold of logger to DEBUG '''
with open("conf/config.json") as f1:
data = json.load(f1)
# Rotating handler
handler = RotatingFileHandler(
logFilename, maxBytes=data['maxBytes'], backupCount=data['backupCount'])
logger.addHandler(handler)
return logger
Я проверил этот ответ, он увеличивает ulimit файла, и это нормально, но это временное решение. Я заметил, что использую контекстный менеджер, поэтому файлы за пределами этого блока должны быть закрыты, почему он все еще открыт?


Подробнее здесь: https://stackoverflow.com/questions/793 ... s-gunicorn
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»