Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 43 additions & 2 deletions parser/syslog/syslog_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,16 @@ import (
"errors"
"fmt"
"strconv"
"strings"
"testing"
"time"

"github.com/stretchr/testify/assert"

"github.com/qiniu/logkit/utils/parse/syslog"
"github.com/qiniu/logkit/conf"
. "github.com/qiniu/logkit/parser/config"
. "github.com/qiniu/logkit/utils/models"
"github.com/qiniu/logkit/utils/parse/syslog"
)

// 为了保证datasource不错乱,暂不支持多行采集,需要将socket采集中的获取方式改成按原始包读取
Expand Down Expand Up @@ -211,7 +212,6 @@ func TestSyslogParser_ParseYear(t *testing.T) {

c = conf.MapConf{}
c[KeyParserType] = "syslog"
c[KeyTimeZoneOffset] = "-8"
c[KeyRFC3164ParseYear] = "true"
p, err = NewParser(c)
assert.Nil(t, err)
Expand Down Expand Up @@ -246,3 +246,44 @@ func TestSyslogParser_Detail(t *testing.T) {
assert.Equal(t, syslog.MessageFacilities[4], dts[0][Facility])
assert.Equal(t, syslog.MessageSeverities[2], dts[0][Severity])
}

func TestSyslogParser3164_Month(t *testing.T) {
c := conf.MapConf{}
c[KeyParserType] = "syslog"
c[KeyRFC3164ParseYear] = "true"
p, err := NewParser(c)
assert.Nil(t, err)
lines := []string{
`<34>JAN 1 22:14:15 2019`,
`<34>jan 01 22:14:15 2019`,
`<34>FEB 2 22:14:15 2019`,
`<34>feb 02 22:14:15 2019`,
`<34>MAR 3 22:14:15 2019`,
`<34>mar 03 22:14:15 2019`,
`<34>APR 4 22:14:15 2019`,
`<34>apr 04 22:14:15 2019`,
`<34>MAY 5 22:14:15 2019`,
`<34>may 05 22:14:15 2019`,
`<34>JUN 6 22:14:15 2019`,
`<34>jun 06 22:14:15 2019`,
`<34>JUL 7 22:14:15 2019`,
`<34>jul 07 22:14:15 2019`,
`<34>AUG 8 22:14:15 2019`,
`<34>aug 08 22:14:15 2019`,
`<34>SEP 9 22:14:15 2019`,
`<34>sep 09 22:14:15 2019`,
`<34>OCT 10 22:14:15 2019`,
`<34>oct 11 22:14:15 2019`,
`<34>NOV 21 22:14:15 2019`,
`<34>nov 25 22:14:15 2019`,
`<34>DEC 31 22:14:15 2019`,
`<34>dec 31 22:14:15 2019`,
}
datas, err := p.Parse(lines)
assert.Nil(t, err)
for i, data := range datas {
expected, err := time.Parse("Jan _2 15:04:05 2006", strings.TrimPrefix(lines[i], "<34>"))
assert.Nil(t, err)
assert.Equal(t, expected.Format("2006-01-02 15:04:05 +0000 UTC"), data["timestamp"].(time.Time).String())
}
}
70 changes: 36 additions & 34 deletions vendor/github.com/influxdata/go-syslog/rfc3164/machine.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion vendor/vendor.json
Original file line number Diff line number Diff line change
Expand Up @@ -404,7 +404,7 @@
"versionExact": "v3.0.0"
},
{
"checksumSHA1": "LW8IqSuDESCWaGBykseTzOVAEsw=",
"checksumSHA1": "PMJNwoONVNE+Jq7cvRaaBsOGWAo=",
"path": "github.com/influxdata/go-syslog/rfc3164",
"revision": "a1889d947b48b1519a4615c640d993551ad6d8fc",
"revisionTime": "2020-11-28T20:09:27Z",
Expand Down