Yanghanrui666 opened a new issue, #6118:
URL: https://github.com/apache/rocketmq-dashboard/issues/6118

   ### Before Creating the Feature Request
   
   - [x] I have searched the [open 
issues](https://github.com/apache/rocketmq-dashboard/issues) and believe this 
is not a duplicate.
   
   - [x] I understand that a non-trivial feature is agreed in this issue first: 
the design is discussed here before a pull request is sent, as described in 
CONTRIBUTING.md.
   
   
   ### Is Your Feature Request Related to a Problem?
   
   Studio can already test one data source at a time (`Settings -> Data sources 
-> Test`), but an operator who has to verify a whole list - after a change 
window, when onboarding an environment, or when triaging a batch of data 
sources behind alerts - has to repeat that per row. The checks are independent 
and network-bound, so doing them by hand is slow, and the outcome is not 
captured anywhere: there is no single view that says which collected endpoints 
are reachable right now.
   
   ### Describe the Solution You'd Like
   
   A "check all" action on the Data sources page that runs the existing 
per-source connectivity test over the rows the table is currently showing, and 
reports the outcome in a drawer.
   
   - **Scope is what the operator can see.** The currently filtered list (same 
search and type filter as the table), de-duplicated by data source key - not 
every row in the database behind the operator's back.
   - **Bounded concurrency.** At most 3 checks in flight, so a long list cannot 
open one connection per row.
   - **No invented credentials.** Sources whose auth type needs runtime 
credentials (`Basic Auth`, `Bearer Token`) are reported as skipped with a 
reason, and no request is sent for them. The probe only reuses what the 
existing single-source test already sends.
   - **Per-row result.** Name, type, URL, outcome (success / failure / 
skipped), latency in ms, instance count, and the message the endpoint returned.
   - **Filter and export.** The drawer can filter by outcome and export the 
current result set as CSV.
   - **i18n.** Every new string has both en-US and zh-CN entries.
   
   Frontend only: it reuses the existing `testDataSource` API and the existing 
`authNeedsSecret` helper. No new backend endpoint, and no new dependency.
   
   ### Describe Alternatives You've Considered
   
   - **Repeat the single-row test by hand.** No aggregate view, no export, and 
no record of what was checked.
   - **A server-side batch endpoint.** Rejected for now: it introduces a 
long-running job, a new endpoint, and a place to hold credentials for sources 
the operator did not type into the form. The browser-side version reuses the 
existing request path and the credentials the operator already entered.
   - **Checking every data source in the database instead of the filtered 
list.** Rejected because it acts on rows the operator cannot see.
   
   ### Additional Context
   
   - Prior shape: #3210 proposed this capability, but it was filed from an 
account whose contributions are no longer reviewed. #5720 was a 245-line drawer 
PR for it and was closed with the request to agree on the design first. This 
issue is that design discussion; nothing is submitted against it yet.
   - The results table will follow the repo's table-width guidance 
(`tableScrollX(columns)` from `web/src/utils/table.ts`), and the drawer's 
neutral description will use the shared `InfoBanner` component.
   
   ### Are You Willing to Implement It?
   
   - [x] Yes, I am willing to submit a pull request once the design is agreed.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to