Use Case
This value appears prominently at the top of the metric tile as a high-level indicator of system load.
CREATE OR REPLACE FUNCTION get_rh_summary_json RETURN CLOB IS
l_json CLOB;
BEGIN
WITH summary AS (
SELECT ROUND(AVG((m.value / 100) / get_cpu_count()), 2) AS avg_cpu_utilization
FROM v$metric_history m
WHERE m.metric_name = 'CPU Usage Per Sec'
)
SELECT JSON_ARRAYAGG(
JSON_OBJECT(
'name' VALUE 'Avg CPU Utilization (Last Hour)',
'value' VALUE avg_cpu_utilization,
'valueFormat' VALUE 'PC'
)
)
INTO l_json
FROM summary;
RETURN l_json;
END get_summary_json;
/