don't take network time into account in sync log filter

This commit is contained in:
Bruno Windels 2021-02-18 19:48:19 +01:00
parent f2f9162b85
commit ad0c813833
2 changed files with 18 additions and 2 deletions

View file

@ -45,6 +45,22 @@ export class LogItem {
}
}
durationWithoutType(type) {
return this.duration - this.durationOfType(type);
}
durationOfType(type) {
if (this._values.t === type) {
return this.duration;
} else if (this._children) {
return this._children.reduce((sum, c) => {
return sum + c.durationOfType(type);
}, 0);
} else {
return 0;
}
}
/**
* Creates a new child item that finishes immediately
* and can hence not be modified anymore.

View file

@ -96,7 +96,7 @@ export class Sync {
while(this._status.get() !== SyncStatus.Stopped) {
let roomStates;
let sessionChanges;
let wasCatchup = this._status.get() === SyncStatus.CatchupSync;
let wasCatchupOrInitial = this._status.get() === SyncStatus.CatchupSync || this._status.get() === SyncStatus.InitialSync;
await this._logger.run("sync", async log => {
log.set("token", syncToken);
log.set("status", this._status.get());
@ -150,7 +150,7 @@ export class Sync {
},
this._logger.level.Info,
(filter, log) => {
if (log.duration >= 2000 || log.error || wasCatchup) {
if (log.durationWithoutType("network") >= 2000 || log.error || wasCatchupOrInitial) {
return filter.minLevel(log.level.Detail);
} else {
return filter.minLevel(log.level.Info);