@brizz/sdk 0.1.0-alpha.6

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.
Files changed (79) hide show
  1. package/LICENSE +27 -0
  2. package/README.md +76 -0
  3. package/dist/index.d.ts +13 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +10 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/internal/config.d.ts +17 -0
  8. package/dist/internal/config.d.ts.map +1 -0
  9. package/dist/internal/config.js +90 -0
  10. package/dist/internal/config.js.map +1 -0
  11. package/dist/internal/instrumentation/auto-init.d.ts +3 -0
  12. package/dist/internal/instrumentation/auto-init.d.ts.map +1 -0
  13. package/dist/internal/instrumentation/auto-init.js +82 -0
  14. package/dist/internal/instrumentation/auto-init.js.map +1 -0
  15. package/dist/internal/instrumentation/index.d.ts +2 -0
  16. package/dist/internal/instrumentation/index.d.ts.map +1 -0
  17. package/dist/internal/instrumentation/index.js +2 -0
  18. package/dist/internal/instrumentation/index.js.map +1 -0
  19. package/dist/internal/instrumentation/registry.d.ts +29 -0
  20. package/dist/internal/instrumentation/registry.d.ts.map +1 -0
  21. package/dist/internal/instrumentation/registry.js +88 -0
  22. package/dist/internal/instrumentation/registry.js.map +1 -0
  23. package/dist/internal/log/index.d.ts +2 -0
  24. package/dist/internal/log/index.d.ts.map +1 -0
  25. package/dist/internal/log/index.js +2 -0
  26. package/dist/internal/log/index.js.map +1 -0
  27. package/dist/internal/log/logging.d.ts +21 -0
  28. package/dist/internal/log/logging.d.ts.map +1 -0
  29. package/dist/internal/log/logging.js +149 -0
  30. package/dist/internal/log/logging.js.map +1 -0
  31. package/dist/internal/logger.d.ts +23 -0
  32. package/dist/internal/logger.d.ts.map +1 -0
  33. package/dist/internal/logger.js +155 -0
  34. package/dist/internal/logger.js.map +1 -0
  35. package/dist/internal/masking/index.d.ts +4 -0
  36. package/dist/internal/masking/index.d.ts.map +1 -0
  37. package/dist/internal/masking/index.js +3 -0
  38. package/dist/internal/masking/index.js.map +1 -0
  39. package/dist/internal/masking/patterns.d.ts +3 -0
  40. package/dist/internal/masking/patterns.d.ts.map +1 -0
  41. package/dist/internal/masking/patterns.js +375 -0
  42. package/dist/internal/masking/patterns.js.map +1 -0
  43. package/dist/internal/masking/types.d.ts +33 -0
  44. package/dist/internal/masking/types.d.ts.map +1 -0
  45. package/dist/internal/masking/types.js +2 -0
  46. package/dist/internal/masking/types.js.map +1 -0
  47. package/dist/internal/masking/utils.d.ts +6 -0
  48. package/dist/internal/masking/utils.d.ts.map +1 -0
  49. package/dist/internal/masking/utils.js +226 -0
  50. package/dist/internal/masking/utils.js.map +1 -0
  51. package/dist/internal/metric/index.d.ts +2 -0
  52. package/dist/internal/metric/index.d.ts.map +1 -0
  53. package/dist/internal/metric/index.js +2 -0
  54. package/dist/internal/metric/index.js.map +1 -0
  55. package/dist/internal/metric/metrics.d.ts +18 -0
  56. package/dist/internal/metric/metrics.d.ts.map +1 -0
  57. package/dist/internal/metric/metrics.js +82 -0
  58. package/dist/internal/metric/metrics.js.map +1 -0
  59. package/dist/internal/sdk.d.ts +36 -0
  60. package/dist/internal/sdk.d.ts.map +1 -0
  61. package/dist/internal/sdk.js +155 -0
  62. package/dist/internal/sdk.js.map +1 -0
  63. package/dist/internal/trace/index.d.ts +3 -0
  64. package/dist/internal/trace/index.d.ts.map +1 -0
  65. package/dist/internal/trace/index.js +3 -0
  66. package/dist/internal/trace/index.js.map +1 -0
  67. package/dist/internal/trace/processors/log-masked.d.ts +16 -0
  68. package/dist/internal/trace/processors/log-masked.d.ts.map +1 -0
  69. package/dist/internal/trace/processors/log-masked.js +75 -0
  70. package/dist/internal/trace/processors/log-masked.js.map +1 -0
  71. package/dist/internal/trace/processors/span-masked.d.ts +16 -0
  72. package/dist/internal/trace/processors/span-masked.d.ts.map +1 -0
  73. package/dist/internal/trace/processors/span-masked.js +81 -0
  74. package/dist/internal/trace/processors/span-masked.js.map +1 -0
  75. package/dist/internal/trace/tracing.d.ts +18 -0
  76. package/dist/internal/trace/tracing.d.ts.map +1 -0
  77. package/dist/internal/trace/tracing.js +97 -0
  78. package/dist/internal/trace/tracing.js.map +1 -0
  79. package/package.json +130 -0
@@ -0,0 +1,149 @@
1
+ import { context } from '@opentelemetry/api';
2
+ import { SeverityNumber } from '@opentelemetry/api-logs';
3
+ import { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-http';
4
+ import { resourceFromAttributes } from '@opentelemetry/resources';
5
+ import { LoggerProvider, } from '@opentelemetry/sdk-logs';
6
+ import { logger } from '../logger';
7
+ import { MaskedBatchLogRecordProcessor, MaskedSimpleLogRecordProcessor, } from '../trace/processors/log-masked';
8
+ export class LoggingModule {
9
+ static instance = null;
10
+ logExporter = null;
11
+ logProcessor = null;
12
+ loggerProvider = null;
13
+ static getInstance() {
14
+ if (!LoggingModule.instance) {
15
+ throw new Error('Brizz must be initialized before accessing LoggingModule');
16
+ }
17
+ return LoggingModule.instance;
18
+ }
19
+ setup(config) {
20
+ logger.info('Setting up logging module');
21
+ this.initLogExporter(config);
22
+ this.initLogProcessor(config);
23
+ this.initLoggerProvider(config);
24
+ LoggingModule.instance = this;
25
+ logger.info('Logging module setup completed');
26
+ }
27
+ initLogExporter(config) {
28
+ if (this.logExporter) {
29
+ logger.debug('Log exporter already initialized, skipping re-initialization');
30
+ return;
31
+ }
32
+ if (config.customLogExporter) {
33
+ logger.debug('Using custom log exporter');
34
+ this.logExporter = config.customLogExporter;
35
+ logger.debug('Custom log exporter initialized successfully');
36
+ return;
37
+ }
38
+ const logsUrl = config.baseUrl.replace(/\/$/, '') + '/v1/logs';
39
+ logger.debug('Initializing default OTLP log exporter', { url: logsUrl });
40
+ const headers = { ...config.headers };
41
+ this.logExporter = new OTLPLogExporter({
42
+ url: logsUrl,
43
+ headers,
44
+ });
45
+ logger.debug('OTLP log exporter initialized successfully');
46
+ }
47
+ initLogProcessor(config) {
48
+ if (this.logProcessor) {
49
+ logger.debug('Log processor already initialized, skipping re-initialization');
50
+ return;
51
+ }
52
+ if (!this.logExporter) {
53
+ throw new Error('Log exporter must be initialized before processor');
54
+ }
55
+ logger.debug('Initializing log processor', {
56
+ disableBatch: config.disableBatch,
57
+ hasMasking: !!config.masking?.eventMasking,
58
+ });
59
+ this.logProcessor = config.disableBatch
60
+ ? new MaskedSimpleLogRecordProcessor(this.logExporter, config.masking?.eventMasking)
61
+ : new MaskedBatchLogRecordProcessor(this.logExporter, config.masking?.eventMasking);
62
+ logger.debug('Log processor initialized successfully');
63
+ }
64
+ initLoggerProvider(config) {
65
+ if (this.loggerProvider) {
66
+ logger.debug('Logger provider already initialized, skipping re-initialization');
67
+ return;
68
+ }
69
+ if (!this.logProcessor) {
70
+ throw new Error('Log processor must be initialized before logger provider');
71
+ }
72
+ logger.debug('Creating resource with service name', {
73
+ serviceName: config.appName,
74
+ });
75
+ const resource = resourceFromAttributes({
76
+ 'service.name': config.appName,
77
+ });
78
+ logger.debug('Creating logger provider with resource');
79
+ this.loggerProvider = new LoggerProvider({
80
+ resource,
81
+ processors: [this.logProcessor],
82
+ });
83
+ logger.debug('Logger provider initialization completed');
84
+ }
85
+ emitEvent(name, attributes, body, severityNumber = SeverityNumber.INFO) {
86
+ logger.debug('Attempting to emit event', {
87
+ name,
88
+ hasAttributes: !!attributes,
89
+ attributesCount: attributes ? Object.keys(attributes).length : 0,
90
+ hasBody: !!body,
91
+ severityNumber,
92
+ });
93
+ if (!this.loggerProvider) {
94
+ logger.error('Cannot emit event: Logger provider not initialized');
95
+ throw new Error('Logging module not initialized');
96
+ }
97
+ const logAttributes = { 'event.name': name };
98
+ if (attributes) {
99
+ Object.assign(logAttributes, attributes);
100
+ logger.debug('Combined log attributes', { attributes: Object.keys(logAttributes) });
101
+ }
102
+ logger.debug('Getting logger instance for brizz_events');
103
+ const eventLogger = this.loggerProvider.getLogger('brizz.events');
104
+ logger.debug('Emitting log record with eventName', { eventName: name });
105
+ try {
106
+ eventLogger.emit({
107
+ eventName: name,
108
+ attributes: logAttributes,
109
+ severityNumber: severityNumber,
110
+ body: body,
111
+ context: context.active(),
112
+ });
113
+ logger.debug('Event successfully emitted', { eventName: name });
114
+ }
115
+ catch (error) {
116
+ logger.error(`Failed to emit event '${name}'`, { error, eventName: name });
117
+ logger.error('Log record that failed', {
118
+ eventName: name,
119
+ hasAttributes: logAttributes,
120
+ severityNumber: severityNumber,
121
+ hasBody: body,
122
+ });
123
+ throw error instanceof Error ? error : new Error(String(error));
124
+ }
125
+ }
126
+ isInitialized() {
127
+ return this.loggerProvider !== null;
128
+ }
129
+ getLoggerProvider() {
130
+ return this.loggerProvider;
131
+ }
132
+ async shutdown() {
133
+ logger.debug('Shutting down logging module');
134
+ if (this.loggerProvider) {
135
+ await this.loggerProvider.shutdown();
136
+ this.loggerProvider = null;
137
+ }
138
+ this.logProcessor = null;
139
+ this.logExporter = null;
140
+ if (LoggingModule.instance === this) {
141
+ LoggingModule.instance = null;
142
+ }
143
+ logger.debug('Logging module shutdown completed');
144
+ }
145
+ }
146
+ export function emitEvent(name, attributes, body, severityNumber = SeverityNumber.INFO) {
147
+ return LoggingModule.getInstance().emitEvent(name, attributes, body, severityNumber);
148
+ }
149
+ //# sourceMappingURL=logging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.js","sourceRoot":"","sources":["../../../src/internal/log/logging.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { DiagLogLevel } from '@opentelemetry/api';
2
+ export declare enum LogLevel {
3
+ NONE = 0,
4
+ ERROR = 1,
5
+ WARN = 2,
6
+ INFO = 3,
7
+ DEBUG = 4
8
+ }
9
+ export interface ILogger {
10
+ debug: (msg: string, ...meta: unknown[]) => void;
11
+ info: (msg: string, ...meta: unknown[]) => void;
12
+ warn: (msg: string, ...meta: unknown[]) => void;
13
+ error: (msg: string, ...meta: unknown[]) => void;
14
+ setLevel: (level: LogLevel) => void;
15
+ getLevel: () => LogLevel;
16
+ }
17
+ export declare const noopLogger: ILogger;
18
+ export declare function parseLogLevel(level?: string): LogLevel;
19
+ export declare const logger: ILogger;
20
+ export declare function setLogLevel(level: LogLevel | string): void;
21
+ export declare function getLogLevel(): LogLevel;
22
+ export declare function mapLogLevelToDiagLevel(logLevel: LogLevel): DiagLogLevel;
23
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/internal/logger.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMlD,oBAAY,QAAQ;IAClB,IAAI,IAAI;IACR,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;CACV;AAKD,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACjD,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAChD,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAChD,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACjD,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,QAAQ,EAAE,MAAM,QAAQ,CAAC;CAC1B;AAqGD,eAAO,MAAM,UAAU,EAAE,OAOxB,CAAC;AAMF,wBAAgB,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,CAkCtD;AAMD,eAAO,MAAM,MAAM,EAAE,OAA6B,CAAC;AAMnD,wBAAgB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,CAG1D;AAKD,wBAAgB,WAAW,IAAI,QAAQ,CAEtC;AAKD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,YAAY,CAkBvE"}
@@ -0,0 +1,155 @@
1
+ import { DiagLogLevel } from '@opentelemetry/api';
2
+ import winston from 'winston';
3
+ export var LogLevel;
4
+ (function (LogLevel) {
5
+ LogLevel[LogLevel["NONE"] = 0] = "NONE";
6
+ LogLevel[LogLevel["ERROR"] = 1] = "ERROR";
7
+ LogLevel[LogLevel["WARN"] = 2] = "WARN";
8
+ LogLevel[LogLevel["INFO"] = 3] = "INFO";
9
+ LogLevel[LogLevel["DEBUG"] = 4] = "DEBUG";
10
+ })(LogLevel || (LogLevel = {}));
11
+ class WinstonLogger {
12
+ level = LogLevel.NONE;
13
+ winstonLogger;
14
+ constructor() {
15
+ this.winstonLogger = winston.createLogger({
16
+ level: this.logLevelToWinston(LogLevel.NONE),
17
+ format: winston.format.combine(winston.format.timestamp(), winston.format.colorize(), winston.format.printf(({ timestamp, level, message, ...meta }) => {
18
+ let metaStr = '';
19
+ if (Object.keys(meta).length > 0) {
20
+ try {
21
+ metaStr = ` ${JSON.stringify(meta)}`;
22
+ }
23
+ catch {
24
+ metaStr = ' [Unserializable data]';
25
+ }
26
+ }
27
+ return `${String(timestamp)} [BRIZZ SDK] ${String(level)}: ${String(message)}${metaStr}`;
28
+ })),
29
+ transports: [new winston.transports.Console()],
30
+ });
31
+ }
32
+ logLevelToWinston(level) {
33
+ switch (level) {
34
+ case LogLevel.DEBUG: {
35
+ return 'debug';
36
+ }
37
+ case LogLevel.INFO: {
38
+ return 'info';
39
+ }
40
+ case LogLevel.WARN: {
41
+ return 'warn';
42
+ }
43
+ case LogLevel.ERROR: {
44
+ return 'error';
45
+ }
46
+ default: {
47
+ return 'silent';
48
+ }
49
+ }
50
+ }
51
+ setLevel(level) {
52
+ this.level = level;
53
+ this.winstonLogger.level = this.logLevelToWinston(level);
54
+ }
55
+ getLevel() {
56
+ return this.level;
57
+ }
58
+ debug = (msg, ...meta) => {
59
+ if (this.level >= LogLevel.DEBUG) {
60
+ this.winstonLogger.debug(msg, this.formatMeta(meta));
61
+ }
62
+ };
63
+ info = (msg, ...meta) => {
64
+ if (this.level >= LogLevel.INFO) {
65
+ this.winstonLogger.info(msg, this.formatMeta(meta));
66
+ }
67
+ };
68
+ warn = (msg, ...meta) => {
69
+ if (this.level >= LogLevel.WARN) {
70
+ this.winstonLogger.warn(msg, this.formatMeta(meta));
71
+ }
72
+ };
73
+ error = (msg, ...meta) => {
74
+ if (this.level >= LogLevel.ERROR) {
75
+ this.winstonLogger.error(msg, this.formatMeta(meta));
76
+ }
77
+ };
78
+ formatMeta(meta) {
79
+ if (meta.length === 0) {
80
+ return {};
81
+ }
82
+ if (meta.length === 1 && typeof meta[0] === 'object' && meta[0] !== null) {
83
+ return meta[0];
84
+ }
85
+ return { metadata: meta };
86
+ }
87
+ }
88
+ export const noopLogger = {
89
+ debug: () => { },
90
+ info: () => { },
91
+ warn: () => { },
92
+ error: () => { },
93
+ setLevel: () => { },
94
+ getLevel: () => LogLevel.NONE,
95
+ };
96
+ export function parseLogLevel(level) {
97
+ if (!level) {
98
+ return LogLevel.NONE;
99
+ }
100
+ const normalizedLevel = level.toLowerCase().trim();
101
+ switch (normalizedLevel) {
102
+ case 'debug': {
103
+ return LogLevel.DEBUG;
104
+ }
105
+ case 'info': {
106
+ return LogLevel.INFO;
107
+ }
108
+ case 'warn':
109
+ case 'warning': {
110
+ return LogLevel.WARN;
111
+ }
112
+ case 'error': {
113
+ return LogLevel.ERROR;
114
+ }
115
+ case 'none':
116
+ case 'off': {
117
+ return LogLevel.NONE;
118
+ }
119
+ default: {
120
+ const numLevel = Number.parseInt(normalizedLevel, 10);
121
+ if (!Number.isNaN(numLevel) && numLevel >= 0 && numLevel <= 4) {
122
+ return numLevel;
123
+ }
124
+ return LogLevel.NONE;
125
+ }
126
+ }
127
+ }
128
+ export const logger = new WinstonLogger();
129
+ export function setLogLevel(level) {
130
+ const resolvedLevel = typeof level === 'string' ? parseLogLevel(level) : level;
131
+ logger.setLevel(resolvedLevel);
132
+ }
133
+ export function getLogLevel() {
134
+ return logger.getLevel();
135
+ }
136
+ export function mapLogLevelToDiagLevel(logLevel) {
137
+ switch (logLevel) {
138
+ case LogLevel.DEBUG: {
139
+ return DiagLogLevel.DEBUG;
140
+ }
141
+ case LogLevel.INFO: {
142
+ return DiagLogLevel.INFO;
143
+ }
144
+ case LogLevel.WARN: {
145
+ return DiagLogLevel.WARN;
146
+ }
147
+ case LogLevel.ERROR: {
148
+ return DiagLogLevel.ERROR;
149
+ }
150
+ default: {
151
+ return DiagLogLevel.NONE;
152
+ }
153
+ }
154
+ }
155
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/internal/logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export type { IPatternEntry, MaskingMode, IPatternBasedMaskingRule, ISpanMaskingConfig, IEventMaskingConfig, ILogMaskingConfig, MaskableValue, IMaskingConfig, IEventMaskingRule, IAttributesMaskingRule, } from './types';
2
+ export { DEFAULT_PII_PATTERNS } from './patterns';
3
+ export { maskValue, maskAttributes } from './utils';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/internal/masking/index.ts"],"names":[],"mappings":"AAQA,YAAY,EAEV,aAAa,EACb,WAAW,EACX,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGlD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { DEFAULT_PII_PATTERNS } from './patterns';
2
+ export { maskValue, maskAttributes } from './utils';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/internal/masking/index.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGlD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { IPatternEntry } from './types';
2
+ export declare const DEFAULT_PII_PATTERNS: IPatternEntry[];
3
+ //# sourceMappingURL=patterns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patterns.d.ts","sourceRoot":"","sources":["../../../src/internal/masking/patterns.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAK7C,eAAO,MAAM,oBAAoB,EAAE,aAAa,EAqZ/C,CAAC"}