Details
-
Improvement
-
Status: Open
-
Normal
-
Resolution: Unresolved
-
None
-
None
-
Semantic
-
Normal
Description
This proposal is part of an effort to introduce bespoke Sidecar APIs to support key operational functionality currently managed through nodetool commands. Introducing these APIs offers several benefits:
- Strong Contract Definition: APIs provide a well-defined contract for both request and response structures, reducing errors in operational tooling by eliminating the need to parse command results.
- Error Handling: A clear response contract allows for meaningful error messages to be communicated to clients, without exposing internal implementation details.
- Input Validation: APIs can incorporate input validation to enhance security by protecting against command injection attacks.
- Version Compatibility: By exposing a standardized interface, APIs ensure compatibility across different Cassandra versions, through the sidecar’s abstraction.
- Access Control: APIs enable fine-grained access control, leveraging permissions and roles associated with client identities for precise authorization.
This specific task introduces a endpoint that vends stream statistics, equivalent to a summary of a subset of the `nodetool netstats` dataset, specifically the aggregation of files and bytes sent/received and progress across sessions.
For example, this is especially useful to determine the streaming status of nodes during leaving/replacement cases.
Attachments
Issue Links
- links to