浏览代码

add a warning when a grok pattern ends with \n (#183)

Thibault "bui" Koechlin 4 年之前
父节点
当前提交
1956f52be5
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      pkg/parser/node.go

+ 4 - 0
pkg/parser/node.go

@@ -3,6 +3,7 @@ package parser
 import (
 import (
 	"fmt"
 	"fmt"
 	"net"
 	"net"
+	"strings"
 
 
 	"github.com/antonmedv/expr"
 	"github.com/antonmedv/expr"
 
 
@@ -412,6 +413,9 @@ func (n *Node) compile(pctx *UnixParserCtx) error {
 		n.logger.Debugf("%s regexp: %s", n.Grok.RegexpName, n.Grok.RunTimeRegexp.Regexp.String())
 		n.logger.Debugf("%s regexp: %s", n.Grok.RegexpName, n.Grok.RunTimeRegexp.Regexp.String())
 		valid = true
 		valid = true
 	} else if n.Grok.RegexpValue != "" {
 	} else if n.Grok.RegexpValue != "" {
+		if strings.HasSuffix(n.Grok.RegexpValue, "\n") {
+			n.logger.Debugf("Beware, pattern ends with \\n : '%s'", n.Grok.RegexpValue)
+		}
 		//n.logger.Debugf("+ Regexp Compilation '%s'", n.Grok.RegexpValue)
 		//n.logger.Debugf("+ Regexp Compilation '%s'", n.Grok.RegexpValue)
 		n.Grok.RunTimeRegexp, err = pctx.Grok.Compile(n.Grok.RegexpValue)
 		n.Grok.RunTimeRegexp, err = pctx.Grok.Compile(n.Grok.RegexpValue)
 		if err != nil {
 		if err != nil {