Skip to content

[receiver/ciscoosreceiver] Add system scraper implementation#43568

Merged
dmitryax merged 4 commits into
open-telemetry:mainfrom
etserend:42647-add-system-scrapers
Oct 23, 2025
Merged

[receiver/ciscoosreceiver] Add system scraper implementation#43568
dmitryax merged 4 commits into
open-telemetry:mainfrom
etserend:42647-add-system-scrapers

Conversation

@etserend
Copy link
Copy Markdown
Contributor

Description

Add system scraper implementation for the Cisco OS receiver to collect device availability and connection metrics from Cisco devices.

Link to tracking issue

#42647

Testing

Unit tests for system scraper config, factory, and scraping logic

  • All tests passing in receiver/ciscoosreceiver module
  • Repository checks passing: make golint, make gotest
  • Live SSH testing validated against real Cisco IOS-XE device

Documentation

  • Updated main receiver metadata.yaml with new metrics
  • Generated metrics builders and config code via mdatagen
  • Factory integration with proper scraper registration

@etserend etserend requested review from a team and dmitryax as code owners October 15, 2025 15:47
@etserend etserend force-pushed the 42647-add-system-scrapers branch 9 times, most recently from 1e9b9e0 to a5a14a6 Compare October 16, 2025 19:55
Comment thread receiver/ciscoosreceiver/internal/scraper/systemscraper/system_scraper.go Outdated
Comment thread receiver/ciscoosreceiver/internal/scraper/systemscraper/system_scraper.go Outdated
@etserend etserend force-pushed the 42647-add-system-scrapers branch 4 times, most recently from 271d76d to 87a7bd7 Compare October 17, 2025 22:27
@thompson-tomo
Copy link
Copy Markdown
Contributor

@etserend any particular reason why you are prefixing the system metrics with ciscoos when they resemble the generic system metrics just with less recommend attributes. Hence it should be possible to use the general metric to increase interoperability.

Comment thread receiver/ciscoosreceiver/internal/scraper/systemscraper/system_scraper.go Outdated
Comment thread receiver/ciscoosreceiver/internal/scraper/systemscraper/system_scraper.go Outdated
Comment thread receiver/ciscoosreceiver/internal/scraper/systemscraper/parser.go Outdated
Comment thread receiver/ciscoosreceiver/internal/scraper/systemscraper/system_scraper.go Outdated
@etserend etserend force-pushed the 42647-add-system-scrapers branch from 87a7bd7 to 20cd57b Compare October 21, 2025 20:38
@etserend
Copy link
Copy Markdown
Contributor Author

@etserend any particular reason why you are prefixing the system metrics with ciscoos when they resemble the generic system metrics just with less recommend attributes. Hence it should be possible to use the general metric to increase interoperability.

@thompson-tomo We're following semconv to avoid duplicating standard system metrics. CPU and memory metrics are aligned with the generic system ones. For device-specific metrics like cisco.device.up and cisco.collector.duration.seconds, keeping the cisco prefix might make sense since they don't map directly.

@etserend etserend force-pushed the 42647-add-system-scrapers branch 4 times, most recently from 2d26286 to dd7e495 Compare October 21, 2025 23:16
Comment thread receiver/ciscoosreceiver/internal/metadata/testdata/config.yaml Outdated
Comment thread receiver/ciscoosreceiver/internal/scraper/systemscraper/system_scraper.go Outdated
Comment thread receiver/ciscoosreceiver/internal/scraper/systemscraper/system_scraper.go Outdated
Comment thread receiver/ciscoosreceiver/internal/scraper/systemscraper/config.go
Comment thread receiver/ciscoosreceiver/internal/scraper/systemscraper/parser.go Outdated
@thompson-tomo
Copy link
Copy Markdown
Contributor

@etserend ahh, I had focussed on the documentation to determine whst metrics had been implemented rather than the code. Could you update the docs to match the code:

In relation to the up metric, feedback in open-telemetry/semantic-conventions#2939 is that an uptime metric is preferred otherwise a status metric could be offered with a running state.

@etserend etserend force-pushed the 42647-add-system-scrapers branch from 442583d to 3607772 Compare October 22, 2025 04:43
@etserend etserend force-pushed the 42647-add-system-scrapers branch 9 times, most recently from 4173aea to b777bc7 Compare October 22, 2025 23:37
Comment thread receiver/ciscoosreceiver/internal/scraper/systemscraper/metadata.yaml Outdated
@etserend etserend force-pushed the 42647-add-system-scrapers branch 2 times, most recently from 6d24afe to 0936e4a Compare October 23, 2025 16:15
@etserend etserend force-pushed the 42647-add-system-scrapers branch from 0936e4a to 41cffc9 Compare October 23, 2025 16:50
@etserend etserend force-pushed the 42647-add-system-scrapers branch from 41cffc9 to 3e6bb50 Compare October 23, 2025 17:40
@dmitryax dmitryax merged commit e59a9cd into open-telemetry:main Oct 23, 2025
190 checks passed
@github-actions github-actions Bot added this to the next release milestone Oct 23, 2025
@otelbot
Copy link
Copy Markdown
Contributor

otelbot Bot commented Oct 23, 2025

Thank you for your contribution @etserend! 🎉 We would like to hear from you about your experience contributing to OpenTelemetry by taking a few minutes to fill out this survey. If you are getting started contributing, you can also join the CNCF Slack channel #opentelemetry-new-contributors to ask for guidance and get help.

atoulme pushed a commit that referenced this pull request Nov 5, 2025
….0 (#44067)

#### Description

The same chlog entry was added in
#43568
and
#43815,
resulting in duplicate entries in changelog and release notes.

_I'll update release notes once this is merged._
jelly-afk pushed a commit to jelly-afk/opentelemetry-collector-contrib that referenced this pull request Nov 6, 2025
….0 (open-telemetry#44067)

#### Description

The same chlog entry was added in
open-telemetry#43568
and
open-telemetry#43815,
resulting in duplicate entries in changelog and release notes.

_I'll update release notes once this is merged._
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants