Additional logging for perf analysis and cross-device debuging

- How long it takes to get a message through the pre-send checks
- How long it takes to open a conversation for the first time
- The timestamp of any message we send to corellate with other logs
- Add conversation ID to 'decrypt old identity key errors' start/end

FREEBIE
This commit is contained in:
Scott Nonnenberg 2017-08-16 13:53:50 -07:00
parent f15bdad4b3
commit 680f7d8b57
2 changed files with 9 additions and 2 deletions

View file

@ -230,7 +230,7 @@
if (this.get('decryptedOldIncomingKeyErrors')) {
return Promise.resolve();
}
console.log('decryptOldIncomingKeyErrors start');
console.log('decryptOldIncomingKeyErrors start for', this.id);
var messages = this.messageCollection.filter(function(message) {
var errors = message.get('errors');
@ -245,7 +245,7 @@
});
var markComplete = function() {
console.log('decryptOldIncomingKeyErrors complete');
console.log('decryptOldIncomingKeyErrors complete for', this.id);
return new Promise(function(resolve) {
this.save({decryptedOldIncomingKeyErrors: true}).always(resolve);
}.bind(this));
@ -559,6 +559,7 @@
sendMessage: function(body, attachments) {
this.queueJob(function() {
var now = Date.now();
console.log('Sending message to conversation', this.id, 'with timestamp', now);
var message = this.messageCollection.add({
body : body,
conversationId : this.id,

View file

@ -419,12 +419,15 @@
onLoaded: function () {
var view = this.loadingScreen;
if (view) {
var openDelta = Date.now() - this.openStart;
console.log('Conversation', this.model.id, 'took', openDelta, 'milliseconds to load');
this.loadingScreen = null;
view.remove();
}
},
onOpened: function() {
this.openStart = Date.now();
this.lastActivity = Date.now();
this.statusFetch = this.throttledGetProfiles().then(function() {
@ -866,6 +869,7 @@
checkUnverifiedSendMessage: function(e, options) {
e.preventDefault();
this.sendStart = Date.now();
this.$messageField.prop('disabled', true);
options = options || {};
@ -946,6 +950,8 @@
if (message.length > 0 || this.fileInput.hasFiles()) {
this.fileInput.getFiles().then(function(attachments) {
var sendDelta = Date.now() - this.sendStart;
console.log('Send pre-checks took', sendDelta, 'milliseconds');
this.model.sendMessage(message, attachments);
input.val("");
this.focusMessageField();