Не показан регистратор Django, работающий на Docker
logger.debug()
и print()
не отображаются на проекте Django, который работает на Docker. Все остальные операции корректны.
Правильно ли я понимаю, что журналы отображаются в окне терминала, который запускает docker-compose up
?
Я пробовал выводить разрешение , но это не работает для меня.
Мои настройки приведены ниже.
directory
Project
├── Service_ID
│ ├── root
│ ├──settings.py
|
├── docker-compose.yml
└── docker
├── mysql
│ ├── Dockerfile
│ └── my.cnf
├── nginx
│ ├── default.conf
│ └── uwsgi_params
└── python
├── Dockerfile
└── requirements.txt
docker-compose.yml
version: "3.8"
services:
...
web:
image: nginx:1.21.3-alpine
ports:
- 8000:8000
volumes:
- ./Service_ID:/workspace
- ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf
- ./docker/nginx/uwsgi_params:/etc/nginx/uwsgi_params
working_dir: /workspace
depends_on:
- root
root:
build: ./docker/python
command: uwsgi --socket :8001 --module root.wsgi --py-autoreload 1 --logto /tmp/tmp.log
volumes:
- ./Service_ID:/workspace
expose:
- "8001"
depends_on:
- db
volumes:
db-store:
python/Dockerfile
FROM python:3.8.3
ENV PYTHONUNBUFFERED 1
RUN mkdir /workspace
WORKDIR /workspace
ADD requirements.txt /workspace/
RUN pip3 install --upgrade pip
RUN pip3 install -r requirements.txt
ADD . /workspace/
Service_ID/root/settings.py
IS_ON_LOG_FILE = True
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'file': {
'format': '\t'.join([
"[%(levelname)s]",
"%(message)s",
])
},
'console': {
'format': '\t'.join([
"[%(levelname)s]",
"%(message)s",
])
},
},
'handlers': {
'file': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': os.path.join(BASE_DIR, 'django.log'),
'formatter': 'file',
},
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'console',
},
},
'root': {
'handlers': ['console', 'file'] if IS_ON_LOG_FILE else ['console'],
'level': 'DEBUG',
},
}
Вместо того, чтобы видеть консоли, как в проекте без Docker, я использую Django debug toolbar. В ней есть раздел Log.