cscli context detect: fix nil dereference (#2635)
* cscli context detect: fix nil dereference * Remove log.warning for missing pattern
This commit is contained in:
parent
8bb7da3994
commit
486f96e7ac
|
@ -332,7 +332,7 @@ cscli lapi context detect crowdsecurity/sshd-logs
|
||||||
}
|
}
|
||||||
|
|
||||||
// to avoid all the log.Info from the loaders functions
|
// to avoid all the log.Info from the loaders functions
|
||||||
log.SetLevel(log.ErrorLevel)
|
log.SetLevel(log.WarnLevel)
|
||||||
|
|
||||||
err = exprhelpers.Init(nil)
|
err = exprhelpers.Init(nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -499,13 +499,13 @@ func detectNode(node parser.Node, parserCTX parser.UnixParserCtx) []string {
|
||||||
|
|
||||||
if node.Grok.RegexpName != "" {
|
if node.Grok.RegexpName != "" {
|
||||||
grokCompiled, err := parserCTX.Grok.Get(node.Grok.RegexpName)
|
grokCompiled, err := parserCTX.Grok.Get(node.Grok.RegexpName)
|
||||||
if err != nil {
|
// ignore error (parser does not exist?)
|
||||||
log.Warningf("Can't get subgrok: %s", err)
|
if err == nil {
|
||||||
}
|
for _, capturedField := range grokCompiled.Names() {
|
||||||
for _, capturedField := range grokCompiled.Names() {
|
fieldName := fmt.Sprintf("evt.Parsed.%s", capturedField)
|
||||||
fieldName := fmt.Sprintf("evt.Parsed.%s", capturedField)
|
if !slices.Contains(ret, fieldName) {
|
||||||
if !slices.Contains(ret, fieldName) {
|
ret = append(ret, fieldName)
|
||||||
ret = append(ret, fieldName)
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -545,13 +545,13 @@ func detectSubNode(node parser.Node, parserCTX parser.UnixParserCtx) []string {
|
||||||
}
|
}
|
||||||
if subnode.Grok.RegexpName != "" {
|
if subnode.Grok.RegexpName != "" {
|
||||||
grokCompiled, err := parserCTX.Grok.Get(subnode.Grok.RegexpName)
|
grokCompiled, err := parserCTX.Grok.Get(subnode.Grok.RegexpName)
|
||||||
if err != nil {
|
if err == nil {
|
||||||
log.Warningf("Can't get subgrok: %s", err)
|
// ignore error (parser does not exist?)
|
||||||
}
|
for _, capturedField := range grokCompiled.Names() {
|
||||||
for _, capturedField := range grokCompiled.Names() {
|
fieldName := fmt.Sprintf("evt.Parsed.%s", capturedField)
|
||||||
fieldName := fmt.Sprintf("evt.Parsed.%s", capturedField)
|
if !slices.Contains(ret, fieldName) {
|
||||||
if !slices.Contains(ret, fieldName) {
|
ret = append(ret, fieldName)
|
||||||
ret = append(ret, fieldName)
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue