Skip to content

Add per-RPC-method stats (weka_rpc_stats metric)#87

Open
shazad-weka wants to merge 1 commit into
weka:masterfrom
shazad-weka:shazad/rpc-stats-per-method
Open

Add per-RPC-method stats (weka_rpc_stats metric)#87
shazad-weka wants to merge 1 commit into
weka:masterfrom
shazad-weka:shazad/rpc-stats-per-method

Conversation

@shazad-weka

Copy link
Copy Markdown

Summary

  • Adds get_rpc_stats() to collector.py using the same param pattern as the existing get_fs_io_stats() — calls stats_show with param={'method': '*'} and per_process=True
  • Exposes results as a new weka_rpc_stats Prometheus metric with labels: cluster, stat, method, unit
  • Config-driven via a new rpc_stats: section in export.yml (same format as existing stats: section)

Equivalent CLI command:
```
weka stats --show-internal --stat RPC_ROUNDTRIP_AVG --interval 60 --param="method:*" -s value --per-process
```

Customer configuration

Add to export.yml and restart the exporter:

```yaml
rpc_stats:
RPC_ROUNDTRIP_AVG: microsecs
RPC_RATE: count
```

Test plan

  • Verify weka_rpc_stats appears in /metrics with method label populated per RPC method
  • Confirm RPC_ROUNDTRIP_AVG values match weka stats --param="method:*" output
  • Confirm no regression to existing weka_stats and weka_fs_stats metrics
  • Build release binary on Linux x86_64 (local macOS build in this branch is for dev only)

🤖 Generated with Claude Code

Adds get_rpc_stats() following the same pattern as get_fs_io_stats(),
calling stats_show with param={'method': '*'} and per_process=True to
collect RPC stats broken down by method name.

Stats are config-driven via a new rpc_stats: section in export.yml.
Results are exposed as the weka_rpc_stats Prometheus metric with labels:
cluster, stat, method, unit.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.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.

1 participant