monitoring(testing): add fallbacks for problematic-test trend queries

This commit is contained in:
jenkins 2026-04-20 08:37:26 -03:00
parent f02db9801c
commit c5b1302ff6
3 changed files with 8 additions and 6 deletions

View File

@ -3065,12 +3065,14 @@ def build_jobs_dashboard():
) )
return f'({core}) or on(suite) (0 * ({suite_universe}))' return f'({core}) or on(suite) (0 * ({suite_universe}))'
problematic_tests_history = ( problematic_tests_history_core = (
f'topk(12, sum by (suite, test) (increase(platform_quality_gate_test_case_result{{suite=~"{suite_var}",status="failed",{exported}}}[$__interval])))' f'topk(12, sum by (suite, test) (increase(platform_quality_gate_test_case_result{{suite=~"{suite_var}",status="failed",{exported}}}[$__interval])))'
) )
worst_test_per_suite = ( problematic_tests_history = f"({problematic_tests_history_core}) or on() vector(0)"
worst_test_per_suite_core = (
f'topk by (suite) (1, sum by (suite, test) (increase(platform_quality_gate_test_case_result{{suite=~"{suite_var}",status="failed",{exported}}}[30d])))' f'topk by (suite) (1, sum by (suite, test) (increase(platform_quality_gate_test_case_result{{suite=~"{suite_var}",status="failed",{exported}}}[30d])))'
) )
worst_test_per_suite = f"({worst_test_per_suite_core}) or on() vector(0)"
selected_test_pass_fail = [ selected_test_pass_fail = [
{ {
"refId": "A", "refId": "A",

View File

@ -2060,7 +2060,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "topk(12, sum by (suite, test) (increase(platform_quality_gate_test_case_result{suite=~\"${suite:regex}\",status=\"failed\",exported_job=\"platform-quality-ci\"}[$__interval])))", "expr": "(topk(12, sum by (suite, test) (increase(platform_quality_gate_test_case_result{suite=~\"${suite:regex}\",status=\"failed\",exported_job=\"platform-quality-ci\"}[$__interval])))) or on() vector(0)",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}} \u00b7 {{test}}" "legendFormat": "{{suite}} \u00b7 {{test}}"
} }
@ -2153,7 +2153,7 @@
}, },
"targets": [ "targets": [
{ {
"expr": "sort_desc(topk by (suite) (1, sum by (suite, test) (increase(platform_quality_gate_test_case_result{suite=~\"${suite:regex}\",status=\"failed\",exported_job=\"platform-quality-ci\"}[30d]))))", "expr": "sort_desc((topk by (suite) (1, sum by (suite, test) (increase(platform_quality_gate_test_case_result{suite=~\"${suite:regex}\",status=\"failed\",exported_job=\"platform-quality-ci\"}[30d])))) or on() vector(0))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}} \u00b7 {{test}}", "legendFormat": "{{suite}} \u00b7 {{test}}",
"instant": true "instant": true

View File

@ -2069,7 +2069,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "topk(12, sum by (suite, test) (increase(platform_quality_gate_test_case_result{suite=~\"${suite:regex}\",status=\"failed\",exported_job=\"platform-quality-ci\"}[$__interval])))", "expr": "(topk(12, sum by (suite, test) (increase(platform_quality_gate_test_case_result{suite=~\"${suite:regex}\",status=\"failed\",exported_job=\"platform-quality-ci\"}[$__interval])))) or on() vector(0)",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}} \u00b7 {{test}}" "legendFormat": "{{suite}} \u00b7 {{test}}"
} }
@ -2162,7 +2162,7 @@ data:
}, },
"targets": [ "targets": [
{ {
"expr": "sort_desc(topk by (suite) (1, sum by (suite, test) (increase(platform_quality_gate_test_case_result{suite=~\"${suite:regex}\",status=\"failed\",exported_job=\"platform-quality-ci\"}[30d]))))", "expr": "sort_desc((topk by (suite) (1, sum by (suite, test) (increase(platform_quality_gate_test_case_result{suite=~\"${suite:regex}\",status=\"failed\",exported_job=\"platform-quality-ci\"}[30d])))) or on() vector(0))",
"refId": "A", "refId": "A",
"legendFormat": "{{suite}} \u00b7 {{test}}", "legendFormat": "{{suite}} \u00b7 {{test}}",
"instant": true "instant": true