Skip to content

Commit ae391b2

Browse files
committed
RHIDP-12524: Platform engineer define, name, and view aggregated KPIs for homepage
1 parent ff9e623 commit ae391b2

4 files changed

Lines changed: 129 additions & 1 deletion

File tree

assemblies/observability_evaluate-project-health-using-scorecards/assembly-monitor-collective-health-across-components.adoc

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,18 @@ ifdef::context[:parent-context: {context}]
44
[id="monitor-collective-health-across-components_{context}"]
55
= Monitor collective health across components
66

7-
87
:context: monitor-collective-health-across-components
98
[role="_abstract"]
109
As an administrator, you can use the Scorecard plugin to view the collective technical health across multiple owned applications or components. This consolidated view helps you identify high-level health trends and risks across complex projects.
1110

1211
include::../modules/observability_evaluate-project-health-using-scorecards/con-monitor-portfolio-health-with-aggregated-kpis.adoc[leveloffset=+1]
1312

13+
include::../modules/observability_evaluate-project-health-using-scorecards/con-aggregated-kpis-in-the-scorecard.adoc[leveloffset=+1]
14+
15+
include::../modules/observability_evaluate-project-health-using-scorecards/proc-configure-aggregated-kpis-for-the-scorecard.adoc[leveloffset=+1]
16+
17+
include::../modules/observability_evaluate-project-health-using-scorecards/proc-configure-aggregated-scorecard-kpis-to-monitor-the-health-of-multiple-applications.adoc[leveloffset=+1]
18+
1419
include::../modules/observability_evaluate-project-health-using-scorecards/proc-configure-portfolio-health-on-a-customizable-home-page.adoc[leveloffset=+1]
1520

1621
include::../modules/observability_evaluate-project-health-using-scorecards/proc-configure-portfolio-health-on-a-read-only-home-page.adoc[leveloffset=+1]
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
:_mod-docs-content-type: CONCEPT
2+
3+
[id="aggregated-kpis-in-the-scorecard_{context}"]
4+
= Aggregated KPIs in the scorecard
5+
6+
[role="_abstract"]
7+
Monitor the technical health and regulatory compliance of your infrastructure by using aggregated Key Performance Indicators (KPIs). These KPIs summarize complex data from multiple entities into a high-level overview, allowing you to identify system risks quickly.
8+
9+
Aggregated KPIs allow engineering and product managers to monitor the collective status of all components or applications owned by a specific group in the Software Catalog. Instead of manually inspecting individual service scorecards, managers can use these metrics to identify broad trends or risks within their portfolio.
10+
11+
Aggregated metrics rely on the `owner` field defined in the Software Catalog entities to determine which data points to include. The scorecard plugin performs scheduled batch processing to calculate these values; therefore, aggregated data is not updated in real-time.
12+
13+
The plugin supports simple aggregation logic, such as summing values (SUM) or calculating averages (AVERAGE) across entities.
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
:_mod-docs-content-type: PROCEDURE
2+
3+
[id="configure-aggregated-kpis-for-the-scorecard_{context}"]
4+
= Configure aggregated KPIs for the scorecard
5+
6+
[role="_abstract"]
7+
Define aggregated Key Performance Indicators (KPIs) in your configuration to provide a consolidated view of team or group health. Aggregating KPIs allows you to summarize technical metrics into high-level insights for management and stakeholders.
8+
9+
.Prerequisites
10+
* The scorecard plugin is installed and configured in your Red Hat Developer Hub instance.
11+
* You have identified the `metricId` and the `owner` group from the Software Catalog you wish to aggregate.
12+
13+
.Procedure
14+
15+
. Access your `app-config.yaml` file.
16+
17+
. Navigate to the `scorecard` section and add an `aggregations` block.
18+
19+
. Update the configuration to create a homepage card that summarizes a specific metric for a team portfolio. The following example calculates the total bug count for all components owned by Team Alpha:
20+
+
21+
[source,yaml]
22+
----
23+
scorecard:
24+
aggregations:
25+
- id: team-alpha-total-bugs
26+
name: "Total Open Bugs (Team Alpha)"
27+
description: "Aggregated sum of Jira bugs across all Team Alpha components"
28+
type: sum
29+
metricId: jira.open_bugs
30+
selector:
31+
owner: group:default/team-alpha
32+
----
33+
+
34+
where:
35+
+
36+
`scorecard.aggregations.id`:: Specifies a unique identifier for the aggregated KPI.
37+
`scorecard.aggregations.name`:: Specifies the name displayed on the homepage card.
38+
`scorecard.aggregations.description`:: Specifies A brief explanation of what the metric represents.
39+
`scorecard.aggregations.type`:: Specifies the aggregation function. Supported values include `sum` and `average`.
40+
`scorecard.aggregations.metricId`:: Specifies the ID of the source metric from individual scorecards.
41+
`scorecard.aggregations.selector`:: Specifies the criteria used to group entities, typically defined by `owner`.
42+
43+
. Save the configuration and restart your Red Hat Developer Hub instance. [cite: 5360, 3931]
44+
45+
.Verification
46+
47+
. Navigate to the {product-short} homepage.
48+
49+
. Verify that the new aggregated card is displayed with the defined name and calculated value.
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
:_mod-docs-content-type: PROCEDURE
2+
3+
[id="configure-aggregated-scorecard-kpis-to-monitor-the-health-of-multiple-applications_{context}"]
4+
= Configure aggregated Scorecard KPIs to monitor the health of multiple applications
5+
6+
[role="_abstract"]
7+
Configure the {product} Scorecard plugin to enable drill-down capabilities. This allows you to investigate the specific catalog entities and metrics that contribute to aggregated KPI scores, helping to identify and troubleshoot failing applications across a portfolio.
8+
9+
.Prerequisites
10+
11+
* You have installed {product}.
12+
* You have configured at least one Scorecard metric provider, such as GitHub or Jira.
13+
* You have configured aggregated KPIs.
14+
15+
.Procedure
16+
17+
. Define the metric ID for drill-down in your `app-config.yaml` file.
18+
+
19+
Drill-downs are metric-scoped. Even when you click an aggregated KPI, the system requires the underlying `metricId` to query the catalog for related entities.
20+
+
21+
[source,yaml]
22+
----
23+
jira:
24+
product: cloud
25+
baseUrl: ${JIRA_URL}
26+
token: ${JIRA_TOKEN}
27+
jira:
28+
product: cloud
29+
baseUrl: ${JIRA_URL}
30+
token: ${JIRA_TOKEN}
31+
scorecard:
32+
plugins:
33+
jira:
34+
open_issues:
35+
schedule:
36+
frequency: { minutes: 5 }
37+
timeout: { minutes: 10 }
38+
initialDelay: { seconds: 10 }
39+
----
40+
41+
. Configure Role-Based Access Control (RBAC) permissions for the relevant user roles to enable scorecard access.
42+
43+
.. Open your RBAC policy file, typically `rbac-policy.csv`.
44+
45+
.. Add the following permission to read both scorecard metrics and catalog entities.
46+
+
47+
[source,csv]
48+
----
49+
p, role:default/team_lead, scorecard.metric.read, read, allow
50+
p, role:default/team_lead, catalog.entity.read, read, allow
51+
----
52+
53+
.Verification
54+
55+
.. Navigate to the {product} Home Page.
56+
57+
.. Click an aggregated KPI tile, such as *Critical Jira Issues*.
58+
59+
.. Verify that a list of individual catalog entities appears, showing the components contributing to that aggregate score.
60+
+
61+
If the list does not appear, ensure you are using the latest version of the {product-very-short} plugins.

0 commit comments

Comments
 (0)