httpd logformat配置 - 为现有的logformat添加格式后缀

时间:2013-03-06 11:26:35

标签: apache

我正在尝试通过重新使用已存在的LogFormat昵称来定义新的LogFormat

让我们考虑以下剪辑(来自httpd文档的“Log files”部分):

SetEnv CACHE_MISS 1
LogFormat "%h %l %u %t \"%r\" %>s %b %{CACHE_MISS}e" common-cache
CustomLog logs/access_log common-cache

我想知道是否有办法通过重复使用common-cache日志格式而不是硬编码common来定义%h %l %u %t \"%r\" %>s %b日志格式

我问这个是因为我想在核心base文件中定义httpd.conf日志格式,然后根据customized日志定义base日志格式格式,在我的每个虚拟主机配置文件中

请注意,我不需要自定义日志格式的昵称,这意味着以下表单之一的解决方案就足够了:

## form 1
LogFormat *my customized format*
TransferLog logs/access_log

##form 2
CustomLog logs/access_log *my customized format*

感谢您的投入

1 个答案:

答案 0 :(得分:0)

使用piped log来实现此目的:

 CustomLog "|| customizer.sh logs/access_log 86400" foo_format
  

第二个参数指定将写入日志文件的内容。它可以指定由以前的LogFormat指令定义的昵称,也可以是日志格式部分中描述的显式格式字符串。