6

我正在使用 Jenkins 日志解析器插件来提取和显示构建日志。规则文件看起来像,

 # Compiler Error
 error /(?i) error:/

 # Compiler Warning
 warning /(?i) warning:/

一切正常,但由于某些原因,在“Parsed Output Console”的末尾,我看到了这条消息,

NOTE: Some bad parsing rules have been found:

Bad parsing rule: , Error:1
Bad parsing rule: , Error:1

我确信这是一个微不足道的问题,但目前无法弄清楚。请帮忙 :)

编辑: 根据 Kobi 的回答并查看了“解析规则文件”,我以这种方式修复了它(冒号后有一个空格)。这正如预期的那样完美。

# Compiler Error
error /(?i)error: /

# Compiler Warning
warning /(?i)warning: /
4

2 回答 2

6

日志解析器插件不支持您的模式中的空格。

这可以在他们的源代码中清楚地看到:

final String ruleParts[] = parsingRule.split("\\s");
String regexp = ruleParts[1];

他们可能应该使用.split("\\s", 2).

作为替代方案,您可以使用\s,\b转义序列- \u0020

于 2013-06-17T10:49:27.707 回答
0

我曾尝试在模式中没有空格,但这不起作用。事实证明,解析规则文件不支持其中的空行。一旦我删除了空行,我就没有得到这个“错误的解析规则:,错误:1”。

我认为因为该行是空的 - 它不会在第一个冒号之后回显任何规则。如果报告了问题所在的行号,那就太好了。

于 2018-08-01T18:43:54.400 回答