mirror of
https://github.com/Foundry376/Mailspring.git
synced 2025-09-13 16:14:36 +08:00
[client-sync] metrics(Part 5) Rename PerformanceMonitor to GlobalTimer
Summary: This global module wasn't really related to performance, but rather with timing things across different processes in the app. I believe this name is more appropriate. Test Plan: I can still use NylasEnv.timer (instead of NylasEnv.perf) Reviewers: spang, evan Reviewed By: spang, evan Differential Revision: https://phab.nylas.com/D3972
This commit is contained in:
parent
8afb14c4c6
commit
39c6c04bc4
6 changed files with 12 additions and 10 deletions
|
@ -48,7 +48,7 @@ class ComposerWithWindowProps extends React.Component {
|
||||||
|
|
||||||
_onDraftReady = () => {
|
_onDraftReady = () => {
|
||||||
this.refs.composer.focus().then(() => {
|
this.refs.composer.focus().then(() => {
|
||||||
const timeInMs = NylasEnv.perf.stop("Popout Draft");
|
const timeInMs = NylasEnv.timer.stop("Popout Draft");
|
||||||
if (!NylasEnv.inDevMode() && !NylasEnv.inSpecMode()) {
|
if (!NylasEnv.inDevMode() && !NylasEnv.inSpecMode()) {
|
||||||
if (timeInMs && timeInMs <= 4000) {
|
if (timeInMs && timeInMs <= 4000) {
|
||||||
Actions.recordUserEvent("Composer Popout Timed", {timeInMs})
|
Actions.recordUserEvent("Composer Popout Timed", {timeInMs})
|
||||||
|
|
|
@ -22,7 +22,10 @@ export class ArchiveButton extends React.Component {
|
||||||
}
|
}
|
||||||
|
|
||||||
_onArchive = (event) => {
|
_onArchive = (event) => {
|
||||||
const tasks = TaskFactory.tasksForArchiving({threads: this.props.items, source: "Toolbar Button: Thread List"})
|
const tasks = TaskFactory.tasksForArchiving({
|
||||||
|
threads: this.props.items,
|
||||||
|
source: "Toolbar Button: Thread List",
|
||||||
|
})
|
||||||
Actions.queueTasks(tasks);
|
Actions.queueTasks(tasks);
|
||||||
Actions.popSheet();
|
Actions.popSheet();
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
|
|
|
@ -8,6 +8,7 @@ import path from 'path';
|
||||||
import proc from 'child_process'
|
import proc from 'child_process'
|
||||||
import {EventEmitter} from 'events';
|
import {EventEmitter} from 'events';
|
||||||
|
|
||||||
|
import GlobalTimer from './global-timer'
|
||||||
import WindowManager from './window-manager';
|
import WindowManager from './window-manager';
|
||||||
import FileListCache from './file-list-cache';
|
import FileListCache from './file-list-cache';
|
||||||
import DatabaseReader from './database-reader';
|
import DatabaseReader from './database-reader';
|
||||||
|
@ -15,7 +16,6 @@ import ConfigMigrator from './config-migrator';
|
||||||
import ApplicationMenu from './application-menu';
|
import ApplicationMenu from './application-menu';
|
||||||
import AutoUpdateManager from './auto-update-manager';
|
import AutoUpdateManager from './auto-update-manager';
|
||||||
import SystemTrayManager from './system-tray-manager';
|
import SystemTrayManager from './system-tray-manager';
|
||||||
import PerformanceMonitor from './performance-monitor'
|
|
||||||
import DefaultClientHelper from '../default-client-helper';
|
import DefaultClientHelper from '../default-client-helper';
|
||||||
import NylasProtocolHandler from './nylas-protocol-handler';
|
import NylasProtocolHandler from './nylas-protocol-handler';
|
||||||
import PackageMigrationManager from './package-migration-manager';
|
import PackageMigrationManager from './package-migration-manager';
|
||||||
|
@ -73,7 +73,7 @@ export default class Application extends EventEmitter {
|
||||||
});
|
});
|
||||||
this.systemTrayManager = new SystemTrayManager(process.platform, this);
|
this.systemTrayManager = new SystemTrayManager(process.platform, this);
|
||||||
this._databasePhase = 'setup';
|
this._databasePhase = 'setup';
|
||||||
this.perf = new PerformanceMonitor()
|
this.timer = new GlobalTimer()
|
||||||
|
|
||||||
this.setupJavaScriptArguments();
|
this.setupJavaScriptArguments();
|
||||||
this.handleEvents();
|
this.handleEvents();
|
||||||
|
|
|
@ -5,7 +5,7 @@ const BUFFER_SIZE = 100;
|
||||||
* A benchmarking system to keep track of start and end times for various
|
* A benchmarking system to keep track of start and end times for various
|
||||||
* event types.
|
* event types.
|
||||||
*/
|
*/
|
||||||
export default class PerformanceMonitor {
|
export default class GlobalTimer {
|
||||||
constructor() {
|
constructor() {
|
||||||
this._doneRuns = {}
|
this._doneRuns = {}
|
||||||
this._pendingRuns = {}
|
this._pendingRuns = {}
|
||||||
|
@ -70,5 +70,4 @@ export default class PerformanceMonitor {
|
||||||
clear(key) {
|
clear(key) {
|
||||||
delete this._doneRuns[key]
|
delete this._doneRuns[key]
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
|
@ -275,7 +275,7 @@ class DraftStore extends NylasStore {
|
||||||
|
|
||||||
_onPopoutBlankDraft = () => {
|
_onPopoutBlankDraft = () => {
|
||||||
Actions.recordUserEvent("Draft Created", {type: "new"});
|
Actions.recordUserEvent("Draft Created", {type: "new"});
|
||||||
NylasEnv.perf.start("Popout Draft");
|
NylasEnv.timer.start("Popout Draft");
|
||||||
return DraftFactory.createDraft().then((draft) => {
|
return DraftFactory.createDraft().then((draft) => {
|
||||||
return this._finalizeAndPersistNewMessage(draft).then(({draftClientId}) => {
|
return this._finalizeAndPersistNewMessage(draft).then(({draftClientId}) => {
|
||||||
return this._onPopoutDraftClientId(draftClientId, {newDraft: true});
|
return this._onPopoutDraftClientId(draftClientId, {newDraft: true});
|
||||||
|
@ -287,7 +287,7 @@ class DraftStore extends NylasStore {
|
||||||
if (draftClientId == null) {
|
if (draftClientId == null) {
|
||||||
throw new Error("DraftStore::onPopoutDraftId - You must provide a draftClientId");
|
throw new Error("DraftStore::onPopoutDraftId - You must provide a draftClientId");
|
||||||
}
|
}
|
||||||
NylasEnv.perf.start("Popout Draft");
|
NylasEnv.timer.start("Popout Draft");
|
||||||
|
|
||||||
const title = options.newDraft ? "New Message" : "Message";
|
const title = options.newDraft ? "New Message" : "Message";
|
||||||
return this.sessionForClientId(draftClientId).then((session) => {
|
return this.sessionForClientId(draftClientId).then((session) => {
|
||||||
|
|
|
@ -195,7 +195,7 @@ class NylasEnvConstructor
|
||||||
@packages.onDidActivateInitialPackages => @watchThemes()
|
@packages.onDidActivateInitialPackages => @watchThemes()
|
||||||
@windowEventHandler = new WindowEventHandler()
|
@windowEventHandler = new WindowEventHandler()
|
||||||
|
|
||||||
@perf = remote.getGlobal('application').perf
|
@timer = remote.getGlobal('application').timer
|
||||||
|
|
||||||
@localSyncEmitter = new Emitter
|
@localSyncEmitter = new Emitter
|
||||||
|
|
||||||
|
@ -739,7 +739,7 @@ class NylasEnvConstructor
|
||||||
# plugins needs to be loaded.
|
# plugins needs to be loaded.
|
||||||
populateHotWindow: (event, loadSettings) =>
|
populateHotWindow: (event, loadSettings) =>
|
||||||
if /composer/.test(loadSettings.windowType)
|
if /composer/.test(loadSettings.windowType)
|
||||||
NylasEnv.perf.split("Popout Draft")
|
NylasEnv.timer.split("Popout Draft")
|
||||||
@loadSettings = loadSettings
|
@loadSettings = loadSettings
|
||||||
@constructor.loadSettings = loadSettings
|
@constructor.loadSettings = loadSettings
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue