Yanghanrui666 opened a new pull request, #5720:
URL: https://github.com/apache/rocketmq-dashboard/pull/5720

   Fixes #3210
   
   ### What
   
   Adds an on-demand **Data source connectivity check** to Settings -> Data 
sources so an operator can verify a whole instance list in one pass instead of 
clicking "test" row by row.
   
   ### How
   
   - **Bounded concurrency (3 in flight).** Checks are scheduled through a 
small worker pool, so a large data source list cannot open an unbounded number 
of parallel requests.
   - **Credentialed data sources are skipped, never sent empty.** `Basic Auth` 
and `Bearer Token` rows are reported as skipped with an explicit reason and no 
request is issued, so no empty or partial credential reaches the backend.
   - **Uses the full filtered list, not just the current page.** The same 
search / type filters as the table are applied first, then rows are 
de-duplicated by `key`.
   - **Per-row results.** Success / failure / skipped, latency in ms, and the 
instance count reported by the probe.
   - **Filter, summary and CSV export.** Results can be filtered by outcome and 
exported to CSV for offline triage.
   - **i18n.** Every new string is added for both `en-US` and `zh-CN`.
   
   ### Files
   
   | File | Change |
   | --- | --- |
   | `web/src/components/DataSourceConnectivityDrawer.tsx` | New drawer: result 
table, outcome filter, summary, CSV export |
   | `web/src/utils/dataSourceConnectivityBatch.ts` | Pure scheduling / 
aggregation helpers |
   | `web/src/utils/dataSourceConnectivityBatch.test.ts` | Unit tests for the 
helpers |
   | `web/src/pages/settings/DataSourceTab.tsx` | Entry point and wiring |
   | `web/src/i18n/translations.ts` | zh-CN / en-US strings |
   
   ### Tests
   
       npx tsc -b
       npx eslint src/components/DataSourceConnectivityDrawer.tsx 
src/utils/dataSourceConnectivityBatch.ts 
src/utils/dataSourceConnectivityBatch.test.ts 
src/pages/settings/DataSourceTab.tsx src/i18n/translations.ts
       npm test -- src/utils/dataSourceConnectivityBatch.test.ts 
src/pages/settings/__tests__/DataSourceTab.test.tsx --pool=threads 
--maxWorkers=1
   
   `tsc` clean, `eslint` clean, targeted run 2 files / 23 tests passed (11 for 
the new helper suite). No full-suite run was attempted.
   
   ### Notes for reviewers
   
   - No new dependency.
   - The results table follows the repo table-width guidance 
(`tableScrollX(columns)` from `web/src/utils/table.ts`) instead of a hardcoded 
scroll width.


-- 
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