我有一个运行在aws-elastic-beanstalk上的Django应用程序。我尝试禁用由我的健康检查引起的日志。运行状况检查已经被路由到单独的页面。
Elastic-beanstalk使用Apache + mod_wsgi。
下面的代码是一个使用nginx服务器的solution。我尝试为apache创建类似的东西。
我发现conditional Logs可能是在Apache Server上做这件事的合适方法。
我的目录结构如下所示
/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: |
SetEnvIf Request_URI "^/health/$" dontlog
CustomLog logs/access_log common env=!dontlog文件已创建,但没有任何效果。我既看不到错误日志,也看不到访问日志的更改。
在httpd.conf中已经有了以下设置:
CustomLog "logs/access_log" combined我需要覆盖它吗?
发布于 2019-03-24 19:18:09
所以我又做了一次尝试。
真正的问题在于httpd.conf中的设置。如果我注释掉这一行:
#CustomLog "logs/access_log" combined通过ssh手动使用我的设置,运行状况检查将从日志中消失。
请注意,这并不是真正的永久解决方案,因为beanstalk可能会启动一个新实例并再次覆盖httpd.conf。
发布于 2021-08-17 02:01:29
在/etc/httpd/conf/httpd.conf中
SetEnvIf Request_URI "^/health/$" dontlog=1
CustomLog logs/access_log combined env=!dontlog
LogFormat "%h (%{X-Forwarded-For}i) %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combinedhttps://stackoverflow.com/questions/55195810
复制相似问题