UNPKG

advanced-logger

Version:

Advanced logger module extendable with plugins. Works in nodejs and browsers

830 lines (730 loc) 33.5 kB
/******/ (() => { // webpackBootstrap /******/ "use strict"; /******/ var __webpack_modules__ = ({ /***/ "./src/AdvancedLogger.ts": /*!*******************************!*\ !*** ./src/AdvancedLogger.ts ***! \*******************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ AdvancedLogger) /* harmony export */ }); /* harmony import */ var _LogStore__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./LogStore */ "./src/LogStore.ts"); var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; /** * Uses different strategies to submit logs to log server via Service facade. */ class AdvancedLogger { constructor(configuration) { this.configuration = configuration; this.logStore = new _LogStore__WEBPACK_IMPORTED_MODULE_0__["default"]({ transformations: this.configuration.transformations }); this.strategy = this.configuration.strategy; this.service = this.configuration.service; // todo Where is it better to subscribe? this.logStore.eventEmitter.on("add", this.onAdd.bind(this)); this.logStore.eventEmitter.on("clear", this.onClear.bind(this)); this.logStore.eventEmitter.on("error", this.onStoreError.bind(this)); this.strategy.eventEmitter.on("send", this.onSend.bind(this)); this.strategy.eventEmitter.on("error", this.onStrategyError.bind(this)); } log(log) { this.logStore.add(log); } /** * Forces strategy to initiate logs sending */ sendAllLogs() { this.strategy.sendAll(); } destroy() { this.logStore.destroy(); this.strategy.destroy(); this.service.destroy(); } onStoreError(error) { console.error(error); } onAdd(info) { this.strategy.onAdd(info); } onClear() { this.strategy.onClear(); } onStrategyError(error) { console.error(error); } onSend() { return __awaiter(this, void 0, void 0, function* () { if (this.logStore.size() > 0) { const logs = this.logStore.getAll(); // We need to clear store as soon as we received request to send all logs this.logStore.clear(); try { yield this.service.sendAllLogs(logs); } catch (error) { console.error(error); } } }); } } /***/ }), /***/ "./src/LogStore.ts": /*!*************************!*\ !*** ./src/LogStore.ts ***! \*************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ LogStore) /* harmony export */ }); /* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! events */ "events"); /* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(events__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var lodash_throttle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/throttle */ "lodash/throttle"); /* harmony import */ var lodash_throttle__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_throttle__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _util_LogUtils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./util/LogUtils */ "./src/util/LogUtils.ts"); /* harmony import */ var _enums_TransformationEnum__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./enums/TransformationEnum */ "./src/enums/TransformationEnum.ts"); class LogStore { constructor(config) { this.groupLeftIndex = -1; this.logs = []; this.eventEmitter = new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter(); this.config = config; this.identityMap = new Map(); if (this.config.transformations) { const groupableConfig = this.config.transformations .find(value => value.type === _enums_TransformationEnum__WEBPACK_IMPORTED_MODULE_3__.TransformationEnum.RAPID_FIRE_GROUPING); if (groupableConfig) { this.groupableConfig = groupableConfig.configuration; this.throttledOnGroupFinalize = lodash_throttle__WEBPACK_IMPORTED_MODULE_1___default()(this.onGroupFinalize.bind(this), this.groupableConfig.interval, { trailing: true, leading: false }); //todo Maybe, move to add method this.eventEmitter.on("add", this.throttledOnGroupFinalize); } } } add(log) { if (this.groupableConfig) { const id = _util_LogUtils__WEBPACK_IMPORTED_MODULE_2__["default"].getLogIdByFields(log, this.groupableConfig.groupIdentityFields); if (!this.identityMap.has(id)) { this.logs.push(log); } this.onAddToGroup(log); } else { this.logs.push(log); } this.eventEmitter.emit("add", { logCount: this.size() }); } clear() { this.logs.length = 0; this.eventEmitter.emit("clear"); } getAll() { if (this.throttledOnGroupFinalize) { this.throttledOnGroupFinalize.flush(); } return this.logs.slice(); } size() { return this.logs.length; } destroy() { if (this.throttledOnGroupFinalize) { this.throttledOnGroupFinalize.cancel(); } this.logs.splice(0); this.eventEmitter.removeAllListeners(); } onAddToGroup(log) { const logId = _util_LogUtils__WEBPACK_IMPORTED_MODULE_2__["default"].getLogIdByFields(log, this.groupableConfig.groupIdentityFields); if (this.identityMap.has(logId)) { const savedCounter = this.identityMap.get(logId); this.identityMap.set(logId, (savedCounter || 0) + 1); } else { this.identityMap.set(logId, 1); } } onGroupFinalize() { // Apply grouping counters from Map to logs range from left index to the last const len = this.logs.length; if (len > 0) { for (let i = this.groupLeftIndex !== -1 ? this.groupLeftIndex : 0; i < len; i++) { const log = this.logs[i]; const id = _util_LogUtils__WEBPACK_IMPORTED_MODULE_2__["default"].getLogIdByFields(log, this.groupableConfig.groupIdentityFields); Object.assign(log, { [this.groupableConfig.groupFieldName]: this.identityMap.has(id) ? this.identityMap.get(id) : 1 }); } } this.groupLeftIndex = len > 0 ? len - 1 : -1; this.identityMap.clear(); } } /***/ }), /***/ "./src/enums/TransformationEnum.ts": /*!*****************************************!*\ !*** ./src/enums/TransformationEnum.ts ***! \*****************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ TransformationEnum: () => (/* binding */ TransformationEnum) /* harmony export */ }); var TransformationEnum; (function (TransformationEnum) { TransformationEnum[TransformationEnum["RAPID_FIRE_GROUPING"] = 0] = "RAPID_FIRE_GROUPING"; })(TransformationEnum || (TransformationEnum = {})); /***/ }), /***/ "./src/service/BaseRemoteService.ts": /*!******************************************!*\ !*** ./src/service/BaseRemoteService.ts ***! \******************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ BaseRemoteService) /* harmony export */ }); /* harmony import */ var fast_safe_stringify__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! fast-safe-stringify */ "fast-safe-stringify"); /* harmony import */ var fast_safe_stringify__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fast_safe_stringify__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _util_http__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../util/http */ "./src/util/http.ts"); /* harmony import */ var _util_LogUtils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../util/LogUtils */ "./src/util/LogUtils.ts"); var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; class BaseRemoteService { constructor(config) { this.serviceConfig = Object.assign({}, config.serviceConfig); this.defaultLogConfig = Object.assign({}, config.defaultLogConfig); // optional serializer override if (config.serializer) { this.serializer = config.serializer; } } serializer(log) { return _util_LogUtils__WEBPACK_IMPORTED_MODULE_2__["default"].tryJSONStringify(log) || fast_safe_stringify__WEBPACK_IMPORTED_MODULE_0___default()(log); } sendAllLogs(logs) { var _a, _b, _c, _d, _e, _f; return __awaiter(this, void 0, void 0, function* () { const payload = yield this.preparePayload(logs); const headers = this.getHeaders(); try { return yield _util_http__WEBPACK_IMPORTED_MODULE_1__["default"].request(this.serviceConfig, headers, payload); } catch (error) { if (((_b = (_a = this.serviceConfig) === null || _a === void 0 ? void 0 : _a.retryAttempts) !== null && _b !== void 0 ? _b : 0) > 0) { return _util_http__WEBPACK_IMPORTED_MODULE_1__["default"].delayedRetry((_d = (_c = this.serviceConfig) === null || _c === void 0 ? void 0 : _c.retryAttempts) !== null && _d !== void 0 ? _d : 0, (_f = (_e = this.serviceConfig) === null || _e === void 0 ? void 0 : _e.retryInterval) !== null && _f !== void 0 ? _f : 0, _util_http__WEBPACK_IMPORTED_MODULE_1__["default"].request.bind(this, this.serviceConfig, headers, payload)); } else { throw error; } } }); } preparePayload(logs) { return __awaiter(this, void 0, void 0, function* () { const resultList = logs.map(log => this.serializer(Object.assign(Object.assign({}, this.defaultLogConfig), log))); return resultList.join("\n"); }); } destroy() { } ; /** * Returns object for headers config * @example * {"Content-Type": "text/plain"} */ getHeaders() { return {}; } } /***/ }), /***/ "./src/service/ConsoleService.ts": /*!***************************************!*\ !*** ./src/service/ConsoleService.ts ***! \***************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ ConsoleService) /* harmony export */ }); var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; /** * Console reporting service for debugging purposes */ class ConsoleService { preparePayload(logs) { return __awaiter(this, void 0, void 0, function* () { return logs.map(log => this.serializer(log)); }); } sendAllLogs(logs) { return __awaiter(this, void 0, void 0, function* () { console.log(logs); }); } destroy() { //nothing to do here } serializer(log) { return log; } } /***/ }), /***/ "./src/service/ElasticsearchService.ts": /*!*********************************************!*\ !*** ./src/service/ElasticsearchService.ts ***! \*********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ ElasticsearchService) /* harmony export */ }); /* harmony import */ var _BaseRemoteService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./BaseRemoteService */ "./src/service/BaseRemoteService.ts"); var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; const DEFAULT_INDEX_FIELD = "Index"; const DEFAULT_INDEX_VALUE = "index"; class ElasticsearchService extends _BaseRemoteService__WEBPACK_IMPORTED_MODULE_0__["default"] { preparePayload(logs) { return __awaiter(this, void 0, void 0, function* () { const resultList = []; logs.forEach(log => { const finalLog = Object.assign(Object.assign({}, this.defaultLogConfig), log); resultList.push(this.serializer(this.getLogMetaConfig(finalLog[this.serviceConfig.logMetaIndexField || DEFAULT_INDEX_FIELD]))); resultList.push(this.serializer(finalLog)); }); return `${resultList.join("\n")}\n`; }); } getHeaders() { return { "Content-Type": "application/json" }; } getLogMetaConfig(index) { return { index: { _index: index || DEFAULT_INDEX_VALUE, _type: "_doc" } }; } } /***/ }), /***/ "./src/service/LogglyService.ts": /*!**************************************!*\ !*** ./src/service/LogglyService.ts ***! \**************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ LogglyService) /* harmony export */ }); /* harmony import */ var _BaseRemoteService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./BaseRemoteService */ "./src/service/BaseRemoteService.ts"); class LogglyService extends _BaseRemoteService__WEBPACK_IMPORTED_MODULE_0__["default"] { getHeaders() { return { "Content-Type": "text/plain" }; } } /***/ }), /***/ "./src/service/SumologicService.ts": /*!*****************************************!*\ !*** ./src/service/SumologicService.ts ***! \*****************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ SumologicService) /* harmony export */ }); /* harmony import */ var _BaseRemoteService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./BaseRemoteService */ "./src/service/BaseRemoteService.ts"); class SumologicService extends _BaseRemoteService__WEBPACK_IMPORTED_MODULE_0__["default"] { getHeaders() { const serviceConfig = this.serviceConfig; return { "Content-Type": "application/json", //todo Optional? "X-Sumo-Category": serviceConfig.sourceCategory, //todo Optional? "X-Sumo-Host": serviceConfig.host, //todo Optional? "X-Sumo-Name": serviceConfig.sourceName }; } } /***/ }), /***/ "./src/strategy/InstantStrategy.ts": /*!*****************************************!*\ !*** ./src/strategy/InstantStrategy.ts ***! \*****************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ InstantStrategy) /* harmony export */ }); /* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! events */ "events"); /* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(events__WEBPACK_IMPORTED_MODULE_0__); class InstantStrategy { constructor() { this.eventEmitter = new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter(); } onAdd(info) { this.eventEmitter.emit("send"); //console.log("InstantStrategy#sent"); } onClear() { // Ignore log list change //console.log("InstantStrategy#cleared"); } sendAll() { // This strategy sends all logs separately } destroy() { this.eventEmitter.removeAllListeners(); } } /***/ }), /***/ "./src/strategy/OnBundleSizeStrategy.ts": /*!**********************************************!*\ !*** ./src/strategy/OnBundleSizeStrategy.ts ***! \**********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ OnBundleSizeStrategy) /* harmony export */ }); /* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! events */ "events"); /* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(events__WEBPACK_IMPORTED_MODULE_0__); class OnBundleSizeStrategy { constructor(config) { /** * @type {number} */ this.MAX_BUNDLE_SIZE = 100; this.eventEmitter = new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter(); if (config.maxBundle) { this.MAX_BUNDLE_SIZE = config.maxBundle; } } onAdd(info) { if (info && info.logCount >= this.MAX_BUNDLE_SIZE) { this.eventEmitter.emit("send"); } else { //console.log("Not enough logs so far"); } } onClear() { // Ignore log list change //console.log("OnBundleSizeStrategy#cleared"); } sendAll() { this.eventEmitter.emit("send"); } destroy() { this.eventEmitter.removeAllListeners(); } } /***/ }), /***/ "./src/strategy/OnIntervalStrategy.ts": /*!********************************************!*\ !*** ./src/strategy/OnIntervalStrategy.ts ***! \********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ OnIntervalStrategy) /* harmony export */ }); /* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! events */ "events"); /* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(events__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var lodash_throttle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lodash/throttle */ "lodash/throttle"); /* harmony import */ var lodash_throttle__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash_throttle__WEBPACK_IMPORTED_MODULE_1__); class OnIntervalStrategy { constructor(config) { this.SEND_INTERVAL = 15000; this.eventEmitter = new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter(); if (config.interval) { this.SEND_INTERVAL = config.interval; } this.intervalSend = lodash_throttle__WEBPACK_IMPORTED_MODULE_1___default()(this.send.bind(this), this.SEND_INTERVAL, { leading: false, trailing: true }); } onAdd(info) { if (info && info.logCount > 0) { this.intervalSend(); } } onClear() { // Ignore log list change //console.log("OnIntervalStrategy#cleared"); } sendAll() { this.eventEmitter.emit("send"); } destroy() { this.eventEmitter.removeAllListeners(); } send() { this.eventEmitter.emit("send"); } } /***/ }), /***/ "./src/strategy/OnRequestStrategy.ts": /*!*******************************************!*\ !*** ./src/strategy/OnRequestStrategy.ts ***! \*******************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (/* binding */ OnRequestStrategy) /* harmony export */ }); /* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! events */ "events"); /* harmony import */ var events__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(events__WEBPACK_IMPORTED_MODULE_0__); class OnRequestStrategy { constructor() { this.eventEmitter = new events__WEBPACK_IMPORTED_MODULE_0__.EventEmitter(); } onAdd(info) { // Ignore log list change } onClear() { // Ignore log list change //console.log("OnRequestStrategy#cleared"); } sendAll() { this.eventEmitter.emit("send"); } destroy() { this.eventEmitter.removeAllListeners(); } } /***/ }), /***/ "./src/util/LogUtils.ts": /*!******************************!*\ !*** ./src/util/LogUtils.ts ***! \******************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); const DELIMETER = "-"; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({ getLogIdByFields(log, fields) { return fields.map(field => `${field}${DELIMETER}${log[field]}`).join(DELIMETER); }, /** * It is necessary to convert objects safely, otherwise we can lost the whole log bundle */ tryJSONStringify(obj) { try { return JSON.stringify(obj); } catch (_) { //ignore the error return ""; } } }); /***/ }), /***/ "./src/util/http.ts": /*!**************************!*\ !*** ./src/util/http.ts ***! \**************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__) /* harmony export */ }); /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! axios */ "axios"); /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__); const http = { request(serviceConfig, headers, payload) { return axios__WEBPACK_IMPORTED_MODULE_0___default().request({ method: serviceConfig.method, headers, url: serviceConfig.url, data: payload }); }, delayedRetry(retries, delay, fn) { return new Promise((resolve, reject) => { setTimeout(() => fn().then(resolve).catch(reject), delay); }) .catch(error => retries > 1 ? http.delayedRetry(retries - 1, delay, fn) : Promise.reject(error)); } }; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (http); /***/ }), /***/ "events": /*!*************************!*\ !*** external "events" ***! \*************************/ /***/ ((module) => { module.exports = require("events"); /***/ }), /***/ "fast-safe-stringify": /*!**************************************!*\ !*** external "fast-safe-stringify" ***! \**************************************/ /***/ ((module) => { module.exports = require("fast-safe-stringify"); /***/ }), /***/ "lodash/throttle": /*!**********************************!*\ !*** external "lodash/throttle" ***! \**********************************/ /***/ ((module) => { module.exports = require("lodash/throttle"); /***/ }), /***/ "axios": /*!************************!*\ !*** external "axios" ***! \************************/ /***/ ((module) => { module.exports = require("axios"); /***/ }) /******/ }); /************************************************************************/ /******/ // The module cache /******/ var __webpack_module_cache__ = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ // Check if module is in cache /******/ var cachedModule = __webpack_module_cache__[moduleId]; /******/ if (cachedModule !== undefined) { /******/ return cachedModule.exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = __webpack_module_cache__[moduleId] = { /******/ // no module.id needed /******/ // no module.loaded needed /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /************************************************************************/ /******/ /* webpack/runtime/compat get default export */ /******/ (() => { /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = (module) => { /******/ var getter = module && module.__esModule ? /******/ () => (module['default']) : /******/ () => (module); /******/ __webpack_require__.d(getter, { a: getter }); /******/ return getter; /******/ }; /******/ })(); /******/ /******/ /* webpack/runtime/define property getters */ /******/ (() => { /******/ // define getter functions for harmony exports /******/ __webpack_require__.d = (exports, definition) => { /******/ for(var key in definition) { /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); /******/ } /******/ } /******/ }; /******/ })(); /******/ /******/ /* webpack/runtime/hasOwnProperty shorthand */ /******/ (() => { /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop)) /******/ })(); /******/ /******/ /* webpack/runtime/make namespace object */ /******/ (() => { /******/ // define __esModule on exports /******/ __webpack_require__.r = (exports) => { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ })(); /******/ /************************************************************************/ var __webpack_exports__ = {}; // This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk. (() => { /*!**********************!*\ !*** ./src/index.ts ***! \**********************/ __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ AdvancedLogger: () => (/* reexport safe */ _AdvancedLogger__WEBPACK_IMPORTED_MODULE_0__["default"]), /* harmony export */ TransformationEnum: () => (/* reexport safe */ _enums_TransformationEnum__WEBPACK_IMPORTED_MODULE_1__.TransformationEnum), /* harmony export */ service: () => (/* binding */ service), /* harmony export */ strategy: () => (/* binding */ strategy) /* harmony export */ }); /* harmony import */ var _AdvancedLogger__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./AdvancedLogger */ "./src/AdvancedLogger.ts"); /* harmony import */ var _enums_TransformationEnum__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./enums/TransformationEnum */ "./src/enums/TransformationEnum.ts"); /* harmony import */ var _service_BaseRemoteService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./service/BaseRemoteService */ "./src/service/BaseRemoteService.ts"); /* harmony import */ var _service_ConsoleService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./service/ConsoleService */ "./src/service/ConsoleService.ts"); /* harmony import */ var _service_ElasticsearchService__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./service/ElasticsearchService */ "./src/service/ElasticsearchService.ts"); /* harmony import */ var _service_LogglyService__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./service/LogglyService */ "./src/service/LogglyService.ts"); /* harmony import */ var _service_SumologicService__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./service/SumologicService */ "./src/service/SumologicService.ts"); /* harmony import */ var _strategy_InstantStrategy__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./strategy/InstantStrategy */ "./src/strategy/InstantStrategy.ts"); /* harmony import */ var _strategy_OnBundleSizeStrategy__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./strategy/OnBundleSizeStrategy */ "./src/strategy/OnBundleSizeStrategy.ts"); /* harmony import */ var _strategy_OnIntervalStrategy__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./strategy/OnIntervalStrategy */ "./src/strategy/OnIntervalStrategy.ts"); /* harmony import */ var _strategy_OnRequestStrategy__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./strategy/OnRequestStrategy */ "./src/strategy/OnRequestStrategy.ts"); const strategy = { InstantStrategy: _strategy_InstantStrategy__WEBPACK_IMPORTED_MODULE_7__["default"], OnBundleSizeStrategy: _strategy_OnBundleSizeStrategy__WEBPACK_IMPORTED_MODULE_8__["default"], OnRequestStrategy: _strategy_OnRequestStrategy__WEBPACK_IMPORTED_MODULE_10__["default"], OnIntervalStrategy: _strategy_OnIntervalStrategy__WEBPACK_IMPORTED_MODULE_9__["default"] }; const service = { BaseRemoteService: _service_BaseRemoteService__WEBPACK_IMPORTED_MODULE_2__["default"], SumologicService: _service_SumologicService__WEBPACK_IMPORTED_MODULE_6__["default"], LogglyService: _service_LogglyService__WEBPACK_IMPORTED_MODULE_5__["default"], ConsoleService: _service_ConsoleService__WEBPACK_IMPORTED_MODULE_3__["default"], ElasticsearchService: _service_ElasticsearchService__WEBPACK_IMPORTED_MODULE_4__["default"] }; })(); module.exports.advancedLogger = __webpack_exports__; /******/ })() ; //# sourceMappingURL=advanced-logger.node.js.map