@vrplatform/log 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.requestToContext = exports.getHeaderMap = exports.mergeFn = exports.isDev = exports.getCorrelationId = exports.requestHeadersToCapture = exports.LOG_ENV = exports.AXIOM_DATASET_ENV = exports.AXIOM_ORG_ID_ENV = exports.AXIOM_AUTH_TOKEN_ENV = exports.VERIFICATION_HEADER = exports.CORRELATION_ID_HEADER = exports.TASK_QUEUE_HEADER = exports.WORKFLOW_ID_HEADER = exports.CONNECTION_ID_HEADER = void 0;
4
+ // Headers
5
+ exports.CONNECTION_ID_HEADER = 'X-Connection-ID';
6
+ exports.WORKFLOW_ID_HEADER = 'X-Workflow-ID';
7
+ exports.TASK_QUEUE_HEADER = 'X-Task-Queue';
8
+ exports.CORRELATION_ID_HEADER = 'X-Correlation-ID';
9
+ exports.VERIFICATION_HEADER = 'X-Verification-Key';
10
+ // Env
11
+ exports.AXIOM_AUTH_TOKEN_ENV = 'AXIOM_AUTH_TOKEN';
12
+ exports.AXIOM_ORG_ID_ENV = 'AXIOM_ORG_ID';
13
+ exports.AXIOM_DATASET_ENV = 'AXIOM_DATASET';
14
+ exports.LOG_ENV = 'LOG';
15
+ exports.requestHeadersToCapture = ['user-agent'];
16
+ function getCorrelationId(request) {
17
+ if (!request?.headers)
18
+ return undefined;
19
+ return (request.headers.get(exports.CORRELATION_ID_HEADER) ||
20
+ request.headers.get('fi-correlation-id') ||
21
+ request.headers.get('x-correlation-id') ||
22
+ request.headers.get('correlation-id') ||
23
+ request.headers.get('x-transaction-id') ||
24
+ request.headers.get('transaction-id') ||
25
+ request.headers.get('cf-ray') ||
26
+ request.headers.get('cf-request-id') ||
27
+ request.headers.get('request-id') ||
28
+ undefined);
29
+ }
30
+ exports.getCorrelationId = getCorrelationId;
31
+ function isDev(request) {
32
+ return request?.url?.startsWith('http://localhost:');
33
+ }
34
+ exports.isDev = isDev;
35
+ function mergeFn(fn, obj) {
36
+ return Object.assign(fn, obj);
37
+ }
38
+ exports.mergeFn = mergeFn;
39
+ function getHeaderMap(headers, allowlist = []) {
40
+ if (!allowlist.length || !headers) {
41
+ return {};
42
+ }
43
+ return [...headers].reduce((acc, [headerKey, headerValue]) => {
44
+ if (allowlist.includes(headerKey)) {
45
+ acc[headerKey] = headerValue;
46
+ }
47
+ return acc;
48
+ }, {});
49
+ }
50
+ exports.getHeaderMap = getHeaderMap;
51
+ function requestToContext(request, body) {
52
+ if (!request)
53
+ return {};
54
+ const cf = {};
55
+ if (request?.cf) {
56
+ // delete does not work so we copy into a new object
57
+ for (const [key, value] of Object.entries(request.cf)) {
58
+ if (key !== 'tlsClientAuth' && key !== 'tlsExportedAuthenticator') {
59
+ cf[key] = value;
60
+ }
61
+ }
62
+ }
63
+ return {
64
+ url: request?.url,
65
+ headers: getHeaderMap(request?.headers, exports.requestHeadersToCapture),
66
+ method: request?.method,
67
+ cloudflare: cf,
68
+ body: body || request.body || undefined,
69
+ };
70
+ }
71
+ exports.requestToContext = requestToContext;
72
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"src/","sources":["common.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { RequestLike, WorkerLog } from './type';
2
+ export * from './common';
3
+ export * from './baselog';
4
+ export * from './type';
5
+ export declare function useLog({ name, request, body, env, showStackTrace, correlationId: cid, version, executionContext, dataset: _dataset, }: {
6
+ name: string;
7
+ request?: RequestLike & {
8
+ cf?: any;
9
+ };
10
+ body?: any;
11
+ showStackTrace?: boolean;
12
+ correlationId?: string;
13
+ version?: string;
14
+ dataset?: string;
15
+ env?: Record<string, any>;
16
+ executionContext?: {
17
+ waitUntil(promise: Promise<any>): void;
18
+ };
19
+ }): WorkerLog;
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.useLog = void 0;
18
+ const baselog_1 = require("./baselog");
19
+ const common_1 = require("./common");
20
+ __exportStar(require("./common"), exports);
21
+ __exportStar(require("./baselog"), exports);
22
+ __exportStar(require("./type"), exports);
23
+ function useLog({ name, request, body, env, showStackTrace, correlationId: cid, version, executionContext, dataset: _dataset, }) {
24
+ const colorLogs = env?.[common_1.LOG_ENV] === '*';
25
+ if (showStackTrace === undefined)
26
+ showStackTrace = (0, common_1.isDev)(request);
27
+ const correlationId = cid || (0, common_1.getCorrelationId)(request); //const logger = nodeColorLog;
28
+ const axiomToken = env?.[common_1.AXIOM_AUTH_TOKEN_ENV];
29
+ const axiom = (0, baselog_1.createBaseLog)({
30
+ token: axiomToken,
31
+ orgId: env?.[common_1.AXIOM_ORG_ID_ENV],
32
+ dataset: _dataset || env?.[common_1.AXIOM_DATASET_ENV] || 'default',
33
+ consoleLog: colorLogs ? 'color' : false,
34
+ }, {
35
+ environment: (0, common_1.isDev)(request) ? 'development' : 'production',
36
+ type: 'worker',
37
+ executionContext,
38
+ workerId: env?.MACHINE_NAME || name || 'default',
39
+ app: name || 'default',
40
+ version: version || 'default',
41
+ correlationId,
42
+ context: {
43
+ rootCorrelationId: correlationId,
44
+ correlationId,
45
+ taskQueue: request?.headers?.get(common_1.TASK_QUEUE_HEADER) || undefined,
46
+ workflowId: request?.headers?.get(common_1.WORKFLOW_ID_HEADER) || undefined,
47
+ child: undefined,
48
+ },
49
+ });
50
+ axiom.info('Request', {
51
+ request: (0, common_1.requestToContext)(request, body),
52
+ });
53
+ axiom.respond = async (res) => {
54
+ const temp = await (typeof res === 'function' ? res() : res);
55
+ const { response, ...arg } = temp instanceof Response
56
+ ? {
57
+ body: undefined,
58
+ response: temp,
59
+ status: temp.status,
60
+ statusText: temp.statusText,
61
+ headers: temp.headers,
62
+ }
63
+ : temp;
64
+ const resp = response ||
65
+ new Response(typeof arg.body === 'object' ? JSON.stringify(arg.body) : arg.body, {
66
+ status: arg.status,
67
+ statusText: arg.statusText,
68
+ headers: arg.headers,
69
+ });
70
+ axiom?.info('Response', {
71
+ response,
72
+ });
73
+ await axiom?.flush();
74
+ return resp;
75
+ };
76
+ return axiom;
77
+ }
78
+ exports.useLog = useLog;
79
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"src/","sources":["index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ export type LogFn = (message: any, ...args: any[]) => void;
2
+ export type Log = {
3
+ error: LogFn;
4
+ info: LogFn;
5
+ debug: LogFn;
6
+ warn: LogFn;
7
+ child: (data: ChildLogOptions) => Log;
8
+ addContext: (data: Record<string, any>) => void;
9
+ };
10
+ export type ChildLogOptions = {
11
+ correlationId?: string;
12
+ name?: string;
13
+ request?: any;
14
+ context?: Record<string, any>;
15
+ };
16
+ type Res = Response | {
17
+ status: number;
18
+ statusText?: string;
19
+ headers?: Record<string, string>;
20
+ body?: any;
21
+ response?: Response;
22
+ };
23
+ export type BaseLog = Log & {
24
+ flush(): Promise<void> | void;
25
+ };
26
+ export type WorkerLog = BaseLog & {
27
+ respond(response: Res | Promise<Res> | (() => Res | Promise<Res>)): Promise<Response>;
28
+ };
29
+ export type RequestLike = {
30
+ headers: {
31
+ get: (key: string) => string | null;
32
+ };
33
+ method: string;
34
+ url: string;
35
+ json: () => Promise<any>;
36
+ };
37
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.js","sourceRoot":"src/","sources":["type.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ import type { BaseLog } from './type';
2
+ export * from './type';
3
+ export declare function createBaseLog({ token, orgId, dataset, consoleLog, }: {
4
+ token?: string;
5
+ orgId?: string;
6
+ dataset?: string;
7
+ consoleLog?: boolean | 'color';
8
+ }, { environment, workerId, app, version, context, type, correlationId, executionContext, }: {
9
+ correlationId?: string;
10
+ environment?: 'development' | 'production';
11
+ type?: 'worker' | 'durableObject';
12
+ workerId?: string;
13
+ app?: string;
14
+ version?: string;
15
+ context?: Record<string, any>;
16
+ executionContext?: {
17
+ waitUntil(promise: Promise<any>): void;
18
+ };
19
+ }): BaseLog;
@@ -0,0 +1,114 @@
1
+ import { getCorrelationId, requestToContext } from './common';
2
+ export * from './type';
3
+ import { Axiom } from '@axiomhq/js';
4
+ import { serializeError } from 'serialize-error';
5
+ import { logger } from './color';
6
+ let lastMessageTimestamp = undefined;
7
+ export function createBaseLog({ token, orgId = 'vrplatform-mv6k', dataset, consoleLog, }, { environment, workerId, app, version, context, type, correlationId, executionContext, }) {
8
+ const baseFields = {
9
+ type: type || 'worker',
10
+ environment: environment || 'production',
11
+ worker: {
12
+ id: workerId || 'default',
13
+ app: app || 'default',
14
+ version: version || 'default',
15
+ started: new Date().toISOString(),
16
+ },
17
+ ...context,
18
+ };
19
+ const axiom = token
20
+ ? new Axiom({
21
+ token,
22
+ orgId,
23
+ onError() { },
24
+ })
25
+ : undefined;
26
+ function ingest(level, message, additionalFields = {}) {
27
+ axiom?.ingest(dataset, {
28
+ _time: Date.now(),
29
+ level,
30
+ message,
31
+ ...baseFields,
32
+ ...additionalFields,
33
+ });
34
+ }
35
+ function createBaseLog(arg = {}) {
36
+ const childContext = arg.context || {};
37
+ if (arg.request) {
38
+ childContext.request = requestToContext(arg.request);
39
+ }
40
+ const baseLog = (level, message, additionalContext = {}) => {
41
+ const cid = arg.correlationId ||
42
+ correlationId ||
43
+ childContext?.correlationId ||
44
+ additionalContext?.correlationId ||
45
+ correlationId;
46
+ ingest(level, message, {
47
+ ...childContext,
48
+ ...additionalContext,
49
+ correlationId: cid,
50
+ });
51
+ if (consoleLog) {
52
+ const name = arg.name ? `${app}/${arg.name}` : app;
53
+ const lev = level.toUpperCase();
54
+ const now = Date.now();
55
+ const diff = (lastMessageTimestamp ? `${now - lastMessageTimestamp}ms ` : '').padEnd(6, ' ');
56
+ lastMessageTimestamp = now;
57
+ if (consoleLog === 'color')
58
+ logger
59
+ .dim()
60
+ .append(`${diff}`)
61
+ .reset()
62
+ .color('green')
63
+ .append(`[${name}] `)
64
+ .reset()
65
+ .bold()
66
+ .append(`${lev} `)
67
+ .reset()
68
+ .color('blue')
69
+ .bold()
70
+ .append(cid ? `[${cid}] ` : '')
71
+ .reset()
72
+ .append(message)
73
+ .log();
74
+ else
75
+ console.log(`[${lev}] [${name}]${cid ? ` [${cid}]` : ''} ${message}`);
76
+ }
77
+ };
78
+ return {
79
+ addContext(arg) {
80
+ for (const key in arg) {
81
+ childContext[key] = arg[key];
82
+ }
83
+ },
84
+ child: ({ correlationId, name, request, context = {}, }) => createBaseLog({
85
+ correlationId: correlationId ||
86
+ (request ? getCorrelationId(request) : undefined) ||
87
+ undefined,
88
+ name,
89
+ request,
90
+ context: { ...childContext, ...context },
91
+ }),
92
+ error: (message, error) => {
93
+ const m = typeof message === 'string'
94
+ ? message
95
+ : error?.message || error?.name || 'Error';
96
+ const e = typeof message === 'string' ? error : message;
97
+ return baseLog('error', m, e instanceof Error ? serializeError(e) : e);
98
+ },
99
+ debug: (message, data) => baseLog('debug', message, data),
100
+ warn: (message, data) => baseLog('warn', message, data),
101
+ info: (message, data) => baseLog('info', message, data),
102
+ };
103
+ }
104
+ const baseLog = createBaseLog();
105
+ baseLog.flush = () => {
106
+ if (executionContext && axiom) {
107
+ executionContext.waitUntil(axiom.flush());
108
+ }
109
+ else if (axiom)
110
+ return axiom.flush();
111
+ };
112
+ return baseLog;
113
+ }
114
+ //# sourceMappingURL=baselog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baselog.js","sourceRoot":"src/","sources":["baselog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ export declare const objectEntries: <T extends object>(value: T) => { [K in keyof T]-?: [K, T[K]]; }[keyof T][];
2
+ export type LEVEL = 'debug' | 'info' | 'warn' | 'error' | 'disable' | 'success';
3
+ type ticketObject = {
4
+ font?: COLOR;
5
+ bg?: COLOR;
6
+ };
7
+ type settingObject = {
8
+ [key in SETTING]?: boolean;
9
+ };
10
+ export type SETTING = 'bold' | 'italic' | 'dim' | 'underscore' | 'reverse' | 'strikethrough';
11
+ export type COLOR = 'black' | 'red' | 'green' | 'yellow' | 'blue' | 'magenta' | 'cyan' | 'white';
12
+ declare class Logger {
13
+ private command;
14
+ private lastCommand;
15
+ private name;
16
+ private level?;
17
+ private noColor;
18
+ private _getDate;
19
+ private _customizedConsole;
20
+ constructor(name?: string);
21
+ createNamedLogger(name: string): Logger;
22
+ setLevel(level: LEVEL): void;
23
+ setLogStream(newStream: any): void;
24
+ setLevelNoColor(): void;
25
+ setLevelColor(): void;
26
+ isLevelValid(level?: string): boolean;
27
+ isAllowedLevel(level: LEVEL): boolean;
28
+ log(...args: any[]): this;
29
+ joint(): this;
30
+ setDate(callback: () => string): void;
31
+ getPrefix(): string;
32
+ color(ticket: COLOR): this;
33
+ bgColor(ticket: COLOR): this;
34
+ bold(): this;
35
+ dim(): this;
36
+ underscore(): this;
37
+ strikethrough(): this;
38
+ reverse(): this;
39
+ italic(): this;
40
+ fontColorLog(ticket: COLOR, text: string, setting?: settingObject): void;
41
+ bgColorLog(ticket: COLOR, text: string, setting?: settingObject): void;
42
+ colorLog(ticketObj: ticketObject, text: string, setting?: settingObject): void;
43
+ error(...args: any[]): void;
44
+ warn(...args: any[]): void;
45
+ info(...args: any[]): void;
46
+ debug(...args: any[]): void;
47
+ success(...args: any[]): void;
48
+ checkSetting(setting: settingObject): string;
49
+ _print(...args: any[]): void;
50
+ append(...args: any[]): this;
51
+ reset(): this;
52
+ }
53
+ export declare const logger: Logger;
54
+ export {};