From 6a7be0716f799b823b5048f3bb1843dd772c2062 Mon Sep 17 00:00:00 2001 From: kaiyan-sheng Date: Fri, 23 Aug 2019 08:21:50 -0600 Subject: [PATCH] [Metricbeat] Check if fields in DBInstance struct is nil (#13294) * Check fields in DBInstance before assigning --- CHANGELOG.next.asciidoc | 1 + x-pack/metricbeat/module/aws/rds/rds.go | 14 +++++++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.next.asciidoc b/CHANGELOG.next.asciidoc index 5bc1ab3ea8b..87e37351746 100644 --- a/CHANGELOG.next.asciidoc +++ b/CHANGELOG.next.asciidoc @@ -173,6 +173,7 @@ https://github.com/elastic/beats/compare/v7.0.0-alpha2...master[Check the HEAD d - Fix wrong uptime reporting by system/uptime metricset under Windows. {pull}12915[12915] - Print errors that were being omitted in vSphere metricsets. {pull}12816[12816] - Fix redis key metricset dashboard references to index pattern. {pull}13303[13303] +- Check if fields in DBInstance is nil in rds metricset. {pull}13294[13294] {issue}13037[13037] *Packetbeat* diff --git a/x-pack/metricbeat/module/aws/rds/rds.go b/x-pack/metricbeat/module/aws/rds/rds.go index 2b56afefc62..0b329b1844c 100644 --- a/x-pack/metricbeat/module/aws/rds/rds.go +++ b/x-pack/metricbeat/module/aws/rds/rds.go @@ -162,12 +162,16 @@ func getDBInstancesPerRegion(svc rdsiface.ClientAPI) ([]string, map[string]DBDet for _, dbInstance := range output.DBInstances { dbInstanceARNs = append(dbInstanceARNs, *dbInstance.DBInstanceArn) dbDetails := DBDetails{ - dbArn: *dbInstance.DBInstanceArn, - dbAvailabilityZone: *dbInstance.AvailabilityZone, - dbClass: *dbInstance.DBInstanceClass, - dbIdentifier: *dbInstance.DBInstanceIdentifier, - dbStatus: *dbInstance.DBInstanceStatus, + dbArn: *dbInstance.DBInstanceArn, + dbClass: *dbInstance.DBInstanceClass, + dbIdentifier: *dbInstance.DBInstanceIdentifier, + dbStatus: *dbInstance.DBInstanceStatus, } + + if dbInstance.AvailabilityZone != nil { + dbDetails.dbAvailabilityZone = *dbInstance.AvailabilityZone + } + dbDetailsMap[*dbInstance.DBInstanceArn] = dbDetails } return dbInstanceARNs, dbDetailsMap, nil