@servicetitan/log-service 22.19.0 → 22.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/log.js CHANGED
@@ -131,7 +131,10 @@ class ErrorLogHandler {
131
131
  enumerable: true,
132
132
  configurable: true,
133
133
  writable: true,
134
- value: throttle(() => this.flush(), this.throttleLogsDuration)
134
+ value: throttle(() => this.flush(), this.throttleLogsDuration, {
135
+ leading: false,
136
+ trailing: true,
137
+ })
135
138
  });
136
139
  this.logService = logService;
137
140
  this.logStorage = logStorage;
@@ -174,7 +177,7 @@ class ErrorLogHandler {
174
177
  for (const key of hashes) {
175
178
  const entry = this.logTable.get(key);
176
179
  if ('count' in entry.data) {
177
- /* insert into cache if it is a repitative error */
180
+ /* insert into cache if it is a repetitive error */
178
181
  this.repetitiveLogsCache.set(key, true);
179
182
  }
180
183
  this.logStorage.store(entry);
package/dist/log.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"log.js","sourceRoot":"","sources":["../src/log.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAGA,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAyBlE,MAAM,CAAN,IAAY,YAIX;AAJD,WAAY,YAAY;IACpB,6BAAa,CAAA;IACb,mCAAmB,CAAA;IACnB,+BAAe,CAAA;AACnB,CAAC,EAJW,YAAY,KAAZ,YAAY,QAIvB;AAqBD,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAY,kBAAkB,CAAC,CAAC;AAE3E,MAAM,CAAC,MAAM,iBAAiB,GAA6B,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAChF,KAAC,QAAQ,kBAAC,UAAU,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,gBAAG,QAAQ,IAAY,CAChG,CAAC;AAGF,IAAa,GAAG,GAAhB,MAAa,GAAG;IAGZ,YAAiD,UAAsB;;;;;mBAAtB;;QAFjD;;;;;WAAyC;QAGrC,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,CAAC,KAAc;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,CAAC,KAAiB;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,KAAe;QACjB,sCAAsC;QACtC,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,kCAAkC;IACnG,CAAC;IAEO,KAAK,CAAC,KAAoB;QAC9B,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAEO,MAAM,CAAC,IAAkB,EAAE,KAAe;QAC9C,MAAM,IAAI,mCACH,KAAK,CAAC,IAAI,GACV,IAAI,CAAC,WAAW,EAAE,CACxB,CAAC;QAEF,qCACI,IAAI,EACJ,QAAQ,EAAE,IAAI,EACd,OAAO,EAAE,IAAI,EACb,IAAI,EAAE,IAAI,IACP,KAAK,KACR,KAAK,EAAE,IAAI,EACX,IAAI,IACN;IACN,CAAC;IAEO,WAAW,CAAC,KAAe;QAC/B,IAAI,KAAY,CAAC;QACjB,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,EAAE;YAC9B,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;SACvB;aAAM;YACH,KAAK,GAAG,IAAI,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;SACzD;QAED,MAAM,KAAuB,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,EAA7D,EAAE,OAAO,OAAoD,EAA/C,IAAI,cAAlB,WAAoB,CAAyC,CAAC;QAEpE,qCACI,OAAO,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,KAAK,CAAC,OAAO,IAC9B,IAAI,KACP,KAAK,IACP;IACN,CAAC;IAEO,WAAW;QACf,uBACI,SAAS,EAAE,IAAI,IAAI,EAAE,EACrB,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,EAC/B,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAC/B,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,SAAS,EACrC,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,OAAO,EAAE,IACf,UAAU,EAAE,EACjB;IACN,CAAC;CACJ,CAAA;AAtEY,GAAG;IADf,UAAU,EAAE;IAII,WAAA,MAAM,CAAC,UAAU,CAAC,CAAA;qCAA8B,UAAU;GAH9D,GAAG,CAsEf;SAtEY,GAAG;AAwEhB,MAAM,eAAe;IAYjB,YAAY,UAAe,EAAE,UAAsB;QAXnD;;;;;WAAwB;QACxB;;;;;WAA+B;QAE/B;;;;mBAAmB,IAAI,SAAS,EAAsB;WAAC;QACvD;;;;mBAA8B,IAAI,SAAS,EAAW;WAAC;QAEvD;;;;mBAAsC,KAAK;WAAC;QAC5C;;;;mBAAwC,IAAI;WAAC;QAE7C;;;;mBAAyB,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,oBAAoB,CAAC;WAAC;QAG7E,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAE7B,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,CAAC,KAAyB;QAC5B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAEO,GAAG,CAAC,KAAyB;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACnC,wFAAwF;YACxF,OAAO;SACV;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE;YAChC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SACjC;aAAM;YACH,gFAAgF;YAChF,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAElC,CAAC;YACF,IAAI,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;gBACtC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;aACtB;iBAAM;gBACH,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;aACxB;YACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SACjC;IACL,CAAC;IAEO,MAAM,CAAC,KAAyB;;QACpC,OAAO;YACH,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;YAC5B,KAAK,EAAE,MAAA,KAAK,CAAC,KAAK,CAAC,KAAK,mCAAI,EAAE;SACjC,CAAC;IACN,CAAC;IAEO,KAAK;QACT,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QACzC,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAErC,IAAI,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE;gBACvB,mDAAmD;gBACnD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;aAC3C;YAED,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAChC;QAED,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;CACJ;AAED,MAAM,SAAS;IAAf;QACI;;;;mBAAoC,EAAE;WAAC;IAiB3C,CAAC;IAfG,GAAG,CAAC,GAAuC,EAAE,KAAQ;QACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;IAC7C,CAAC;IAED,GAAG,CAAC,GAAuC;QACvC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,SAAS;QACL,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,KAAK;QACD,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACrB,CAAC;CACJ;AAED,SAAS,OAAO;IACZ,IAAI;QACA,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK;aACvB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC;aAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACvD,IAAI,CAAC,GAAG,CAAC,CAAC;KAClB;IAAC,OAAO,CAAC,EAAE;QACR,OAAO,SAAS,CAAC;KACpB;AACL,CAAC;AAED,SAAS,UAAU;IACf,0HAA0H;IAE1H,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9C,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9C,MAAM,QAAQ,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACpF,MAAM,YAAY,GAAG,GAAG,CAAC,iBAAiB,EAAE,KAAK,GAAG,CAAC,iBAAiB,EAAE,CAAC;IAEzE,OAAO;QACH,QAAQ;QACR,KAAK;QACL,YAAY;KACf,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"log.js","sourceRoot":"","sources":["../src/log.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@servicetitan/log-service",
3
- "version": "22.19.0",
3
+ "version": "22.20.0",
4
4
  "description": "",
5
5
  "homepage": "https://docs.st.dev/docs/frontend/log-service",
6
6
  "repository": {
@@ -16,7 +16,7 @@
16
16
  "src"
17
17
  ],
18
18
  "devDependencies": {
19
- "@servicetitan/react-ioc": "22.19.0",
19
+ "@servicetitan/react-ioc": "22.20.0",
20
20
  "@testing-library/react": "^12.1.5",
21
21
  "@types/lodash.throttle": "~4.1.6",
22
22
  "axios": "~0.27.2",
@@ -24,7 +24,7 @@
24
24
  "react": "~17.0.2"
25
25
  },
26
26
  "peerDependencies": {
27
- "@servicetitan/react-ioc": "22.19.0",
27
+ "@servicetitan/react-ioc": "22.20.0",
28
28
  "axios": "~0.27.2",
29
29
  "mobx": "~6.10.0",
30
30
  "react": "~17.0.2"
@@ -38,5 +38,5 @@
38
38
  "cli": {
39
39
  "webpack": false
40
40
  },
41
- "gitHead": "67e6a6883fcd77bd6437afa329e404ade42e1839"
41
+ "gitHead": "ec4a9c96e9927170b725720de33e97efed24c724"
42
42
  }
@@ -3,6 +3,7 @@ import { LogStorage } from '../log-storage';
3
3
  import { serializeWithMetadata } from '../serialize-with-metadata';
4
4
 
5
5
  const SECOND = 1000;
6
+ const THROTTLE_INTERVAL = 30 * SECOND;
6
7
 
7
8
  describe(`[log-service] ${Log.name}`, () => {
8
9
  const entry: LogEntry = { category: 'category', code: 'code', message: 'foo' };
@@ -60,16 +61,25 @@ describe(`[log-service] ${Log.name}`, () => {
60
61
  expect(console.error).toHaveBeenCalledWith('@log-service/error', errorEntry);
61
62
  });
62
63
 
63
- test('skips redundant errors', () => {
64
+ test(`skips redundant error logged within ${THROTTLE_INTERVAL / SECOND}s`, () => {
64
65
  const errorEntry = { ...entry, error: new Error('Oops!') };
65
- const THROTTLE_INTERVAL = 30 * SECOND;
66
66
  const { log, logStorage } = subject();
67
67
 
68
68
  Array.from({ length: 5 }).forEach(() => log.error(errorEntry));
69
- jest.advanceTimersByTime(THROTTLE_INTERVAL - 1);
69
+ jest.advanceTimersByTime(THROTTLE_INTERVAL);
70
+
71
+ expect(logStorage.store).toHaveBeenCalledTimes(1);
72
+ });
73
+
74
+ test(`keeps redundant error logged after ${THROTTLE_INTERVAL / SECOND}s`, () => {
75
+ const errorEntry = { ...entry, error: new Error('Oops!') };
76
+ const { log, logStorage } = subject();
77
+
70
78
  Array.from({ length: 5 }).forEach(() => log.error(errorEntry));
79
+ jest.advanceTimersByTime(THROTTLE_INTERVAL);
80
+ Array.from({ length: 5 }).forEach(() => log.error(errorEntry));
81
+ jest.runOnlyPendingTimers();
71
82
 
72
- // Note: 2x because current implementation immediately flushes first entry
73
83
  expect(logStorage.store).toHaveBeenCalledTimes(2);
74
84
  });
75
85
 
package/src/log.tsx CHANGED
@@ -143,7 +143,10 @@ class ErrorLogHandler {
143
143
  private readonly cacheFlushDuration = 30000;
144
144
  private readonly throttleLogsDuration = 2000;
145
145
 
146
- private flushThrottled = throttle(() => this.flush(), this.throttleLogsDuration);
146
+ private flushThrottled = throttle(() => this.flush(), this.throttleLogsDuration, {
147
+ leading: false,
148
+ trailing: true,
149
+ });
147
150
 
148
151
  constructor(logService: Log, logStorage: LogStorage) {
149
152
  this.logService = logService;
@@ -193,7 +196,7 @@ class ErrorLogHandler {
193
196
  const entry = this.logTable.get(key);
194
197
 
195
198
  if ('count' in entry.data) {
196
- /* insert into cache if it is a repitative error */
199
+ /* insert into cache if it is a repetitive error */
197
200
  this.repetitiveLogsCache.set(key, true);
198
201
  }
199
202