summaryrefslogtreecommitdiff
path: root/internal/mapr/logformat/parser.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/mapr/logformat/parser.go')
-rw-r--r--internal/mapr/logformat/parser.go16
1 files changed, 14 insertions, 2 deletions
diff --git a/internal/mapr/logformat/parser.go b/internal/mapr/logformat/parser.go
index aa6416c..24290ef 100644
--- a/internal/mapr/logformat/parser.go
+++ b/internal/mapr/logformat/parser.go
@@ -2,6 +2,7 @@ package logformat
import (
"errors"
+ "fmt"
"time"
"github.com/mimecast/dtail/internal/config"
@@ -26,6 +27,7 @@ func NewParser(logFormatName string, query *mapr.Query) (Parser, error) {
now := time.Now()
timeZoneName, timeZoneOffset := now.Zone()
+ // Extend this for adding more log formats!
switch logFormatName {
case "generic":
return newGenericParser(hostname, timeZoneName, timeZoneOffset)
@@ -33,8 +35,18 @@ func NewParser(logFormatName string, query *mapr.Query) (Parser, error) {
return newGenericKVParser(hostname, timeZoneName, timeZoneOffset)
case "mimecast":
return newMimecastParser(hostname, timeZoneName, timeZoneOffset)
- default:
+ case "default":
return newDefaultParser(hostname, timeZoneName, timeZoneOffset)
-
+ case "custom1":
+ return newCustom1Parser(hostname, timeZoneName, timeZoneOffset)
+ case "custom2":
+ return newCustom2Parser(hostname, timeZoneName, timeZoneOffset)
+ default:
+ p, err := newDefaultParser(hostname, timeZoneName, timeZoneOffset)
+ if err != nil {
+ return p, fmt.Errorf("No '%s' mapr log format and problem creating default one: %v",
+ logFormatName, err)
+ }
+ return p, fmt.Errorf("No '%s' mapr log format", logFormatName)
}
}