【问题标题】:Filter IIS logs in NXlog+GrayLog2 by status code按状态码过滤 NXlog+GrayLog2 中的 IIS 日志
【发布时间】:2016-10-20 09:50:59
【问题描述】:

我有

<Extension w3c>
    Module            xm_csv
    Fields            $date, $time, $s-ip, $cs-method, $cs-uri-stem, $cs-uri-query, $s-port, $cs-username, $c-ip, $csUser-Agent, $cs-Referer, $cs-host, $sc-status, $sc-substatus, $sc-win32-status, $time-taken
    FieldTypes        string, string, string, string, string, string, integer, string, string, string, string, string, integer, integer, integer, integer
    Delimiter        ' '
    QuoteChar        '"'
    EscapeControl    FALSE
    UndefValue        -
</Extension>

我有

<Input iis>
    Module            im_file
    File            "C:\\inetpub\\logs\\LogFiles\\u_ex*.log"
    SavePos            TRUE
    Exec \
                    if $raw_event =~ /^#/ drop(); \
                    else \
                        { \
                            w3c->parse_csv(); \
                            $EventTime = parsedate($date + " " + $time); \
                            $EventTime = strftime($EventTime, "%Y-%m-%dT%H:%M:%SZ"); \
                            $SourceName = "IIS"; \
                        }
</Input>

当我尝试添加类似

的内容时
if $raw_event =~ /^#/ or $sc-status == 101 drop(); \

我在日志中遇到这样的错误:

couldn't parse statement at line 91, character 46 in C:\Program Files (x86)\nxlog\conf\nxlog.conf; syntax error, unexpected -, expecting (

我曾尝试使用类似的选项,但它不起作用。

我做错了什么,请帮助我。谢谢。

【问题讨论】:

    标签: iis nxlog


    【解决方案1】:

    我找到了解决方案,只需将 &lt;Extension w3c&gt; 字段中的 sc-status 重命名为 scStatus,错误就消失了。因为解析器按顺序获取列,而不是按名称。

    我也得到了来自 nxlog 社区的回答 Link

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 2016-02-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多