This is an automated email from the ASF dual-hosted git repository.
zqr10159 pushed a commit to branch 2.0.0
in repository https://gitbox.apache.org/repos/asf/hertzbeat.git
The following commit(s) were added to refs/heads/2.0.0 by this push:
new 690700b094 Preserve evidence drilldown filters in signal handoffs
690700b094 is described below
commit 690700b094c1a86e5c7d3294330983c9ec765edc
Author: Logic <[email protected]>
AuthorDate: Tue Jun 9 19:30:06 2026 +0800
Preserve evidence drilldown filters in signal handoffs
---
web-next/lib/signal-dashboards.test.ts | 4 ++--
web-next/lib/signal-dashboards.ts | 8 ++++++++
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/web-next/lib/signal-dashboards.test.ts
b/web-next/lib/signal-dashboards.test.ts
index 410257aeed..78af0e2c9c 100644
--- a/web-next/lib/signal-dashboards.test.ts
+++ b/web-next/lib/signal-dashboards.test.ts
@@ -2198,7 +2198,7 @@ describe('signal dashboards API client', () => {
expect(buildSignalDashboardRuntimeEvidenceSourceHandoff('/trace/manage?view=list',
syncTooltip.rows[4], {
timeRange: { start: '1000', end: '3000' },
returnTo: '/dashboard?start=1000&end=3000'
-
})).toBe('/trace/manage?view=list&serviceName=checkout&serviceNamespace=payments&environment=prod&entityId=4200&entityType=service&entityName=Checkout+API&source=otlp&collector=collector-a&template=spring-boot&returnTo=%2Fdashboard%3Fstart%3D1000%26end%3D3000&start=1000&end=3000');
+
})).toBe('/trace/manage?view=list&serviceName=checkout&serviceNamespace=payments&resourceFilter=db.system%3Dpostgresql&environment=prod&entityId=4200&entityType=service&entityName=Checkout+API&source=otlp&collector=collector-a&template=spring-boot&returnTo=%2Fdashboard%3Fstart%3D1000%26end%3D3000&start=1000&end=3000');
expect(buildSignalDashboardRuntimeEvidenceSourceHandoff('/trace/manage?serviceName=payments',
syncTooltip.rows[2], {
timeRange: { start: '1000', end: '3000' },
returnTo: '/dashboard?start=1000&end=3000'
@@ -2206,7 +2206,7 @@ describe('signal dashboards API client', () => {
expect(buildSignalDashboardRuntimeEvidenceSourceHandoff('/trace/manage?view=list',
syncTooltip.rows[6], {
timeRange: { start: '1000', end: '3000' },
returnTo: '/dashboard?start=1000&end=3000'
-
})).toBe('/trace/manage?view=list&serviceName=checkout&serviceNamespace=payments&environment=prod&entityId=4200&entityType=service&entityName=Checkout+API&source=otlp&collector=collector-a&template=spring-boot&returnTo=%2Fdashboard%3Fstart%3D1000%26end%3D3000&start=1000&end=3000');
+
})).toBe('/trace/manage?view=list&serviceName=checkout&serviceNamespace=payments&operationName=POST+%2Fcheckout&environment=prod&entityId=4200&entityType=service&entityName=Checkout+API&source=otlp&collector=collector-a&template=spring-boot&returnTo=%2Fdashboard%3Fstart%3D1000%26end%3D3000&start=1000&end=3000');
expect(buildSignalDashboardRuntimeEvidenceSourceHandoff('/ingestion/otlp/metrics?query=cpu.usage',
syncTooltip.rows[3], {
timeRange: { start: '1000', end: '3000' },
returnTo: '/dashboard?start=1000&end=3000'
diff --git a/web-next/lib/signal-dashboards.ts
b/web-next/lib/signal-dashboards.ts
index 64f7d5ba3f..9320230601 100644
--- a/web-next/lib/signal-dashboards.ts
+++ b/web-next/lib/signal-dashboards.ts
@@ -3672,6 +3672,14 @@ export function
buildSignalDashboardRuntimeEvidenceSourceHandoff(
if (valuesBySource.serviceNamespace &&
!url.searchParams.get('serviceNamespace')) {
url.searchParams.set('serviceNamespace',
valuesBySource.serviceNamespace);
}
+ const normalizedResourceFilter = syncTooltipIdentifier(row.resourceFilter);
+ if (normalizedResourceFilter && (url.pathname === '/trace/manage' ||
url.pathname === '/log/manage') && !url.searchParams.get('resourceFilter')) {
+ url.searchParams.set('resourceFilter', normalizedResourceFilter);
+ }
+ const normalizedOperationName = syncTooltipIdentifier(row.operationName);
+ if (normalizedOperationName && url.pathname === '/trace/manage' &&
!url.searchParams.get('operationName')) {
+ url.searchParams.set('operationName', normalizedOperationName);
+ }
if (valuesBySource.environment && !url.searchParams.get('environment')) {
url.searchParams.set('environment', valuesBySource.environment);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]