Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

soroban-rpc: Add opt-in remote metrics push so we can collect usage data #35

Open
paulbellamy opened this issue Mar 10, 2023 · 1 comment

Comments

@paulbellamy
Copy link
Contributor

paulbellamy commented Mar 10, 2023

What problem does your feature solve?

As SDF, we would like to know how the deployed soroban-rpc instances are running. What kind of resources they have available, and what sort of load they are dealing with.

What would you like to see?

An opt-in option for operators, which would periodically push their metrics to a remote target (e.g. a prometheus pushgateway server we're running to collect them).

We probably want to use: https://pkg.go.dev/github.com/prometheus/client_golang/prometheus/push

We should be able to tell:

  • Total number of RPC instances by
    • network (futurenet, testnet, mainnet)
    • locale
  • Top endpoints by request signature (ie: /getEvents, /getLedgerData)
  • Average request latency by endpoint
  • Total unique Users per RPC instance
  • Top error codes and failures
  • Pseudorandom identifier that would help us to identify the rpc instance
  • Instance uptime
  • Duration
  • Request rate
  • errors

Open questions?

  • How can we prevent/discern corrupt/false data being sent?
@paulbellamy
Copy link
Contributor Author

This is the metrics equivalent of: #34

@stellarsaur stellarsaur transferred this issue from stellar/stellar-cli Feb 1, 2024
@mollykarcher mollykarcher moved this from Backlog to To Do in Platform Scrum Jan 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: To Do
Development

No branches or pull requests

1 participant