@@ -134,23 +134,36 @@ func createNodeInfoFamilyGenerator() generator.FamilyGenerator {
134
134
n .Status .NodeInfo .SystemUUID ,
135
135
}
136
136
137
- internalIP := ""
137
+ internalIPs := []string {}
138
+ externalIPs := []string {}
138
139
for _ , address := range n .Status .Addresses {
139
- if address .Type == "InternalIP" {
140
- internalIP = address .Address
140
+ switch address .Type {
141
+ case "InternalIP" :
142
+ internalIPs = append (internalIPs , address .Address )
143
+ case "ExternalIP" :
144
+ externalIPs = append (externalIPs , address .Address )
141
145
}
142
146
}
143
- labelKeys = append (labelKeys , "internal_ip" )
144
- labelValues = append (labelValues , internalIP )
145
147
146
- externalIP := ""
147
- for _ , address := range n .Status .Addresses {
148
- if address .Type == "ExternalIP" {
149
- externalIP = address .Address
148
+ if len (internalIPs ) > 0 {
149
+ for _ , ip := range internalIPs {
150
+ labelKeys = append (labelKeys , "internal_ip" )
151
+ labelValues = append (labelValues , ip )
152
+ }
153
+ } else {
154
+ labelKeys = append (labelKeys , "internal_ip" )
155
+ labelValues = append (labelValues , "" )
156
+ }
157
+
158
+ if len (externalIPs ) > 0 {
159
+ for _ , ip := range externalIPs {
160
+ labelKeys = append (labelKeys , "external_ip" )
161
+ labelValues = append (labelValues , ip )
150
162
}
163
+ } else {
164
+ labelKeys = append (labelKeys , "external_ip" )
165
+ labelValues = append (labelValues , "" )
151
166
}
152
- labelKeys = append (labelKeys , "external_ip" )
153
- labelValues = append (labelValues , externalIP )
154
167
155
168
return & metric.Family {
156
169
Metrics : []* metric.Metric {
0 commit comments