changes in V7.40.375@ 2022-04-03
==================
added stats for wait times,
in menu "PRINT Communication and processing stats":.
this is useful to understand if the plugin has performance problems. This is not new functionalityfor the user.
The log output will look like:
- Code: Select all
Wait times[secs] during processing of incoming data, from 2022-04-04 00:00:01 to 2022-04-04 09:03:10 - today
Pgm Module Waiting --- nMeasuremts TotWaitTime AveWait >.1 >.5 >1 >3 >6 >12 >20 maxWait
doAPdictsSELF 1841 0.026 0.000 0 0 0 0 0 0 0 0.0
doAPmessages 5897 50.134 0.009 101 8 11 1 0 0 0 5.7
doGWHost_table 400 0.005 0.000 0 0 0 0 0 0 0 0.0
doGatewaydictSELF 400 2.743 0.007 7 2 0 0 0 0 0 0.9
doNeighborsdict 1841 0.021 0.000 0 0 0 0 0 0 0 0.0
doSWITCHdict 1209 0.027 0.000 0 0 0 0 0 0 0 0.0
doSWdictSELF 1209 16.801 0.014 11 2 5 1 0 0 0 5.6
doWiFiCLIENTSdict 2786 12.140 0.004 27 2 3 0 0 0 0 1.6
main 5770 4.797 0.001 25 0 0 0 0 0 0 0.3
---TOTAL---- 21353 86.695 0.004 171 14 19 2 0 0 0 5.7
Pgm Module Blocking--- nMeasuremts TotBlocTime AveBloc >.1 >.5 >1 >3 >6 >12 >20 maxWait
doAPmessages 6 0.847 0.141 4 0 0 0 0 0 0 0.3
doGWHost_table 4 0.526 0.131 4 0 0 0 0 0 0 0.1
doNeighborsdict 49 11.377 0.232 48 0 1 0 0 0 0 2.1
doSWITCHdict 7 6.845 0.978 6 0 0 1 0 0 0 5.7
main 142 66.511 0.468 109 14 18 1 0 0 0 5.6
---TOTAL---- 210 86.106 0.410 171 14 19 2 0 0 0 5.7
Wait times[secs] during processing of incoming data, from 2022-04-03 18:06:14 to 2022-04-04 00:00:00 - yesterday
Pgm Module Waiting --- nMeasuremts TotWaitTime AveWait >.1 >.5 >1 >3 >6 >12 >20 maxWait
doAPdictsSELF 1199 0.019 0.000 0 0 0 0 0 0 0 0.0
doAPmessages 4520 16.091 0.004 54 1 3 0 0 0 0 1.9
doGWHost_table 260 0.003 0.000 0 0 0 0 0 0 0 0.0
doGatewaydictSELF 260 1.212 0.005 7 0 0 0 0 0 0 0.3
doNeighborsdict 1199 0.372 0.000 1 0 0 0 0 0 0 0.4
doSWITCHdict 786 0.022 0.000 0 0 0 0 0 0 0 0.0
doSWdictSELF 786 5.910 0.008 10 1 2 0 0 0 0 1.7
doWiFiCLIENTSdict 1811 6.896 0.004 22 0 2 0 0 0 0 1.2
main 3787 3.113 0.001 15 0 0 0 0 0 0 0.3
---TOTAL---- 14608 33.638 0.002 109 2 7 0 0 0 0 1.9
Pgm Module Blocking--- nMeasuremts TotBlocTime AveBloc >.1 >.5 >1 >3 >6 >12 >20 maxWait
doAPmessages 1 0.111 0.111 1 0 0 0 0 0 0 0.1
doGWHost_table 2 0.365 0.182 2 0 0 0 0 0 0 0.2
doNeighborsdict 26 6.845 0.263 25 0 1 0 0 0 0 1.9
doSWITCHdict 3 0.631 0.210 3 0 0 0 0 0 0 0.3
main 86 25.276 0.294 78 2 6 0 0 0 0 1.7
---TOTAL---- 118 33.228 0.282 109 2 7 0 0 0 0 1.9
================================================ END ================================================
It shows the modules that wait and the modules that cause any waits for others.
In my setup the max wait time for any data processing is 5.7 seconds and happened once in about 10 hours.
Indigo devices can be updated from different sources: switches, AP , router ... They should not update the same device at the same time. That is why the plugin serializes the actual updates
Sometimes 2 processes want to update at the same time. To solve this a wait mechanism is used. First update process goes through, the other has to wait.
This log print out shows who is waiting from whom and how often and how long.
So if you have a problem with performance, I might ask you you send me this info.
Karl