1 | Object.defineProperty(exports, "__esModule", { value: true });
|
2 | exports.logger = exports.init = exports.setLogLevel = exports.LOG_LEVEL = exports.formatTable = void 0;
|
3 | const node_1 = require("@sentry/node");
|
4 | const Table = require("cli-table");
|
5 | const consola = require("consola");
|
6 | exports.logger = consola;
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 | function formatTable(options, values) {
|
14 | const table = new Table(options);
|
15 | table.push(...values);
|
16 | return table.toString();
|
17 | }
|
18 | exports.formatTable = formatTable;
|
19 |
|
20 |
|
21 |
|
22 |
|
23 | var LOG_LEVEL;
|
24 | (function (LOG_LEVEL) {
|
25 | LOG_LEVEL[LOG_LEVEL["ERROR"] = 0] = "ERROR";
|
26 | LOG_LEVEL[LOG_LEVEL["WARN"] = 1] = "WARN";
|
27 | LOG_LEVEL[LOG_LEVEL["INFO"] = 2] = "INFO";
|
28 | LOG_LEVEL[LOG_LEVEL["SUCCESS"] = 3] = "SUCCESS";
|
29 | LOG_LEVEL[LOG_LEVEL["DEBUG"] = 4] = "DEBUG";
|
30 | LOG_LEVEL[LOG_LEVEL["TRACE"] = 4] = "TRACE";
|
31 | })(LOG_LEVEL = exports.LOG_LEVEL || (exports.LOG_LEVEL = {}));
|
32 |
|
33 | class SentryBreadcrumbReporter {
|
34 |
|
35 | log(logEntry) {
|
36 | const breadcrumb = {
|
37 | message: `${logEntry.message}\n${logEntry.additional}`,
|
38 | level: logEntry.type,
|
39 | };
|
40 | node_1.addBreadcrumb(breadcrumb);
|
41 | }
|
42 | }
|
43 |
|
44 |
|
45 |
|
46 | function getLogLevelFromEnv() {
|
47 | const logLevelName = (process.env.CRAFT_LOG_LEVEL || '').toUpperCase();
|
48 | const logLevelNumber = LOG_LEVEL[logLevelName];
|
49 | return logLevelNumber !== null && logLevelNumber !== void 0 ? logLevelNumber : consola.level;
|
50 | }
|
51 |
|
52 |
|
53 |
|
54 |
|
55 | function setLogLevel(logLevel) {
|
56 | consola.level = logLevel;
|
57 | }
|
58 | exports.setLogLevel = setLogLevel;
|
59 | let initialized = false;
|
60 |
|
61 |
|
62 |
|
63 |
|
64 | function init(logLevel) {
|
65 | if (initialized) {
|
66 | consola.warn('Logger already initialized, ignoring duplicate init.');
|
67 | }
|
68 | setLogLevel(logLevel !== undefined ? logLevel : getLogLevelFromEnv());
|
69 | consola.reporters.push(new SentryBreadcrumbReporter());
|
70 | initialized = true;
|
71 | return consola;
|
72 | }
|
73 | exports.init = init;
|
74 | setLogLevel(getLogLevelFromEnv());
|
75 |
|
\ | No newline at end of file |