I have a scrape job with lots of ec2_scrape_configs sections, which scrapes 
multiple accounts and regions.

Getting the account ID is easy (it's in __meta_ec2_owner_id). What I'm 
trying to find is, is there a clean and direct way to obtain the region?  
The best I could come up with was a frig to match the instance's private 
DNS name, which seems to include the region except when in us-east-1:

    relabel_configs:
      - source_labels: [__meta_ec2_private_dns_name]
        regex: '.*[.]ec2[.]internal'
        replacement: us-east-1
        target_label: region
      - source_labels: [__meta_ec2_private_dns_name]
        regex: '.*[.]([^.]+)[.]compute[.]internal'
        target_label: region

This feels wrong.  I'd be fine specifying it explicitly, like this:

    ec2_sd_configs:
      - access_key: AKIA.....
        secret_key: XXXX.....
        region: eu-west-1
        refresh_interval: 1h

*        labels:          region: eu-west-1*
      - access_key: AKIA.....
        secret_key: XXXX.....
        region: eu-west-2
        refresh_interval: 1h

*        labels:          region: eu-west-2*
      ... etc

However, that doesn't work, because only static_sd_configs and 
file_sd_configs permit labels to be specified for groups of targets like 
this.

The job has a rather long and complicated set of relabelling rules, so I'd 
rather not have to duplicate the logic across a separate scrape job per 
region.

Have I missed something?

Thanks,

Brian.

-- 
You received this message because you are subscribed to the Google Groups 
"Prometheus Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/prometheus-users/7e9d7023-380c-47cf-bd16-986a49809ba0n%40googlegroups.com.

Reply via email to