Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Profiler doesn't show line by line performance. #357

Open
nino-finch opened this issue Aug 22, 2020 · 2 comments
Open

Profiler doesn't show line by line performance. #357

nino-finch opened this issue Aug 22, 2020 · 2 comments

Comments

@nino-finch
Copy link

Describe the bug
The endpoint profiler stops showing the break down of my code performance after the first few call-stack. I'm expecting to see which function in my endpoint causes slowness, how performant my db or redis query is etc but none of them tracked by it.

Screenshots
Screen Shot 2020-08-22 at 1 51 49 PM

To Reproduce
I just followed the install instruction and setup the default level configuration to 3

Desktop (please complete the following information):

  • OS: MacOS
  • Browser - Chrome
  • FMD Version [v.3.0.7]

Additional context
I'm not sure if this is a bug or just not supported to begin with by this library. It'd be a huge bummer if the actual code by code profiler is not supported but thanks for building this anyway.

@nino-finch
Copy link
Author

My screenshot above doesn't show what inside the thread.start() so adding it more here.

Screen Shot 2020-08-22 at 2 03 13 PM

@Amedeo91
Copy link

Hello @nino-finch, I have the same issue with waiter. If you use the default debug server, it works fine. I guess it is because by using waiter the server is actually using multi-threading to support several requests in parallel while it is not the case with the debug server.

Do you have a proposal for that? The point where we need to improve is https://github.com/flask-dashboard/Flask-MonitoringDashboard/blob/master/flask_monitoringdashboard/core/profiler/stacktrace_profiler.py line 105 so that it fetches as the content of the thread and not the fact that the tread is running. Maybe it is enough to initialize the actual callback we write below @app.route here at line https://github.com/flask-dashboard/Flask-MonitoringDashboard/blob/master/flask_monitoringdashboard/core/measurement.py 171

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants