Added the essential User Timings to WebIDE
What does this MR do?
To be able to better tackle the performance issues in WebIDE, we need to know what we measure and what we optimize for. This MR brings better structure to the User Timing metrics of WebIDE which the further performance work in WebIDE should be based upon.
Screenshots (strongly suggested)
-
The list of all the WebIDE marks triggered on loading:
Mark name Description webide-getProjectData-start
The start for the Project Data request webide-app-start
The start for the ide.vue component webide-getProjectData-finish
The Project Data request arrived webide-getBranchData-start
The start for the Branch Data request webide-getBranchData-finish
The Branch Data request arrived webide-getFiles-start
The start for requesting the list of files webide-getFiles-finish
The list of files arrived webide-init-editor-start
The file editor is initialized with a file webide-getFileData-start
The start of File Data request <FileTree>-start
The start of the first tree item's rendering <FileTree>-end
The first tree item is rendered webide-getFileData-finish
The File Data arrived webide-init-editor-finish
The file editor renders the requested file -
The list of all measures
Measure name Description WebIDE: Before Vue app
Duration before bootstrapping the vue application WebIDE: Project data
Duration of getting the Project WebIDE: Branch data
Duration of getting the Branch WebIDE: Fetch Files
Duration of getting the list of Files WebIDE: Repo Editor
Duration of setting up the RepoEditor <FileTree>
Duration to render the very first tree item WebIDE: File data
Duration of getting the open File's data
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry -
Documentation (if required) -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done