Skip to content

Commit 31930f0

Browse files
committed
chore: add perf logs
1 parent de7ab53 commit 31930f0

1 file changed

Lines changed: 31 additions & 17 deletions

File tree

backend/src/services/memberService.ts

Lines changed: 31 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
/* eslint-disable no-continue */
22
import { randomUUID } from 'crypto'
3-
// eslint-disable-next-line import/no-extraneous-dependencies
4-
import { diff } from 'deep-object-diff'
53
import lodash from 'lodash'
64
import moment from 'moment-timezone'
75
import validator from 'validator'
@@ -32,7 +30,7 @@ import { findMergeAction } from '@crowd/data-access-layer/src/mergeActions/repo'
3230
import { QueryExecutor, optionsQx } from '@crowd/data-access-layer/src/queryExecutor'
3331
// import { getActivityCountOfMemberIdentities } from '@crowd/data-access-layer'
3432
import { fetchManySegments } from '@crowd/data-access-layer/src/segments'
35-
import { LoggerBase , logExecutionTimeV2 } from '@crowd/logging'
33+
import { LoggerBase } from '@crowd/logging'
3634
import {
3735
IMemberIdentity,
3836
IMemberRoleWithOrganization,
@@ -1773,19 +1771,22 @@ export default class MemberService extends LoggerBase {
17731771
}
17741772

17751773
const mode = data.countOnly ? 'COUNT-ONLY' : 'FULL'
1776-
1777-
const resultV1 = await logExecutionTimeV2(
1778-
() => queryMembersAdvanced(qx, redis, params),
1779-
this.log,
1780-
`[V1] [${mode}] queryMembersAdvanced`,
1781-
)
1782-
1783-
const resultV2 = await logExecutionTimeV2(
1784-
() => queryMembersAdvancedV2(qx, redis, params),
1785-
this.log,
1786-
`[V2] [${mode}] queryMembersAdvancedV2`,
1787-
)
1788-
1774+
1775+
const startV1 = performance.now()
1776+
const resultV1 = await queryMembersAdvanced(qx, redis, params)
1777+
const endV1 = performance.now()
1778+
const durationV1 = endV1 - startV1
1779+
const durationInSeconds = durationV1 / 1000
1780+
1781+
this.log.info(`[V1] [${mode}] queryMembersAdvanced took ${durationInSeconds} seconds`)
1782+
1783+
const startV2 = performance.now()
1784+
const resultV2 = await queryMembersAdvancedV2(qx, redis, params)
1785+
const endV2 = performance.now()
1786+
const durationV2 = endV2 - startV2
1787+
const durationInSecondsV2 = durationV2 / 1000
1788+
1789+
this.log.info(`[V2] [${mode}] queryMembersAdvancedV2 took ${durationInSecondsV2} seconds`)
17891790

17901791
// Compare
17911792
const resultsAreDeepEqual = lodash.isEqual(resultV1, resultV2)
@@ -1796,6 +1797,19 @@ export default class MemberService extends LoggerBase {
17961797
)
17971798

17981799
if (!resultsAreDeepEqual) {
1800+
// create me a small func to basically get the diff between two objects
1801+
const diff = (obj1, obj2) => {
1802+
const diffs = {}
1803+
for (const key in obj1) {
1804+
if (obj1[key] !== obj2[key]) {
1805+
diffs[key] = {
1806+
from: obj1[key],
1807+
to: obj2[key],
1808+
}
1809+
}
1810+
}
1811+
return diffs
1812+
}
17991813
this.log.info(
18001814
{
18011815
diff: diff(resultV1, resultV2),
@@ -1804,7 +1818,7 @@ export default class MemberService extends LoggerBase {
18041818
)
18051819
}
18061820

1807-
return resultV2
1821+
return resultV1
18081822
}
18091823

18101824
async queryForCsv(data) {

0 commit comments

Comments
 (0)