This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to group together collected metrics - function or derived metric?

We have a JMX agent pulling large numbers of individual metrics from WebLogic servers, which make many performance-sensitive SOAP requests to third parties. We found that we can watch these outgoing SOAP hits by monitoring WseeClientOperationRuntime MBeans, but now we have a huge number of individual metrics - each of 100 servers has over 150 SOAP calls being monitored, and instead of seeing per-server numbers we'd rather see aggregated values for each particular service call, maybe for the top 20 most-called across all servers.

Each metrics has a port name and a service call name (Foglight shows them as on_WseeClientPortRuntime and on_Name) which we require. If I was querying the data in SQL (using Foglight names) it would look like:

select top 20 on_WseeClientPortRuntime Endpoint, on_Name ServiceCall, sum(_InvocationCount_delta) HitCount, sum(ExecutionTimeTotal_delta)/sum(InvocationCount_delta) AvgHitTime
from WebLogicJMX_com_bea_WseeClientOperationRuntime
where lastUpdated > sysdate - 1/24
group by on_WseeClientPortRuntime, on_Name
order by sum(_InvocationCount_delta) desc

Am I missing something obvious? Query aggregation didn't seem capable of grouping by port/name, and I can't seem to find a language reference for the derived metrics.