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

loader image too easily missed #13

Open
arigo opened this issue Aug 15, 2016 · 7 comments
Open

loader image too easily missed #13

arigo opened this issue Aug 15, 2016 · 7 comments

Comments

@arigo
Copy link

arigo commented Aug 15, 2016

http://vmprof.com/static/images/loader.gif is too easily missed when we click somewhere in the page, and it's the only feedback that we actually clicked and have to wait. Worse, it might be completely off the page if we scroll down before clicking.

@planrich
Copy link
Contributor

I made the spinner bigger and centered it. It is also fixed now, meaning if you scrolled down you will still see the spinner.

screenshot from 2016-08-16 14-31-47

@fijal
Copy link
Member

fijal commented Aug 16, 2016

given the long wait times it would be really lovely if we could get an indication of how long it would take. Also the spinning wheel does not stop spinning if something crashes or timeouts, so it's of no indication whatsoevver

@fijal
Copy link
Member

fijal commented Aug 16, 2016

This is a good example - server crashed, but the wheel is endlessly spinnign without any notification. Those progress bars are as good as not existing :/
screen shot 2016-08-16 at 10 35 02 pm

@planrich
Copy link
Contributor

I expanded the angular app to display error messages. If for example an exception is thrown while processing the trace, and it has an error message, it will now be displayed, and the spinner stops. I'll redeploy tonight, let's see if that is better

@fijal
Copy link
Member

fijal commented Aug 17, 2016

any chance we can get an actual progress bar with some indication how long it might take?

@planrich
Copy link
Contributor

Advanced. What is unclear to me is how to deliver the progress over HTTP. We would need some kind of streaming http request (web socket?). Is that supported on IE?

The trace tree is cached in memory. Assuming that the parsing takes the most time, this is only needed the first time. We could get around that by loading the trace tree into the cache as soon as the log file is sent to vmprof.com, not when it is requested.

Other than that, the requests should only transform parts of the tree to json. Parsing is required only once.

@fijal can you tell me what action takes the most time? the first load of the page? clicking traces? the latter would only need some refactoring in JS

@jonashaag
Copy link
Contributor

What took the most time for us was loading the huge profile JSON blob from the SQL database. Not sure if you're having the same problem. My guess is that it's not a download speed problem, but a server performance one. (This is of course easily checked with Chrome Web Debugger etc.)

Pure download progress can be easily achieved with the progress event of XmlHttpRequest, see https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest#Monitoring_progress

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

4 participants