mirror of
https://github.com/prometheus/prometheus.git
synced 2025-02-21 03:16:00 -08:00
feat(scaleway-sd): add labels for multiple routed IPs
Signed-off-by: Jules Casteran <jcasteran@scaleway.com>
This commit is contained in:
parent
f5eff89811
commit
05713e9c63
|
@ -50,6 +50,8 @@ const (
|
||||||
instanceProjectLabel = instanceLabelPrefix + "project_id"
|
instanceProjectLabel = instanceLabelPrefix + "project_id"
|
||||||
instancePublicIPv4Label = instanceLabelPrefix + "public_ipv4"
|
instancePublicIPv4Label = instanceLabelPrefix + "public_ipv4"
|
||||||
instancePublicIPv6Label = instanceLabelPrefix + "public_ipv6"
|
instancePublicIPv6Label = instanceLabelPrefix + "public_ipv6"
|
||||||
|
instancePublicIPv4AddressesLabel = instanceLabelPrefix + "public_ipv4_addresses"
|
||||||
|
instancePublicIPv6AddressesLabel = instanceLabelPrefix + "public_ipv6_addresses"
|
||||||
instanceSecurityGroupIDLabel = instanceLabelPrefix + "security_group_id"
|
instanceSecurityGroupIDLabel = instanceLabelPrefix + "security_group_id"
|
||||||
instanceSecurityGroupNameLabel = instanceLabelPrefix + "security_group_name"
|
instanceSecurityGroupNameLabel = instanceLabelPrefix + "security_group_name"
|
||||||
instanceStateLabel = instanceLabelPrefix + "status"
|
instanceStateLabel = instanceLabelPrefix + "status"
|
||||||
|
@ -175,6 +177,34 @@ func (d *instanceDiscovery) refresh(ctx context.Context) ([]*targetgroup.Group,
|
||||||
}
|
}
|
||||||
|
|
||||||
addr := ""
|
addr := ""
|
||||||
|
if len(server.PublicIPs) > 0 {
|
||||||
|
var ipv4Addresses []string
|
||||||
|
var ipv6Addresses []string
|
||||||
|
|
||||||
|
for _, ip := range server.PublicIPs {
|
||||||
|
if ip.Family == instance.ServerIPIPFamilyInet {
|
||||||
|
ipv4Addresses = append(ipv4Addresses, ip.Address.String())
|
||||||
|
} else if ip.Family == instance.ServerIPIPFamilyInet6 {
|
||||||
|
ipv6Addresses = append(ipv6Addresses, ip.Address.String())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(ipv6Addresses) > 0 {
|
||||||
|
addr = ipv6Addresses[0]
|
||||||
|
labels[instancePublicIPv6AddressesLabel] = model.LabelValue(
|
||||||
|
separator +
|
||||||
|
strings.Join(ipv6Addresses, separator) +
|
||||||
|
separator)
|
||||||
|
}
|
||||||
|
if len(ipv4Addresses) > 0 {
|
||||||
|
addr = ipv4Addresses[0]
|
||||||
|
labels[instancePublicIPv4AddressesLabel] = model.LabelValue(
|
||||||
|
separator +
|
||||||
|
strings.Join(ipv4Addresses, separator) +
|
||||||
|
separator)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if server.IPv6 != nil { //nolint:staticcheck
|
if server.IPv6 != nil { //nolint:staticcheck
|
||||||
labels[instancePublicIPv6Label] = model.LabelValue(server.IPv6.Address.String()) //nolint:staticcheck
|
labels[instancePublicIPv6Label] = model.LabelValue(server.IPv6.Address.String()) //nolint:staticcheck
|
||||||
addr = server.IPv6.Address.String() //nolint:staticcheck
|
addr = server.IPv6.Address.String() //nolint:staticcheck
|
||||||
|
|
|
@ -125,6 +125,8 @@ api_url: %s
|
||||||
"__meta_scaleway_instance_organization_id": "20b3d507-96ac-454c-a795-bc731b46b12f",
|
"__meta_scaleway_instance_organization_id": "20b3d507-96ac-454c-a795-bc731b46b12f",
|
||||||
"__meta_scaleway_instance_project_id": "20b3d507-96ac-454c-a795-bc731b46b12f",
|
"__meta_scaleway_instance_project_id": "20b3d507-96ac-454c-a795-bc731b46b12f",
|
||||||
"__meta_scaleway_instance_public_ipv4": "51.158.183.115",
|
"__meta_scaleway_instance_public_ipv4": "51.158.183.115",
|
||||||
|
"__meta_scaleway_instance_public_ipv4_addresses": ",51.158.183.115,",
|
||||||
|
"__meta_scaleway_instance_public_ipv6_addresses": ",2001:bc8:1640:1568:dc00:ff:fe21:91b,",
|
||||||
"__meta_scaleway_instance_region": "nl-ams",
|
"__meta_scaleway_instance_region": "nl-ams",
|
||||||
"__meta_scaleway_instance_security_group_id": "984414da-9fc2-49c0-a925-fed6266fe092",
|
"__meta_scaleway_instance_security_group_id": "984414da-9fc2-49c0-a925-fed6266fe092",
|
||||||
"__meta_scaleway_instance_security_group_name": "Default security group",
|
"__meta_scaleway_instance_security_group_name": "Default security group",
|
||||||
|
|
Loading…
Reference in a new issue