Skip to content

Commit f9df234

Browse files
authored
Merge pull request #1144 from PapaPiya/syslog_support_month
[PDR-13065][feat(syslog)]syslog rfc3164解析支持月份大小写格式
2 parents 38745f6 + a8e980d commit f9df234

File tree

3 files changed

+80
-37
lines changed

3 files changed

+80
-37
lines changed

parser/syslog/syslog_test.go

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,16 @@ import (
44
"errors"
55
"fmt"
66
"strconv"
7+
"strings"
78
"testing"
89
"time"
910

1011
"github.com/stretchr/testify/assert"
1112

12-
"github.com/qiniu/logkit/utils/parse/syslog"
1313
"github.com/qiniu/logkit/conf"
1414
. "github.com/qiniu/logkit/parser/config"
1515
. "github.com/qiniu/logkit/utils/models"
16+
"github.com/qiniu/logkit/utils/parse/syslog"
1617
)
1718

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

212213
c = conf.MapConf{}
213214
c[KeyParserType] = "syslog"
214-
c[KeyTimeZoneOffset] = "-8"
215215
c[KeyRFC3164ParseYear] = "true"
216216
p, err = NewParser(c)
217217
assert.Nil(t, err)
@@ -246,3 +246,44 @@ func TestSyslogParser_Detail(t *testing.T) {
246246
assert.Equal(t, syslog.MessageFacilities[4], dts[0][Facility])
247247
assert.Equal(t, syslog.MessageSeverities[2], dts[0][Severity])
248248
}
249+
250+
func TestSyslogParser3164_Month(t *testing.T) {
251+
c := conf.MapConf{}
252+
c[KeyParserType] = "syslog"
253+
c[KeyRFC3164ParseYear] = "true"
254+
p, err := NewParser(c)
255+
assert.Nil(t, err)
256+
lines := []string{
257+
`<34>JAN 1 22:14:15 2019`,
258+
`<34>jan 01 22:14:15 2019`,
259+
`<34>FEB 2 22:14:15 2019`,
260+
`<34>feb 02 22:14:15 2019`,
261+
`<34>MAR 3 22:14:15 2019`,
262+
`<34>mar 03 22:14:15 2019`,
263+
`<34>APR 4 22:14:15 2019`,
264+
`<34>apr 04 22:14:15 2019`,
265+
`<34>MAY 5 22:14:15 2019`,
266+
`<34>may 05 22:14:15 2019`,
267+
`<34>JUN 6 22:14:15 2019`,
268+
`<34>jun 06 22:14:15 2019`,
269+
`<34>JUL 7 22:14:15 2019`,
270+
`<34>jul 07 22:14:15 2019`,
271+
`<34>AUG 8 22:14:15 2019`,
272+
`<34>aug 08 22:14:15 2019`,
273+
`<34>SEP 9 22:14:15 2019`,
274+
`<34>sep 09 22:14:15 2019`,
275+
`<34>OCT 10 22:14:15 2019`,
276+
`<34>oct 11 22:14:15 2019`,
277+
`<34>NOV 21 22:14:15 2019`,
278+
`<34>nov 25 22:14:15 2019`,
279+
`<34>DEC 31 22:14:15 2019`,
280+
`<34>dec 31 22:14:15 2019`,
281+
}
282+
datas, err := p.Parse(lines)
283+
assert.Nil(t, err)
284+
for i, data := range datas {
285+
expected, err := time.Parse("Jan _2 15:04:05 2006", strings.TrimPrefix(lines[i], "<34>"))
286+
assert.Nil(t, err)
287+
assert.Equal(t, expected.Format("2006-01-02 15:04:05 +0000 UTC"), data["timestamp"].(time.Time).String())
288+
}
289+
}

vendor/github.com/influxdata/go-syslog/rfc3164/machine.go

Lines changed: 36 additions & 34 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/vendor.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -404,7 +404,7 @@
404404
"versionExact": "v3.0.0"
405405
},
406406
{
407-
"checksumSHA1": "LW8IqSuDESCWaGBykseTzOVAEsw=",
407+
"checksumSHA1": "PMJNwoONVNE+Jq7cvRaaBsOGWAo=",
408408
"path": "github.com/influxdata/go-syslog/rfc3164",
409409
"revision": "a1889d947b48b1519a4615c640d993551ad6d8fc",
410410
"revisionTime": "2020-11-28T20:09:27Z",

0 commit comments

Comments
 (0)