mirror of
https://github.com/ragestudio/comty.git
synced 2025-06-09 18:44:16 +00:00
added PerformanceLog
class
This commit is contained in:
parent
2640b57925
commit
612d831a29
53
packages/app/src/classes/PerformanceLog/index.js
Normal file
53
packages/app/src/classes/PerformanceLog/index.js
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
export default class PerformanceLog {
|
||||||
|
constructor(
|
||||||
|
id,
|
||||||
|
params = {
|
||||||
|
disabled: false
|
||||||
|
}
|
||||||
|
) {
|
||||||
|
this.id = id
|
||||||
|
this.params = params
|
||||||
|
|
||||||
|
this.table = {}
|
||||||
|
|
||||||
|
return this
|
||||||
|
}
|
||||||
|
|
||||||
|
start(event) {
|
||||||
|
if (this.params.disabled) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!this.table[event]) {
|
||||||
|
this.table[event] = {}
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.table[event]["start"] = performance.now()
|
||||||
|
}
|
||||||
|
|
||||||
|
end(event) {
|
||||||
|
if (this.params.disabled) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!this.table[event]) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
return this.table[event]["end"] = performance.now()
|
||||||
|
}
|
||||||
|
|
||||||
|
finally() {
|
||||||
|
if (this.params.disabled) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
|
console.group(this.id)
|
||||||
|
|
||||||
|
Object.entries(this.table).forEach(([entry, value]) => {
|
||||||
|
console.log(entry, `${(value.end - value.start).toFixed(0)}ms`)
|
||||||
|
})
|
||||||
|
|
||||||
|
console.groupEnd()
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user