Назад | Перейти на главную страницу

Отключить ведение журнала проверки работоспособности в приложении AWS ELB Django

У меня есть приложение Django, работающее на aws-elastic-beanstalk. Я пытаюсь отключить журналы, вызванные проверками состояния. Проверки работоспособности уже направлены на отдельную страницу.

Elastic-beanstalk использует Apache + mod_wsgi.

Вот решение который работает с серверами nginx. Я пытаюсь создать что-то подобное для apache.

я узнал что условные журналы вероятно, подходящий способ сделать это с сервером Apache.

Структура моего каталога выглядит следующим образом

/etc/httpd/
  - conf 
      - httpd.conf # main conf
  - conf.d 
      - wsgi.conf # virtual hosts
      - additional config files

моя попытка:

files:
  "/etc/httpd/conf.d/disable_health_logs.conf":
    mode: "000644"
    owner: root
    group: root
    content: |
        <IfModule mod_setenvif>
            SetEnvIf Request_URI "^/health/$" dontlog
            CustomLog logs/access_log combined env=!dontlog
        </IfModule>

Дополнительная конфигурация disable_health_logs.conf создается, но не действует. Я не вижу журналов ошибок и изменений в журналах доступа.

в httpd.conf уже есть следующая настройка:

 CustomLog "logs/access_log" combined

Мне нужно отменить это?

Я предполагаю, что вы загружаете модуль где-то со следующим

LoadModule setenvif_module <your_apache_modules_path>/mod_setenvif.so

Кроме того, необходимо исправить ваш IfModule, как показано ниже (примечание: .c в конце)

<IfModule mod_setenvif.c>
  SetEnvIf Request_URI "^/health/$" dontlog
  CustomLog logs/access_log combined env=!dontlog
</IfModule>

В остальном то, что у вас есть, выглядит правильно.

Так что у меня было еще одно дело.

Проблема действительно в настройке в httpd.conf. Если я закомментировал строку:

#CustomLog "logs/access_log" combined

вручную через ssh используются мои настройки, а проверки работоспособности исчезают из журналов.

Обратите внимание, что это не совсем постоянное решение, поскольку beanstalk может запустить новый экземпляр и снова переопределить httpd.conf