Benefits

The system can publish statistics at a granular level. Using a third-party monitoring application is beneficial, as you can perform a detailed analysis of the statistics.

Table 1. Behaviour of the system
Current capability Enhanced capability
The system currently consolidates the metrics reported by the JVMs. The metrics from the JVMs are passed directly to the third-party application without consolidation.
Summary of the metrics returned by the JVMs is recorded in the YFS_STATISTICS_DETAIL table. Based on the properties that are configured in the customer_overrides.properties file, the metrics reported by the JVMs are recorded in the YFS_STATISTICS_DETAIL table or passed to the third-party application, or both. To pass the statistics to a third-party application, you can use the PLTStatisticsConsumer and IStatisticObject interfaces. For more information, see the Javadoc.
Consolidated metrics may not be useful for an exhaustive analysis of the system performance. For example, if the scheduleOrder API is monitored, you can find out the number of times the API was executed, the minimum, maximum, and the average response times. However, with the limited scope of analysis by using consolidated metrics, you may not be able to determine the response time for 90th percentile of the API calls, as there are no data points to calculate the required information. Third-party applications can be used to plot useful graphs with granular metrics. For example, if the scheduleOrder API is invoked X times in a given time interval, the response time of each invocation is passed to the third-party application, which can later be used to plot the minimum, maximum and average response times, or other metrics required by the user. This level of granularity provides users greater control over the metrics, which can be readily used to analyze the system performance.