Skip to content

chore: add delta temporality into local otel setup#876

Open
ferhatelmas wants to merge 1 commit intomasterfrom
ferhat/delta
Open

chore: add delta temporality into local otel setup#876
ferhatelmas wants to merge 1 commit intomasterfrom
ferhat/delta

Conversation

@ferhatelmas
Copy link
Member

What kind of change does this PR introduce?

chore

What is the current behavior?

Delta metrics aren't supported in local otel collector.

What is the new behavior?

It's supported.
Bump version otel collector to have deltatocumulative processor (what prom supports).
Rename old grafana dashboard to have distinct uid so that they don't override each other.

Additional context

Might want to clean up pull based metrics later on.

@ferhatelmas ferhatelmas requested a review from a team as a code owner February 26, 2026 12:49
@coderabbitai
Copy link

coderabbitai bot commented Feb 26, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro

Cache: Disabled due to Reviews > Disable Cache setting

Disabled knowledge base sources:

  • Linear integration is disabled

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 3af21b3 and 7b1f662.

📒 Files selected for processing (4)
  • .docker/docker-compose-monitoring.yml
  • .env.sample
  • monitoring/grafana/dashboards/storage.json
  • monitoring/otel/config/otel-collector-config.yml
🚧 Files skipped from review as they are similar to previous changes (1)
  • .env.sample

📝 Walkthrough

Summary by CodeRabbit

  • Chores

    • Updated OpenTelemetry Collector to a newer release.
    • Switched metrics temporality to DELTA and disabled Prometheus metrics by default.
    • Added delta-to-cumulative processing in the metrics pipeline.
  • Documentation

    • Renamed monitoring dashboard to indicate pull-based metric collection.

Walkthrough

This PR updates OpenTelemetry monitoring: the otel-collector image is bumped to otel/opentelemetry-collector-contrib:0.146.1, the collector config adds a deltatocumulative processor (with max_stale and max_streams) and inserts it into the metrics/otel pipeline, .env.sample sets PROMETHEUS_METRICS_ENABLED=false and adds OTEL_METRICS_TEMPORALITY=DELTA, and the Grafana storage dashboard title and uid are updated to indicate pull-based OTel metrics.

Sequence Diagram(s)

sequenceDiagram
  participant App as Application
  participant OTEL as OTEL Collector
  participant Prom as Prometheus
  participant Graf as Grafana

  App->>OTEL: emit metrics (delta)
  OTEL->>OTEL: deltatocumulative processor (convert delta -> cumulative)
  OTEL->>Prom: expose metrics endpoint
  Prom->>OTEL: scrape metrics
  Prom->>Graf: serve metrics for dashboards
  Graf->>Graf: display "Storage API - OTel Metrics - Pull"
Loading

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@monitoring/otel/config/otel-collector-config.yml`:
- Around line 229-230: The processors list references a name mismatch: the
configuration uses "delta_to_cumulative" but the processor is defined as
"deltatocumulative"; update the processors array entry so the referenced
processor name exactly matches the defined symbol (replace "delta_to_cumulative"
with "deltatocumulative" or rename the processor definition to
"delta_to_cumulative") so the processors list (memory_limiter,
deltatocumulative, transform/add_resource_attributes, metricstransform/host,
batch/metrics) matches exactly.

ℹ️ Review info

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro

Cache: Disabled due to Reviews > Disable Cache setting

Disabled knowledge base sources:

  • Linear integration is disabled

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 3327b2e and 7ed740b.

📒 Files selected for processing (4)
  • .docker/docker-compose-monitoring.yml
  • .env.sample
  • monitoring/grafana/dashboards/storage.json
  • monitoring/otel/config/otel-collector-config.yml

Signed-off-by: ferhat elmas <elmas.ferhat@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants