diff options
Diffstat (limited to 'mapr/logformat/default.go')
| -rw-r--r-- | mapr/logformat/default.go | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/mapr/logformat/default.go b/mapr/logformat/default.go new file mode 100644 index 0000000..f0df5bc --- /dev/null +++ b/mapr/logformat/default.go @@ -0,0 +1,23 @@ +package logformat + +import ( + "errors" + "strings" +) + +// MakeFieldsDEFAULT is the default log file mapreduce parser. +func (p *Parser) MakeFieldsDEFAULT(maprLine string) (map[string]string, error) { + fields := make(map[string]string, 20) + splitted := strings.Split(maprLine, "|") + + fields["$hostname"] = p.hostname + + for _, kv := range splitted { + keyAndValue := strings.SplitN(kv, "=", 2) + if len(keyAndValue) != 2 { + return fields, errors.New("Error parsing mapr token: " + kv) + } + fields[strings.ToLower(keyAndValue[0])] = keyAndValue[1] + } + return fields, nil +} |
