X-Git-Url: http://git.squeep.com/?p=squeep-indie-auther;a=blobdiff_plain;f=src%2Fcommon.js;fp=src%2Fcommon.js;h=90ae9d2e8e982664e148e641af3afca2b03ba4a9;hp=d58f53525812e9ff5e4790972e4936ceb7dd743c;hb=07bf59d8ac7f5fc6d5ac5e6b92a37afdbb896790;hpb=7d0017cc3700b2c2b1b89944ab9eb305de362dd1 diff --git a/src/common.js b/src/common.js index d58f535..90ae9d2 100644 --- a/src/common.js +++ b/src/common.js @@ -151,6 +151,28 @@ const dateToEpoch = (date) => { return Math.ceil(dateMs / 1000); }; + +const omit = (o, props) => { + return Object.fromEntries(Object.entries(o).filter(([k]) => !props.includes(k))) +}; + + +/** + * Log Mystery Box statistics events. + * @param {Console} logger + * @param {String} scope + */ +const mysteryBoxLogger = (logger, scope) => { + return (s) => { + logger.debug(scope, `${s.packageName}@${s.packageVersion}:${s.method}`, omit(s, [ + 'packageName', + 'packageVersion', + 'method', + ])); + }; +}; + + module.exports = { ...common, axiosResponseLogData, @@ -159,7 +181,9 @@ module.exports = { ensureArray, freezeDeep, logTruncate, + mysteryBoxLogger, newSecret, + omit, randomBytesAsync, validScope, validError,