Flask-MonitoringDashboard icon indicating copy to clipboard operation
Flask-MonitoringDashboard copied to clipboard

Outliers data is empty

Open oanamocean opened this issue 4 years ago • 7 comments

Hi, I'm doing some tests to see how the graphs and info would look like so we're ready for production and I'm not seeing any data in the Outliers tab.

I've set in my config file MONITOR_LEVEL to 3 and also I've tried different values for OUTLIER_DETECTION_CONSTANT, from 2.5, 2 and now it's set to 1.5. But I'm still not seeing anything, the Outlier table in the db is empty. Shouldn't this register any requests that last longer that the outlier constant * the median request duration? Am I missing something else?

[dashboard]
APP_VERSION=1.0
CUSTOM_LINK=dashboard
MONITOR_LEVEL=3
OUTLIER_DETECTION_CONSTANT=1.5
ENABLE_LOGGING=True

Thanks

oanamocean avatar Jul 15 '20 15:07 oanamocean

Hi @oanamocean !

Indeed. The desired behavior is the one you describe.

Are you sure that you have outliers that are 50% slower than the median?

mircealungu avatar Jul 15 '20 16:07 mircealungu

I believe so.

The outlier constant is set to 1.5 Screenshot 2020-07-16 at 11 42 47

This is my median request duration before my last request Screenshot 2020-07-16 at 11 41 20

And these are the latest requests I made Screenshot 2020-07-16 at 11 44 14

So, if my median time is 9.5s and the outlier constant is 1.5, anything above 14.5s should be saved as outlier, no? And my latest request is 18s but the Outlier graph is still empty.

Is there like a minimum Total number of hits required for this?

oanamocean avatar Jul 16 '20 09:07 oanamocean

Hi @oanamocean ! Can you confirm that you restarted the app after changing the OUTLIER_DETECTION_CONSTANT? Also, do the logs show any errors?

bogdanp05 avatar Jul 16 '20 09:07 bogdanp05

Hey, Yes, I've restarted the flask app, but still no success and I haven't seen any errors in the logs about this.

oanamocean avatar Jul 16 '20 09:07 oanamocean

One thing that it important to mention is that the Dashboard Overview shows the median execution times per endpoint.

However, for determining whether it is an outlier, we use the average execution time.

Usually these two are quite similar, but it could be different in your case.

Can you provide me the average execution time for this request? So we can check whether this is the problem?

Thanks in advance,

Patrick

FlyingBird95 avatar Jul 16 '20 09:07 FlyingBird95

I only have one endpoint.

Screenshot 2020-07-16 at 12 57 17

Here are all the requests that I made, until the 5th request the average time was around 7,8s and I would've expected the 6th one to be saved as an outlier. Hope I'm doing the right math here :)

oanamocean avatar Jul 16 '20 10:07 oanamocean

Hello again,

I did some more tests today and I've seen in the Profiler tab that some requests have outlier.start() in the Code-line so I suppose that request is marked as an outlier, no? But the Outlier tab with the data and graph is still empty.

Screenshot 2020-07-17 at 11 22 00 Screenshot 2020-07-17 at 11 23 59

oanamocean avatar Jul 17 '20 08:07 oanamocean