From cb1aec4fc00e4e45b77823307aa3fb3d23a2b9e7 Mon Sep 17 00:00:00 2001 From: Teppei Fukuda Date: Fri, 11 May 2018 11:17:45 +0900 Subject: [PATCH] Add scanned_at into syslog report (#641) --- report/syslog.go | 1 + report/syslog_test.go | 9 ++++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/report/syslog.go b/report/syslog.go index ee5bd30f..2c8da2ae 100644 --- a/report/syslog.go +++ b/report/syslog.go @@ -59,6 +59,7 @@ func (w SyslogWriter) encodeSyslog(result models.ScanResult) (messages []string) for cveID, vinfo := range result.ScannedCves { var kvPairs []string + kvPairs = append(kvPairs, fmt.Sprintf(`scanned_at="%s"`, result.ScannedAt)) kvPairs = append(kvPairs, fmt.Sprintf(`server_name="%s"`, result.ServerName)) kvPairs = append(kvPairs, fmt.Sprintf(`os_family="%s"`, result.Family)) kvPairs = append(kvPairs, fmt.Sprintf(`os_release="%s"`, result.Release)) diff --git a/report/syslog_test.go b/report/syslog_test.go index 6e18417b..56049ef7 100644 --- a/report/syslog_test.go +++ b/report/syslog_test.go @@ -3,6 +3,7 @@ package report import ( "sort" "testing" + "time" "github.com/future-architect/vuls/models" ) @@ -14,6 +15,7 @@ func TestSyslogWriterEncodeSyslog(t *testing.T) { }{ { result: models.ScanResult{ + ScannedAt: time.Date(2018, 6, 13, 16, 10, 0, 0, time.UTC), ServerName: "teste01", Family: "ubuntu", Release: "16.04", @@ -41,12 +43,13 @@ func TestSyslogWriterEncodeSyslog(t *testing.T) { }, }, expectedMessages: []string{ - `server_name="teste01" os_family="ubuntu" os_release="16.04" ipv4_addr="192.168.0.1,10.0.2.15" ipv6_addr="" packages="pkg1,pkg2" cve_id="CVE-2017-0001"`, - `server_name="teste01" os_family="ubuntu" os_release="16.04" ipv4_addr="192.168.0.1,10.0.2.15" ipv6_addr="" packages="pkg3,pkg4" cve_id="CVE-2017-0002" severity="MEDIUM" cvss_score_v2="5.00" cvss_vector_v2="AV:L/AC:L/Au:N/C:N/I:N/A:C" cwe_id="CWE-20"`, + `scanned_at="2018-06-13 16:10:00 +0000 UTC" server_name="teste01" os_family="ubuntu" os_release="16.04" ipv4_addr="192.168.0.1,10.0.2.15" ipv6_addr="" packages="pkg1,pkg2" cve_id="CVE-2017-0001"`, + `scanned_at="2018-06-13 16:10:00 +0000 UTC" server_name="teste01" os_family="ubuntu" os_release="16.04" ipv4_addr="192.168.0.1,10.0.2.15" ipv6_addr="" packages="pkg3,pkg4" cve_id="CVE-2017-0002" severity="MEDIUM" cvss_score_v2="5.00" cvss_vector_v2="AV:L/AC:L/Au:N/C:N/I:N/A:C" cwe_id="CWE-20"`, }, }, { result: models.ScanResult{ + ScannedAt: time.Date(2018, 6, 13, 17, 10, 0, 0, time.UTC), ServerName: "teste02", Family: "centos", Release: "6", @@ -67,7 +70,7 @@ func TestSyslogWriterEncodeSyslog(t *testing.T) { }, }, expectedMessages: []string{ - `server_name="teste02" os_family="centos" os_release="6" ipv4_addr="" ipv6_addr="2001:0DB8::1" packages="pkg5" cve_id="CVE-2017-0003"`, + `scanned_at="2018-06-13 17:10:00 +0000 UTC" server_name="teste02" os_family="centos" os_release="6" ipv4_addr="" ipv6_addr="2001:0DB8::1" packages="pkg5" cve_id="CVE-2017-0003"`, }, }, }