Metric Range Export — Wide (Pivoted) CSV (csv)
The same 90 samples pivoted to one column per service and one row per timestamp — the layout a spreadsheet chart expects. Paired with the long-format export so a reshape can be scored in both directions.
timestamp,iso_time,checkout-api,cart-api,inventory-api
1773737132,2026-03-17T08:45:32.000Z,0.166204,0.020645,0.05375
1773737192,2026-03-17T08:46:32.000Z,0.141441,0.016746,0.031168
1773737252,2026-03-17T08:47:32.000Z,0.136772,0.019394,0.032579
1773737312,2026-03-17T08:48:32.000Z,0.168444,0.024716,0.032136
1773737372,2026-03-17T08:49:32.000Z,0.127622,0.006921,0.043324
1773737432,2026-03-17T08:50:32.000Z,0.153412,0.028983,0.029208
1773737492,2026-03-17T08:51:32.000Z,0.154508,0.019536,0.035207
1773737552,2026-03-17T08:52:32.000Z,0.106735,0.015584,0.035375
1773737612,2026-03-17T08:53:32.000Z,0.126495,0.024851,0.033498
1773737672,2026-03-17T08:54:32.000Z,0.082202,0.021237,0.028941
1773737732,2026-03-17T08:55:32.000Z,0.155494,0.020219,0.038266
1773737792,2026-03-17T08:56:32.000Z,0.139561,0.017253,0.041606
1773737852,2026-03-17T08:57:32.000Z,0.135436,0.015973,0.05683
1773737912,2026-03-17T08:58:32.000Z,0.154995,0.018263,0.06319
1773737972,2026-03-17T08:59:32.000Z,0.151866,0.010303,0.028144
1773738032,2026-03-17T09:00:32.000Z,0.150899,0.028529,0.026407
1773738092,2026-03-17T09:01:32.000Z,0.128083,0.03657,0.050375
1773738152,2026-03-17T09:02:32.000Z,0.138342,0.009124,0.035262
1773738212,2026-03-17T09:03:32.000Z,0.139304,0.026944,0.034662
1773738272,2026-03-17T09:04:32.000Z,0.164749,0.016526,0.041091
1773738332,2026-03-17T09:05:32.000Z,0.191214,0.015399,0.028125
1773738392,2026-03-17T09:06:32.000Z,0.143099,0.024689,0.034979
1773738452,2026-03-17T09:07:32.000Z,0.189592,0.017371,0.029959
1773738512,2026-03-17T09:08:32.000Z,0.157208,0.036016,0.017794
1773738572,2026-03-17T09:09:32.000Z,0.148432,0.016722,0.033687
1773738632,2026-03-17T09:10:32.000Z,0.134132,0.020281,0.038488
1773738692,2026-03-17T09:11:32.000Z,0.160257,0.02679,0.03132
1773738752,2026-03-17T09:12:32.000Z,0.127851,0.020753,0.059786
1773738812,2026-03-17T09:13:32.000Z,0.136537,0.019957,0.030447
1773738872,2026-03-17T09:14:32.000Z,0.133453,0.014332,0.032025
Specifications
- Rows
- 30
- Columns
- 5
- Layout
- wide/pivoted
- Series
- 3
- Step Seconds
- 60
- Same Data As
- long-format twin
Testing contract
Reference control- Scenario
- Melt the wide export back to long form and diff against the long twin.
- Expected result
- 30 rows melt to 90 observations that match the long export row for row, including the ISO timestamp column.
What is a .csv file?
CSV (Comma-Separated Values) is a plain-text tabular format where rows are lines and fields are separated by commas, with quoting rules for values that contain delimiters, quotes, or newlines. It has no formal type system and depends on encoding and dialect conventions. It is the most portable format for tabular data exchange.
How to use this file
Use an example CSV to test parsers against quoting and embedded-delimiter edge cases, header handling, encoding detection, and import pipelines into databases or spreadsheets.
How to use this file for testing
“Metric Range Export — Wide (Pivoted) CSV (csv)” is a deterministic Novus Examples fixture for Observability, CSV parsing, Time-series data. Structured and plain-text telemetry with known timestamps, levels, request identifiers, and error states for testing log ingestion, correlation, dashboards, and alert pipelines.
Documented properties for this file: 30 rows · 5 columns. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
Telemetry fixtures use fixed trace IDs, span IDs, and timestamps so ingestion is reproducible run to run. Point your collector, parser, or query layer at the file and assert the documented span tree, metric families, or severity mix; service and host names are invented.
Code examples
import pandas as pd
df = pd.read_csv("metric-range-export-wide.csv")
print(df.head())
print(df.dtypes)Related files
- csvSLO Error Budget — 28-Day Burndown Export (csv)A day-by-day burndown of the availability SLO defined in the OpenSLO fixture: achieved ratio, budget consumed and remaining, and one-hour and six-hour burn rates. Consumption is monotonic across the window, which is the invariant a burn-rate chart must not violate.

- promOpenMetrics — Full Document with UNIT, info and stateset (prom)A complete OpenMetrics document — the _total and _created series a counter really has, UNIT metadata, an info metric carrying build metadata and a stateset with exactly one active state — terminated by the mandatory # EOF. This is what the exposition format became once it was standardised.

- promOpenMetrics — Histogram Exemplars Linking to the Trace Fixtures (prom)Histogram buckets carrying exemplars whose trace_id and span_id resolve against the OTLP trace fixtures in this category — the exact-to-example link that turns a latency spike on a graph into a specific request. Five exemplars, each with its own observed value and timestamp.

- jsonOTLP Metrics — Counter Reset on Process Restart (json)A monotonic counter that drops from 94,880 to 1,120 when its process restarts, with startTimeUnixNano changing at exactly that point to mark the reset. Rate calculations that subtract consecutive values without checking the start timestamp produce a large negative rate here.

- jsonOTLP Metrics — Cumulative Temporality (json)Cumulative sums whose start timestamp stays fixed across exports, so every point is the running total since process start. Paired with a delta-temporality twin covering the same window, because converting between the two is a stateful operation that a bridge must get right in both directions.

- jsonOTLP Metrics — Delta Temporality (json)The same 24 hours of cart updates as six delta points, each with its own start and end timestamp covering a four-hour window. The delta twin of the cumulative fixture: summing these must reproduce the cumulative total exactly, and a gap or overlap in the windows is the failure to catch.

Generated by generation/observability.py. Free for any use, no attribution required — license.