Skip to content

Commit 96d9cc1

Browse files
braydonkdd-jasminesun
authored andcommitted
[chore] [receiver/hostmetrics] Remove any references to uptimescraper (open-telemetry#40093)
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue. Ex. Adding a feature - Explain what this achieves.--> #### Description I renamed this scraper to `system`, but neglected to remove a number of references to the old `uptimescraper` name. While I was here, I also cleaned up some OS support problems where there wasn't proper guarding, but it never showed up cause it's supported on the 3 OS's we run tests on. <!-- Issue number (e.g. #1234) or full URL to issue, if applicable. --> #### Link to tracking issue Fixes open-telemetry#40092 <!--Describe what testing was performed and which tests were added.--> #### Testing Locally ran all tests and integration tests.
1 parent 1f8cff9 commit 96d9cc1

File tree

5 files changed

+26
-12
lines changed

5 files changed

+26
-12
lines changed

receiver/hostmetricsreceiver/internal/scraper/systemscraper/config.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77
"github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/systemscraper/internal/metadata"
88
)
99

10-
// Config relating to Uptime Metric Scraper.
10+
// Config relating to System Metric Scraper.
1111
type Config struct {
1212
// MetricsBuilderConfig allows to customize scraped metrics/attributes representation.
1313
metadata.MetricsBuilderConfig `mapstructure:",squash"`

receiver/hostmetricsreceiver/internal/scraper/systemscraper/factory.go

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@ import (
1414
"github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/systemscraper/internal/metadata"
1515
)
1616

17+
var (
18+
supportedOS = runtime.GOOS == "linux" || runtime.GOOS == "windows" || runtime.GOOS == "darwin"
19+
errUnsupportedOS = errors.New("the system scraper is only available on Linux, Windows, or macOS")
20+
)
21+
1722
// NewFactory for System scraper.
1823
func NewFactory() scraper.Factory {
1924
return scraper.NewFactory(metadata.Type, createDefaultConfig, scraper.WithMetrics(createMetricsScraper, metadata.MetricsStability))
@@ -32,14 +37,14 @@ func createMetricsScraper(
3237
settings scraper.Settings,
3338
cfg component.Config,
3439
) (scraper.Metrics, error) {
35-
if runtime.GOOS != "linux" && runtime.GOOS != "windows" && runtime.GOOS != "darwin" {
36-
return nil, errors.New("uptime scraper only available on Linux, Windows, or macOS")
40+
if !supportedOS {
41+
return nil, errUnsupportedOS
3742
}
3843

39-
uptimeScraper := newUptimeScraper(ctx, settings, cfg.(*Config))
44+
systemScraper := newSystemScraper(ctx, settings, cfg.(*Config))
4045

4146
return scraper.NewMetrics(
42-
uptimeScraper.scrape,
43-
scraper.WithStart(uptimeScraper.start),
47+
systemScraper.scrape,
48+
scraper.WithStart(systemScraper.start),
4449
)
4550
}

receiver/hostmetricsreceiver/internal/scraper/systemscraper/factory_test.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,11 @@ func TestCreateSystemScraper(t *testing.T) {
1919

2020
scraper, err := factory.CreateMetrics(context.Background(), scrapertest.NewNopSettings(metadata.Type), cfg)
2121

22-
assert.NoError(t, err)
23-
assert.NotNil(t, scraper)
22+
if supportedOS {
23+
assert.NoError(t, err)
24+
assert.NotNil(t, scraper)
25+
} else {
26+
assert.ErrorIs(t, err, errUnsupportedOS)
27+
assert.Nil(t, scraper)
28+
}
2429
}

receiver/hostmetricsreceiver/internal/scraper/systemscraper/system_scraper.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import (
1616
"github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/systemscraper/internal/metadata"
1717
)
1818

19-
// scraper for Uptime Metrics
19+
// scraper for System Metrics
2020
type systemsScraper struct {
2121
settings scraper.Settings
2222
config *Config
@@ -27,8 +27,8 @@ type systemsScraper struct {
2727
uptime func(context.Context) (uint64, error)
2828
}
2929

30-
// newUptimeScraper creates an Uptime related metric
31-
func newUptimeScraper(_ context.Context, settings scraper.Settings, cfg *Config) *systemsScraper {
30+
// newSystemScraper creates an Uptime related metric
31+
func newSystemScraper(_ context.Context, settings scraper.Settings, cfg *Config) *systemsScraper {
3232
return &systemsScraper{settings: settings, config: cfg, bootTime: host.BootTimeWithContext, uptime: host.UptimeWithContext}
3333
}
3434

receiver/hostmetricsreceiver/internal/scraper/systemscraper/system_scraper_test.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,14 @@ import (
1818
)
1919

2020
func TestScrape(t *testing.T) {
21+
if !supportedOS {
22+
t.Skip()
23+
}
24+
2125
ctx := context.Background()
2226
fakeDate := time.Date(2006, 0o1, 0o2, 0o3, 0o4, 0o5, 0, time.UTC)
2327

24-
s := newUptimeScraper(ctx, scrapertest.NewNopSettings(metadata.Type), &Config{
28+
s := newSystemScraper(ctx, scrapertest.NewNopSettings(metadata.Type), &Config{
2529
MetricsBuilderConfig: metadata.DefaultMetricsBuilderConfig(),
2630
})
2731

0 commit comments

Comments
 (0)