From e6578e06d0b7464808d5267f674425825c6c2a3d Mon Sep 17 00:00:00 2001 From: Julian Gruber Date: Wed, 27 Mar 2024 10:11:11 -0700 Subject: [PATCH] Add `#onReportLogs(logs)` (#64) * add `#onReportLogs(logs)` Overwrite this function to handle logs yourself in addition to the Saturn pipeline. * use parameter instead * Update src/client.js --------- Co-authored-by: Hannah Howard --- src/client.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/client.js b/src/client.js index 52f995e..e056a17 100644 --- a/src/client.js +++ b/src/client.js @@ -36,6 +36,7 @@ export class Saturn { * @param {number} [config.fallbackLimit] * @param {boolean} [config.experimental] * @param {string} [config.format] + * @param {Function} [config.onReportLogs] * @param {import('./storage/index.js').Storage} [config.storage] */ constructor (config = {}) { @@ -61,6 +62,7 @@ export class Saturn { this._monitorPerformanceBuffer() } this.storage = this.config.storage || memoryStorage() + this.onReportLogs = this.config.onReportLogs || ((_logs) => {}) this.loadNodesPromise = this.config.experimental ? this._loadNodes(this.config) : null this.authLimiter = pLimit(1) } @@ -488,6 +490,7 @@ export class Saturn { body: JSON.stringify({ bandwidthLogs, logSender: this.config.logSender }) } ) + this.onReportLogs(bandwidthLogs) } catch (e) { console.log(e) throw e @@ -495,7 +498,6 @@ export class Saturn { this.logs = [] this._clearPerformanceBuffer() } - } /**