错误:括号不匹配,而且我敢肯定没有

时间:2018-12-30 18:01:32

标签: javascript node.js logstash-grok

我定义了一个模式,当我在一个字符串上匹配它时,会显示错误:无匹配的关闭括号,但前提是我在支持Windows中添加了\。

Grok过滤器应匹配这样的字符串: 日志\ 01.01.2018 \ 1_00_06 \ server_console.log

let filestamp = pattern.date.parseSync(fileObject.filename);

filestamp.date = filestamp.date.split(".")[2] + "." +n(filestamp.date.split(".")[1]) + "." + filestamp.date.split(".")[0];
filestamp.time = filestamp.time.replace(/_/g, ":");

以及另一个文件中的过滤器

exports.date = patterns.createPattern('%{GREEDYDATA}\\%{DATE_EU:date}\\%{DATA:time}\\%{GREEDYDATA}');

fileObject.filename是一个类似于“ logs \ 01.01.2018 \ 1_00_06 \ server_console.log”的字符串

pattern.date.parseSync行仅显示“错误:右括号不匹配”,这告诉我grok模式中缺少右括号,但没有。.

1 个答案:

答案 0 :(得分:0)

尝试这样的操作来避免反斜杠:

let filestamp = pattern.date.parseSync(fileObject.filename.split("\\").join("\\\\"));