The monitored database uses a lot of CPU, which is caused by a SQL query triggered by the database agent. The following query causes the high CPU usage:
select o.name segment_name,sum(value) + 0 seg_wait_time from sys.v_$segstat s, S YS.obj$ o where statistic_name = 'row lock waits' AND value > 0 and o.obj#=s.ob j# group by o.name
A SQL statement querying V$SEGSTAT consumes 50% of all of the resources on an Oracle version 12 cluster
SELECT count( * ) from V$SEGSTAT failed to return within 2 minutes.
This is an Oracle bug which can be solved by restarting the monitored database. If a restart of the monitored database is not possible, the Foglight collection ("Top Blocked Objects") which triggers the statement can be disabled.
To disable the collection:
Please apply Oracle patch 19509076 for this issue for Oracle 12