To enable the performance statistics in BSI, make sure gatherperformancestatistics is updated with YES value in the t_system_configurations table
gatherperformancestatistics : whether or not PSL Writer should gather performance counters in T_PERFORMANCE_STATISTICS
Possible values are:
YES: gather statistics.
NO: do not gather statistics.
T_PERFORMANCE_STATISTICS table key columns (MEASUREMENT_NAME,MEASUREMENT_VALUE, MEASUREMENT_WEIGHT)
MEASUREMENT_VALUE-Total time taken in milliseconds by the engine to process the measurement name |
MEASUREMENT_WEIGHT--It is the total number of calls it made for each measurement name |
Note: measurement name is the code block that is used for measurement
CUSTOMER_DESIGNATION |
MEASURING_OBJECT |
MEASUREMENT_NAME |
MEASUREMENT_VALUE |
MEASUREMENT_WEIGHT |
CREATE_DATE |
MODIFY_DATE |
Unspecified |
PslWriter0 |
CPslWriterService::Run cycle time |
6786245 |
113 |
8-Jun-21 |
8-Jun-21 |
Unspecified |
PslWriter0 |
CPslWriterService::Run Create Rules List subcycle time |
173341 |
113 |
8-Jun-21 |
8-Jun-21 |
Unspecified |
PslWriter0 |
CVBCalculationEngine::LoadClusterItem time |
0 |
20905 |
8-Jun-21 |
8-Jun-21 |
Unspecified |
PslWriter0 |
CVBCalculationEngine::CallOnTimeslotEnter ScriptControl->Run time |
0 |
565 |
8-Jun-21 |
8-Jun-21 |
Some examples explained with scenarios.
Case1: Explained where Measurement value is high and measurement weight is low
CPslWriterService::Run cycle time took 6786245ms with number of times it called this code is count(113)
CPslWriterService::Run Create Rules List subcycle time took 173341ms with number of times it called this code is count(113)
Case2: Explained where measurement value is 0 but measurement weight is high,Where Business logic is not defined but will look for code as part of flow therefore measurement value is evaluated to 0 but measurement weight is high
CVBCalculationEngine::LoadClusterItem time time took 0ms with number of times it called this code is count(20905)
CVBCalculationEngine::CallOnTimeslotEnter ScriptControl->Run time time took 0ms with number of times it called this code is count(565)
Gatherperformancestatistics:
Default Value: NO
Recommendations: Set to Yes, as it does not slow PSL Writer performance and is very useful when problems occur.
More information about performance monitoring for debugging purpose:
Performancemonitoringlevel:
Default Value: 0
Recommendations: Leave this value set to 0. It should only be changed to 3 in the event of a PSL Writer performance problem that requires investigation.
Important: If the performance monitoring level is set to 3 (for debugging purposes), the PSL Writer might use a lot of memory, and the memory limit set in the configuration will not help solve the problem. Therefore, in order to prevent performance problems, the value must be changed back to 0 after completing investigation.