Skip to content

Conversation

@kwannoel
Copy link
Contributor

@kwannoel kwannoel commented Nov 10, 2025

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.

What's changed and what's your intention?

Provide relation busy rate. We take all the fragments of a relation and find the max busy rate amongst them. That will be the busy rate of the relation. We use topk so we can also provide the fragment label alongside the relation.

Screenshot 2025-11-10 at 10.47.01 PM.png

Checklist

  • I have written necessary rustdoc comments.
  • I have added necessary unit tests and integration tests.
  • I have added test labels as necessary.
  • I have added fuzzing tests or opened an issue to track them.
  • My PR contains breaking changes.
  • My PR changes performance-critical code, so I will run (micro) benchmarks and present the results.
  • I have checked the Release Timeline and Currently Supported Versions to determine which release branches I need to cherry-pick this PR into.

Documentation

  • My PR needs documentation updates.
Release note

Copy link
Contributor Author

kwannoel commented Nov 10, 2025

@kwannoel kwannoel changed the title add relation busy rate to dashboard feat(metrics): add relation busy rate to dashboard Nov 10, 2025
@github-actions github-actions bot added type/feature Type: New feature. and removed Invalid PR Title labels Nov 10, 2025
@kwannoel kwannoel marked this pull request as ready for review November 10, 2025 14:50
Copilot finished reviewing on behalf of kwannoel November 11, 2025 07:51
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds relation-level busy rate metrics to the Grafana dashboard by aggregating actor busy rates per materialized view. The change refactors existing actor busy rate logic into reusable functions and introduces new dashboard panels showing relation busy rates at multiple time intervals.

Key Changes

  • Refactored _actor_busy_rate_alt_target into separate _actor_busy_rate_expr and _actor_busy_rate_target functions for code reuse
  • Added _relation_busy_rate_expr and _relation_busy_rate_target functions to compute busy rates aggregated by relation
  • Added four new dashboard panels displaying relation busy rates with different time windows ($__rate_interval, 10m, 5m, 3m)

@kwannoel kwannoel changed the base branch from kwannoel/meta-dashboard to graphite-base/23730 November 12, 2025 04:30
@kwannoel kwannoel force-pushed the kwannoel/relation-busy-rate branch from 64ccfcc to e05bf36 Compare November 12, 2025 04:31
@kwannoel kwannoel force-pushed the graphite-base/23730 branch from 5934484 to d7aada1 Compare November 12, 2025 04:31
@kwannoel kwannoel changed the base branch from graphite-base/23730 to kwannoel/meta-dashboard November 12, 2025 04:31
Base automatically changed from kwannoel/meta-dashboard to main November 12, 2025 07:10
@kwannoel kwannoel force-pushed the kwannoel/relation-busy-rate branch from e05bf36 to f4eaca9 Compare November 12, 2025 07:17
@kwannoel kwannoel force-pushed the kwannoel/relation-busy-rate branch from f4eaca9 to 52b5289 Compare November 12, 2025 07:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type/feature Type: New feature.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants