Closed
Description
Component(s)
receiver/sqlserver
What happened?
Description
While trying to scrape ALL possible metrics using the receiver I am seeing this error:
2025-04-02T11:32:19.067-0400 error [email protected]/obs_metrics.go:61 Error scraping metrics {"error": "failed to parse valueKey for row 330: strconv.ParseInt: parsing \"2.082944e+06\": invalid syntax in Free Space in tempdb (KB)"}
go.opentelemetry.io/collector/scraper/scraperhelper.wrapObsMetrics.func1
go.opentelemetry.io/collector/scraper/[email protected]/obs_metrics.go:61
go.opentelemetry.io/collector/scraper.ScrapeMetricsFunc.ScrapeMetrics
go.opentelemetry.io/collector/[email protected]/metrics.go:24
go.opentelemetry.io/collector/scraper/scraperhelper.scrapeMetrics
go.opentelemetry.io/collector/scraper/[email protected]/controller.go:256
go.opentelemetry.io/collector/scraper/scraperhelper.NewMetricsController.func1
go.opentelemetry.io/collector/scraper/[email protected]/controller.go:228
go.opentelemetry.io/collector/scraper/scraperhelper.(*controller[...]).startScraping.func1
go.opentelemetry.io/collector/scraper/[email protected]/controller.go:171
When running the query from
directly and filtering on "Free Space in tempdb (KB)", I see this:Steps to Reproduce
Run the attached configuration with otel-contrib agent v0.123.0 locally on the target system
Collector version
v0.123.0
Environment information
Environment
- Windows Server 2019
- SQL Server 2019 (RTM-CU29-GDR 15.0.4410.1)
OpenTelemetry Collector configuration
exporters:
debug:
receivers:
sqlserver:
collection_interval: 60s
server: ${env:COMPUTERNAME}
port: 1433
username: ${env:SECURE_LOGIN}
password: ${env:SECURE_PASSWORD}
resource_attributes:
server.address:
enabled: true
server.port:
enabled: true
sqlserver.computer.name:
enabled: true
sqlserver.database.name:
enabled: true
sqlserver.instance.name:
enabled: true
metrics:
sqlserver.batch.request.rate:
enabled: true
sqlserver.batch.sql_compilation.rate:
enabled: true
sqlserver.batch.sql_recompilation.rate:
enabled: true
sqlserver.database.backup_or_restore.rate:
enabled: true
sqlserver.database.count:
enabled: false
sqlserver.database.execution.errors:
enabled: true
sqlserver.database.full_scan.rate:
enabled: true
sqlserver.database.io:
enabled: true
sqlserver.database.latency:
enabled: true
sqlserver.database.operations:
enabled: true
sqlserver.database.tempdb.space:
enabled: true
sqlserver.database.tempdb.version_store.size:
enabled: true
sqlserver.deadlock.rate:
enabled: true
sqlserver.index.search.rate:
enabled: true
sqlserver.lock.timeout.rate:
enabled: true
sqlserver.lock.wait.rate:
enabled: true
sqlserver.lock.wait_time.avg:
enabled: true
sqlserver.login.rate:
enabled: true
sqlserver.logout.rate:
enabled: true
sqlserver.memory.grants.pending.count:
enabled: true
sqlserver.memory.usage:
enabled: true
sqlserver.page.buffer_cache.free_list.stalls.rate:
enabled: true
sqlserver.page.buffer_cache.hit_ratio:
enabled: true
sqlserver.page.checkpoint.flush.rate:
enabled: true
sqlserver.page.lazy_write.rate:
enabled: true
sqlserver.page.life_expectancy:
enabled: true
sqlserver.page.lookup.rate:
enabled: true
sqlserver.page.operation.rate:
enabled: true
sqlserver.page.split.rate:
enabled: true
sqlserver.processes.blocked:
enabled: true
sqlserver.replica.data.rate:
enabled: true
sqlserver.resource_pool.disk.throttled.read.rate:
enabled: true
sqlserver.resource_pool.disk.throttled.write.rate:
enabled: true
sqlserver.table.count:
enabled: true
sqlserver.transaction.delay:
enabled: true
sqlserver.transaction.mirror_write.rate:
enabled: true
sqlserver.transaction.rate:
enabled: true
sqlserver.transaction.write.rate:
enabled: true
sqlserver.transaction_log.flush.data.rate:
enabled: true
sqlserver.transaction_log.flush.rate:
enabled: true
sqlserver.transaction_log.flush.wait.rate:
enabled: true
sqlserver.transaction_log.growth.count:
enabled: true
sqlserver.transaction_log.shrink.count:
enabled: true
sqlserver.transaction_log.usage:
enabled: true
sqlserver.user.connection.count:
enabled: true
query_sample_collection:
enabled: false
max_rows_per_query: 1450
top_query_collection:
enabled: false
lookback_time: 60
max_query_sample_count: 1000
top_query_count: 200
service:
pipelines:
metrics/sqlserver:
receivers:
- sqlserver
exporters:
- debug
telemetry:
metrics:
level: normal
readers:
- pull:
exporter:
prometheus:
host: 0.0.0.0
port: 8888
Log output
2025-04-02T11:32:17.283-0400 info [email protected]/service.go:197 Setting up own telemetry...
2025-04-02T11:32:17.283-0400 info builders/builders.go:26 Development component. May change in the future.
2025-04-02T11:32:17.283-0400 info [email protected]/service.go:264 Starting otelcol-contrib... {"Version": "0.123.1", "NumCPU": 8}
2025-04-02T11:32:17.283-0400 info extensions/extensions.go:41 Starting extensions...
2025-04-02T11:32:17.967-0400 info [email protected]/service.go:287 Everything is ready. Begin running and processing data.
2025-04-02T11:32:19.067-0400 error [email protected]/obs_metrics.go:61 Error scraping metrics {"error": "failed to parse valueKey for row 330: strconv.ParseInt: parsing \"2.082944e+06\": invalid syntax in Free Space in tempdb (KB)"}
go.opentelemetry.io/collector/scraper/scraperhelper.wrapObsMetrics.func1
go.opentelemetry.io/collector/scraper/[email protected]/obs_metrics.go:61
go.opentelemetry.io/collector/scraper.ScrapeMetricsFunc.ScrapeMetrics
go.opentelemetry.io/collector/[email protected]/metrics.go:24
go.opentelemetry.io/collector/scraper/scraperhelper.scrapeMetrics
go.opentelemetry.io/collector/scraper/[email protected]/controller.go:256
go.opentelemetry.io/collector/scraper/scraperhelper.NewMetricsController.func1
go.opentelemetry.io/collector/scraper/[email protected]/controller.go:228
go.opentelemetry.io/collector/scraper/scraperhelper.(*controller[...]).startScraping.func1
go.opentelemetry.io/collector/scraper/[email protected]/controller.go:171
Additional context
No response