Open
Description
The CPU Time displayed in the DJDT shows the total time taken to render the request, including the time to render the DJDT itself. This is not what I care about, because the DJDT will not be there when running in production.
Is it possible to get the time elapsed of the actual rendered view on-screen somewhere?
Activity
tim-schilling commentedon Apr 10, 2024
If you're looking for metrics on the app running in production, I'd suggest looking into an APM product or an observability product.
vanschelven commentedon Apr 10, 2024
I don't think I said that although I see how what I said could be interpreted in that way. Let me clarify: in my case, the number as-shown was for c. 90% caused by the DJDT itself. Because I was in the assumption that the DJDT was saying something (mostly) about my code, rather than about itself, this led me on a wild goose chase, searching for the slowness in my application. This could have been prevented if the DJDT time/cpu panel had one or 2 lines about the "thing under measurement" explicitly
tim-schilling commentedon Apr 10, 2024
I appreciate the clarification.
I can see how that is a problem. I suspect it's possible for the tollbar middleware to track how long it's been running, then present that in the response along side the overall time.
I'm not sure we'd want to do the subtraction automatically because the total time is the total time. The toolbar is a part of the application.
Is that something you're interested in creating a PR for?
vanschelven commentedon Apr 10, 2024
"maybe"... I'll let you know 😄
earthcomfy commentedon Jan 3, 2025
@tim-schilling Hey, I was hoping to make a PR for this and wanted to clarify. Are we going to measure the middleware time from the start to the end of the middleware's execution (?) something like this:
Thank you:)
tim-schilling commentedon Jan 3, 2025
Yeah, I think that's the general idea 🚀
Some initial thoughts:
__acall__
path tooearthcomfy commentedon Jan 3, 2025
Thanks; I made a PR without pulling it out to a separate class. But if that's required, we could do something like this
and then call this manager in the middleware. I have created a PR but let me know if this needs to be added.