UNPKG

@lx-frontend/multi-track

Version:

sls 日志上传功能,当前支持小程序、web

84 lines 2.58 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MiniTrack = void 0; var tslib_1 = require("tslib"); var track_1 = require("./track"); /** * 小程序日志上报 * * @example * * ```ts * const track = new MiniTrack({ * slsOptions: { * host: 'https://sls.aliyuncs.com', * project: 'your-project', * logstore: 'your-logstore', * topic: 'your-topic', * source: 'your-source', * tags: { * tag1: 'value1', * tag2: 'value2', * }, * }, * trackOptions: { * maxQueueSize: 10, * debounceTime: 1000, * persistLogs: false, * localStorageKey: 'your-local-storage-key', * uploadEnabled: true, * }, * sendPayload: (logs) => logs, * }) * ``` */ var MiniTrack = /** @class */ (function (_super) { tslib_1.__extends(MiniTrack, _super); function MiniTrack(trackConfig) { var _this = this; var sendPayload = trackConfig.sendPayload; _this = _super.call(this, trackConfig) || this; _this._format = sendPayload !== null && sendPayload !== void 0 ? sendPayload : (function (logs) { return logs; }); return _this; } MiniTrack.prototype.format = function (log) { return this._format(log); }; /** * 小程序上报日志 * * @param payload * @param headers * @returns */ MiniTrack.prototype._upload = function (payload, headers) { return tslib_1.__awaiter(this, void 0, void 0, function () { var _this = this; return tslib_1.__generator(this, function (_a) { return [2 /*return*/, new Promise(function (resolve, reject) { wx.request({ url: _this.generateSlsUrl(), method: 'POST', header: headers, data: payload, success: function (res) { resolve(res); }, fail: function (failRes) { reject(failRes); }, }); })]; }); }); }; MiniTrack.prototype._getStorage = function (key) { return wx.getStorageSync(key); }; MiniTrack.prototype._setStorage = function (key, value) { wx.setStorageSync(key, value); }; return MiniTrack; }(track_1.Track)); exports.MiniTrack = MiniTrack; //# sourceMappingURL=mini.js.map