Настройка режима логирования в ViQube

Настройка режима логирования в ViQube

Режимы логирования

По умолчанию запись логов ведётся в режиме DEBUG - максимальное количество фиксируемых в логах событий.

Для изменения режима логирования необходимо:

  1. На сервере с установленным ViQube-master открыть файл /docker-volume/viqube/config/config.ini на редактирование.

    sudo nano /docker-volume/viqube/config/config.ini
  2. В секциях [log.default] и [log.web] изменить значение поля level на требуемое.

  3. Перезапустить контейнер ViQube:

    docker service update --init visiology_viqube-master

Ротация логов

За ротацию логов отвечает утилита logrotate. Запускается раз в час через cron.

Конфиг по-умолчанию
/viqube/apiLog/viqube_api.log /viqube/log/viqube.log { su root root size 300M maxage 60 notifempty missingok copytruncate dateext dateformat _%Y_%m_%d-%H_%M_%S postrotate logfile=$1; rotatedfile=$(find ${logfile}_*[0-9]); gzip $rotatedfile; endscript }

 

С помощью переменной окружения LOG_ROTATE в контейнер можно передать другие настройки. Для этого нужно отредактировать файл viqube.yml и перезапустить run.sh.

Ротируем логи каждые 5 мегабайт, храним две недели
version: "3.2" services: viqube: ... environment: - CONFIG_FILE=/mnt/volume/config.ini - SNAPSHOT=auto.snapshot - VPROXY_URL=${PLATFORM_URL} - GDB_ENABLED=1 - | LOG_ROTATE= su root root size 5M maxage 14 notifempty missingok copytruncate dateext dateformat _%Y_%m_%d-%H_%M_%S postrotate logfile=$$1; rotatedfile=$$(find $${logfile}_*[0-9]); gzip $$rotatedfile; endscript restart: always network_mode: ${PROJECT_NAME:-visiology}_overlay
  1. Символы $ заменены на $$ – это нужно для того, чтобы докер не считал это шаблонными строками

  2. Ротировать надо из-под рута: строчку su root root не удалять

  3. ViQube держит лог постоянно открытым, строчку copytruncate не удалять