/mattermost-webapp-profiling

Under construction project for automating profiling of the Mattermost web app.

Primary LanguageJavaScriptApache License 2.0Apache-2.0

mattermost-webapp-profiling

Project for automated profiling of the Mattermost web app. Built off the wonderful automated-chrome-profiling.

Requirements

  1. npm 4.3.0 or higher
  2. node 7.7.0 or higher
  3. mattermost-server and mattermost-webapp developer environments

Usage

  1. Run make install
  2. Load the db/testdbdump.sql into your mysql database
  3. Build a dev build of the web app with make run-fullmap
  4. Start up your Mattermost server at http://localhost:8065
  5. Run make run
  6. Open up Chrome and load the profile created in ./profiles/ into the Performance tab

Use make clean to clean up the docker container and your environment.

Reading the Profile

In the timeline you should see three yellow blocks representing CPU usage. The first covers initial page load, the second is a channel switch and the last is a team switch. Let's call each of these an event.

Open up the User Timing tab to see React specific information in the form of a flame graph. This should provide insight into where processing time is being spent for each of the three different events.