Skip to content

Commit 76facad

Browse files
authored
Use HostInfo to populate instanceId, InstanceType (open-telemetry#229)
* Use HostInfo to populate instanceId, InstanceType * Fix lint for scraper test
1 parent 13f78ca commit 76facad

File tree

4 files changed

+18
-8
lines changed

4 files changed

+18
-8
lines changed

receiver/awscontainerinsightreceiver/internal/neuron/neuron_monitor_scraper_config.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,14 +71,14 @@ func GetNeuronMetricRelabelConfigs(hostinfo prometheusscraper.HostInfoProvider)
7171
SourceLabels: model.LabelNames{"instance_id"},
7272
TargetLabel: ci.InstanceID,
7373
Regex: relabel.MustNewRegexp("(.*)"),
74-
Replacement: "${1}",
74+
Replacement: hostinfo.GetInstanceID(),
7575
Action: relabel.Replace,
7676
},
7777
{
7878
SourceLabels: model.LabelNames{"instance_type"},
7979
TargetLabel: ci.InstanceType,
8080
Regex: relabel.MustNewRegexp("(.*)"),
81-
Replacement: "${1}",
81+
Replacement: hostinfo.GetInstanceType(),
8282
Action: relabel.Replace,
8383
},
8484
{

receiver/awscontainerinsightreceiver/internal/neuron/neuron_monitor_scraper_test.go

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ hardware_ecc_events_total{availability_zone="us-east-1c",event_type="sram_ecc_un
3939
const dummyClusterName = "cluster-name"
4040
const dummyHostName = "i-000000000"
4141
const dummyNodeName = "dummy-nodeName"
42+
const dummyInstanceType = "instance-type"
4243

4344
type mockHostInfoProvider struct {
4445
}
@@ -51,13 +52,17 @@ func (m mockHostInfoProvider) GetInstanceID() string {
5152
return dummyHostName
5253
}
5354

55+
func (m mockHostInfoProvider) GetInstanceType() string {
56+
return dummyInstanceType
57+
}
58+
5459
func TestNewNeuronScraperEndToEnd(t *testing.T) {
5560
t.Setenv("HOST_NAME", dummyNodeName)
5661
expectedMetrics := make(map[string]prometheusscraper.ExpectedMetricStruct)
5762
expectedMetrics["neuroncore_utilization_ratio"] = prometheusscraper.ExpectedMetricStruct{
5863
MetricValue: 0.1,
5964
MetricLabels: []prometheusscraper.MetricLabel{
60-
{LabelName: "InstanceId", LabelValue: "i-09db9b55e0095612f"},
65+
{LabelName: "InstanceId", LabelValue: dummyHostName},
6166
{LabelName: "ClusterName", LabelValue: dummyClusterName},
6267
{LabelName: "NeuronCore", LabelValue: "0"},
6368
{LabelName: "NodeName", LabelValue: dummyNodeName},
@@ -66,7 +71,7 @@ func TestNewNeuronScraperEndToEnd(t *testing.T) {
6671
expectedMetrics["neurondevice_hw_ecc_events_total_mem_ecc_corrected"] = prometheusscraper.ExpectedMetricStruct{
6772
MetricValue: 3,
6873
MetricLabels: []prometheusscraper.MetricLabel{
69-
{LabelName: "InstanceId", LabelValue: "i-09db9b55e0095612f"},
74+
{LabelName: "InstanceId", LabelValue: dummyHostName},
7075
{LabelName: "ClusterName", LabelValue: dummyClusterName},
7176
{LabelName: "NeuronDevice", LabelValue: "5"},
7277
{LabelName: "NodeName", LabelValue: dummyNodeName},
@@ -75,7 +80,7 @@ func TestNewNeuronScraperEndToEnd(t *testing.T) {
7580
expectedMetrics["neuron_runtime_memory_used_bytes"] = prometheusscraper.ExpectedMetricStruct{
7681
MetricValue: 9.043968e+06,
7782
MetricLabels: []prometheusscraper.MetricLabel{
78-
{LabelName: "InstanceId", LabelValue: "i-09db9b55e0095612f"},
83+
{LabelName: "InstanceId", LabelValue: dummyHostName},
7984
{LabelName: "ClusterName", LabelValue: dummyClusterName},
8085
{LabelName: "NodeName", LabelValue: dummyNodeName},
8186
},
@@ -84,7 +89,7 @@ func TestNewNeuronScraperEndToEnd(t *testing.T) {
8489
expectedMetrics["execution_errors_created"] = prometheusscraper.ExpectedMetricStruct{
8590
MetricValue: 1.7083389404380567e+09,
8691
MetricLabels: []prometheusscraper.MetricLabel{
87-
{LabelName: "InstanceId", LabelValue: "i-09db9b55e0095612f"},
92+
{LabelName: "InstanceId", LabelValue: dummyHostName},
8893
{LabelName: "ClusterName", LabelValue: dummyClusterName},
8994
{LabelName: "NodeName", LabelValue: dummyNodeName},
9095
},
@@ -93,7 +98,7 @@ func TestNewNeuronScraperEndToEnd(t *testing.T) {
9398
expectedMetrics["system_memory_total_bytes"] = prometheusscraper.ExpectedMetricStruct{
9499
MetricValue: 5.32523487232e+011,
95100
MetricLabels: []prometheusscraper.MetricLabel{
96-
{LabelName: "InstanceId", LabelValue: "i-09db9b55e0095612f"},
101+
{LabelName: "InstanceId", LabelValue: dummyHostName},
97102
{LabelName: "ClusterName", LabelValue: dummyClusterName},
98103
{LabelName: "NodeName", LabelValue: dummyNodeName},
99104
},
@@ -102,7 +107,7 @@ func TestNewNeuronScraperEndToEnd(t *testing.T) {
102107
expectedMetrics["hardware_ecc_events_total"] = prometheusscraper.ExpectedMetricStruct{
103108
MetricValue: 864.0,
104109
MetricLabels: []prometheusscraper.MetricLabel{
105-
{LabelName: "InstanceId", LabelValue: "i-09db9b55e0095612f"},
110+
{LabelName: "InstanceId", LabelValue: dummyHostName},
106111
{LabelName: "ClusterName", LabelValue: dummyClusterName},
107112
{LabelName: "NodeName", LabelValue: dummyNodeName},
108113
},

receiver/awscontainerinsightreceiver/internal/prometheusscraper/simple_prometheus_scraper.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ type SimplePrometheusScraperOpts struct {
4141
type HostInfoProvider interface {
4242
GetClusterName() string
4343
GetInstanceID() string
44+
GetInstanceType() string
4445
}
4546

4647
func NewSimplePrometheusScraper(opts SimplePrometheusScraperOpts) (*SimplePrometheusScraper, error) {

receiver/awscontainerinsightreceiver/internal/prometheusscraper/simple_prometheus_scraper_test.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ func (m mockHostInfoProvider) GetInstanceID() string {
2323
return "i-000000000"
2424
}
2525

26+
func (m mockHostInfoProvider) GetInstanceType() string {
27+
return "instance-type"
28+
}
29+
2630
func TestSimplePrometheusScraperBadInputs(t *testing.T) {
2731
settings := componenttest.NewNopTelemetrySettings()
2832
settings.Logger, _ = zap.NewDevelopment()

0 commit comments

Comments
 (0)