UNPKG

4.13 kBJavaScriptView Raw
1"use strict";
2var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4 return new (P || (P = Promise))(function (resolve, reject) {
5 function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6 function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7 function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8 step((generator = generator.apply(thisArg, _arguments || [])).next());
9 });
10};
11var __importDefault = (this && this.__importDefault) || function (mod) {
12 return (mod && mod.__esModule) ? mod : { "default": mod };
13};
14Object.defineProperty(exports, "__esModule", { value: true });
15const ws_1 = __importDefault(require("./communication/ws"));
16const collector_1 = __importDefault(require("./collection/collector"));
17const OsCollector_1 = __importDefault(require("./collection/OsCollector"));
18const NpmCollector_1 = __importDefault(require("./collection/NpmCollector"));
19const GitCollector_1 = __importDefault(require("./collection/GitCollector"));
20const HttpReporter_1 = __importDefault(require("./reporters/HttpReporter"));
21const NodeHttpReporter_1 = __importDefault(require("./reporters/NodeHttpReporter"));
22const aspectoConfig_1 = __importDefault(require("./config/aspectoConfig"));
23const ErrorReporter_1 = __importDefault(require("./reporters/ErrorReporter"));
24const XMLHttpReporter_1 = __importDefault(require("./reporters/XMLHttpReporter"));
25const IdCollector_1 = __importDefault(require("./collection/IdCollector"));
26const config_1 = require("./config");
27const ConfigService_1 = __importDefault(require("./config/ConfigService"));
28exports.init = (options) => __awaiter(void 0, void 0, void 0, function* () {
29 var _a, _b, _c, _d, _e, _f, _g;
30 try {
31 aspectoConfig_1.default.blacklist = (_a = options) === null || _a === void 0 ? void 0 : _a.blacklist;
32 if ((_b = options) === null || _b === void 0 ? void 0 : _b.samplingRatio) {
33 aspectoConfig_1.default.setSamplingRatio(options.samplingRatio);
34 }
35 else {
36 aspectoConfig_1.default.setSamplingRatio();
37 }
38 const collectors = [];
39 if (config_1.isNode) {
40 collectors.push(new HttpReporter_1.default());
41 collectors.push(new ErrorReporter_1.default());
42 if (((_c = options) === null || _c === void 0 ? void 0 : _c.outgoing) !== false) {
43 collectors.push(new NodeHttpReporter_1.default());
44 }
45 }
46 else {
47 if (((_d = options) === null || _d === void 0 ? void 0 : _d.outgoing) !== false) {
48 collectors.push(new XMLHttpReporter_1.default());
49 }
50 }
51 const auth = aspectoConfig_1.default.getToken(options);
52 yield ConfigService_1.default.init({ token: auth });
53 const config = yield ConfigService_1.default.config;
54 let ws = new ws_1.default(config_1.getCollectorEndpoint(((_e = options) === null || _e === void 0 ? void 0 : _e.sendTrafficTo) || config.collectorUrl));
55 collectors.forEach((c) => c.set(ws, auth));
56 const allowed = yield ws.auth(auth);
57 if (!allowed) {
58 console.error("Aspecto wasn't able to authenticate on your behalf");
59 return;
60 }
61 const collector = new collector_1.default(ws, (_f = options) === null || _f === void 0 ? void 0 : _f.packageName, (_g = options) === null || _g === void 0 ? void 0 : _g.packageVersion);
62 collector.addCollection(new OsCollector_1.default());
63 if (config_1.isNode) {
64 collector.addCollection(new NpmCollector_1.default());
65 collector.addCollection(new GitCollector_1.default());
66 }
67 else {
68 collector.addCollection(new IdCollector_1.default());
69 }
70 }
71 catch (e) {
72 console.error(`Failed to init Aspecto - ${e.message}`);
73 }
74});
75//# sourceMappingURL=index.js.map
\No newline at end of file