@observa/sdk 2.1.1 → 2.3.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.
- package/README.md +12 -0
- package/dist/apis/ingestApi.d.ts +12 -1
- package/dist/apis/ingestApi.d.ts.map +1 -1
- package/dist/apis/ingestApi.js +136 -3
- package/dist/apis/ingestApi.js.map +1 -1
- package/dist/domain/ingest.d.ts +15 -1
- package/dist/domain/ingest.d.ts.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/sdk.d.ts +2 -1
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.js +1 -1
- package/dist/sdk.js.map +1 -1
- package/package.json +7 -1
package/README.md
CHANGED
|
@@ -49,6 +49,7 @@ The SDK validates credentials through the ingest health endpoint.
|
|
|
49
49
|
```ts
|
|
50
50
|
const result = await sdk.ingest.event({
|
|
51
51
|
event: {
|
|
52
|
+
schema_version: 1,
|
|
52
53
|
level: 'error',
|
|
53
54
|
message: 'Something went wrong',
|
|
54
55
|
exception: {
|
|
@@ -60,6 +61,11 @@ const result = await sdk.ingest.event({
|
|
|
60
61
|
},
|
|
61
62
|
tags: { service: 'billing' },
|
|
62
63
|
extra: { requestId: 'req_123' },
|
|
64
|
+
context: {
|
|
65
|
+
system: sdk.getProcessContextDynamic(),
|
|
66
|
+
runtime: sdk.getProcessContextStatic({ includeVersions: false }),
|
|
67
|
+
request: { requestId: 'req_123' },
|
|
68
|
+
},
|
|
63
69
|
},
|
|
64
70
|
idempotencyKey: 'req_123',
|
|
65
71
|
sdkVersion: '2.0.0',
|
|
@@ -75,6 +81,12 @@ Required:
|
|
|
75
81
|
Optional:
|
|
76
82
|
- `idempotencyKey` is sent as `x-idempotency-key` header (max 128 chars)
|
|
77
83
|
- `sdkVersion` is sent as `x-sdk-version` header
|
|
84
|
+
|
|
85
|
+
Event context:
|
|
86
|
+
- `schema_version` identifies the event schema version.
|
|
87
|
+
- `context.system` carries dynamic process info (pid, uptime, memory).
|
|
88
|
+
- `context.runtime` carries static runtime info (node, arch, platform, release).
|
|
89
|
+
- `context.request` carries request-scoped metadata (requestId, userId, etc.).
|
|
78
90
|
|
|
79
91
|
## Uptime Heartbeats
|
|
80
92
|
|
package/dist/apis/ingestApi.d.ts
CHANGED
|
@@ -1,15 +1,26 @@
|
|
|
1
1
|
import type { IngestRequest, IngestResponse } from '../domain/ingest';
|
|
2
2
|
import type { HttpClient } from '../http/httpClient';
|
|
3
|
+
export type IngestNormalizationOptions = {
|
|
4
|
+
schemaVersion?: number;
|
|
5
|
+
includeContext?: boolean;
|
|
6
|
+
includeSystemContext?: boolean;
|
|
7
|
+
includeRuntimeContext?: boolean;
|
|
8
|
+
maxEventBytes?: number;
|
|
9
|
+
maxFrames?: number;
|
|
10
|
+
maxMessageLength?: number;
|
|
11
|
+
maxExceptionValueLength?: number;
|
|
12
|
+
};
|
|
3
13
|
/**
|
|
4
14
|
* Event ingestion API.
|
|
5
15
|
*/
|
|
6
16
|
export declare class IngestApi {
|
|
7
17
|
private readonly http;
|
|
8
18
|
private readonly defaultDsnKey?;
|
|
19
|
+
private readonly normalization?;
|
|
9
20
|
/**
|
|
10
21
|
* Creates the ingestion client with an optional default DSN.
|
|
11
22
|
*/
|
|
12
|
-
constructor(http: HttpClient, defaultDsnKey?: string | undefined);
|
|
23
|
+
constructor(http: HttpClient, defaultDsnKey?: string | undefined, normalization?: IngestNormalizationOptions | undefined);
|
|
13
24
|
/**
|
|
14
25
|
* Sends an event to the ingestion backend.
|
|
15
26
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ingestApi.d.ts","sourceRoot":"","sources":["../../src/apis/ingestApi.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ingestApi.d.ts","sourceRoot":"","sources":["../../src/apis/ingestApi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,aAAa,EAAE,cAAc,EAAmB,MAAM,kBAAkB,CAAA;AAInG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAEpD,MAAM,MAAM,0BAA0B,GAAG;IACrC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAA;CACnC,CAAA;AAaD;;GAEG;AACH,qBAAa,SAAS;IAKd,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IANnC;;OAEG;gBAEkB,IAAI,EAAE,UAAU,EAChB,aAAa,CAAC,EAAE,MAAM,YAAA,EACtB,aAAa,CAAC,EAAE,0BAA0B,YAAA;IAG/D;;OAEG;IACG,KAAK,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAiBpD,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAA;KAAE,CAAC;CAM1D"}
|
package/dist/apis/ingestApi.js
CHANGED
|
@@ -1,17 +1,31 @@
|
|
|
1
|
+
import { randomUUID } from 'crypto';
|
|
1
2
|
import { ValidationError } from '../http/errors';
|
|
3
|
+
import { getProcessContextDynamic, getProcessContextStatic } from '../utils/processContext';
|
|
2
4
|
import { ensureDefined, ensureNonEmpty } from '../utils/validate';
|
|
5
|
+
const DEFAULT_NORMALIZATION = {
|
|
6
|
+
schemaVersion: 1,
|
|
7
|
+
includeContext: true,
|
|
8
|
+
includeSystemContext: true,
|
|
9
|
+
includeRuntimeContext: true,
|
|
10
|
+
maxEventBytes: 64 * 1024,
|
|
11
|
+
maxFrames: 60,
|
|
12
|
+
maxMessageLength: 4000,
|
|
13
|
+
maxExceptionValueLength: 4000,
|
|
14
|
+
};
|
|
3
15
|
/**
|
|
4
16
|
* Event ingestion API.
|
|
5
17
|
*/
|
|
6
18
|
export class IngestApi {
|
|
7
19
|
http;
|
|
8
20
|
defaultDsnKey;
|
|
21
|
+
normalization;
|
|
9
22
|
/**
|
|
10
23
|
* Creates the ingestion client with an optional default DSN.
|
|
11
24
|
*/
|
|
12
|
-
constructor(http, defaultDsnKey) {
|
|
25
|
+
constructor(http, defaultDsnKey, normalization) {
|
|
13
26
|
this.http = http;
|
|
14
27
|
this.defaultDsnKey = defaultDsnKey;
|
|
28
|
+
this.normalization = normalization;
|
|
15
29
|
}
|
|
16
30
|
/**
|
|
17
31
|
* Sends an event to the ingestion backend.
|
|
@@ -30,8 +44,9 @@ export class IngestApi {
|
|
|
30
44
|
headers['x-idempotency-key'] = input.idempotencyKey;
|
|
31
45
|
if (input.sdkVersion)
|
|
32
46
|
headers['x-sdk-version'] = input.sdkVersion;
|
|
33
|
-
const { idempotencyKey, sdkVersion, ...body } = input;
|
|
34
|
-
|
|
47
|
+
const { idempotencyKey, sdkVersion, event, ...body } = input;
|
|
48
|
+
const normalizedEvent = normalizeEvent(event, this.normalization);
|
|
49
|
+
return this.http.post('/ingest/events', { ...body, dsnKey, event: normalizedEvent }, { auth: 'apiKey', headers });
|
|
35
50
|
}
|
|
36
51
|
async health(dsnKey) {
|
|
37
52
|
const resolvedDsnKey = dsnKey ?? this.defaultDsnKey;
|
|
@@ -40,4 +55,122 @@ export class IngestApi {
|
|
|
40
55
|
return this.http.post('/ingest/health', { dsnKey: resolvedDsnKey }, { auth: 'apiKey' });
|
|
41
56
|
}
|
|
42
57
|
}
|
|
58
|
+
function normalizeEvent(event, options) {
|
|
59
|
+
const config = { ...DEFAULT_NORMALIZATION, ...options };
|
|
60
|
+
const normalizedTimestamp = normalizeTimestamp(event.timestamp);
|
|
61
|
+
const normalizedLevel = event.level ? event.level.toLowerCase() : undefined;
|
|
62
|
+
const normalizedMessage = event.message ? truncate(event.message, config.maxMessageLength) : undefined;
|
|
63
|
+
const normalizedException = normalizeException(event.exception, config);
|
|
64
|
+
if (!normalizedMessage && !normalizedException) {
|
|
65
|
+
throw new ValidationError('event message or exception is required');
|
|
66
|
+
}
|
|
67
|
+
const normalizedContext = normalizeContext(event.context, config);
|
|
68
|
+
const normalizedEvent = {
|
|
69
|
+
...event,
|
|
70
|
+
event_id: event.event_id ?? randomUUID(),
|
|
71
|
+
timestamp: normalizedTimestamp,
|
|
72
|
+
schema_version: event.schema_version ?? config.schemaVersion,
|
|
73
|
+
level: normalizedLevel,
|
|
74
|
+
message: normalizedMessage,
|
|
75
|
+
exception: normalizedException,
|
|
76
|
+
context: normalizedContext,
|
|
77
|
+
};
|
|
78
|
+
return enforceSizeLimit(normalizedEvent, config);
|
|
79
|
+
}
|
|
80
|
+
function normalizeTimestamp(timestamp) {
|
|
81
|
+
if (!timestamp)
|
|
82
|
+
return new Date().toISOString();
|
|
83
|
+
const parsed = new Date(timestamp);
|
|
84
|
+
if (Number.isNaN(parsed.getTime())) {
|
|
85
|
+
throw new ValidationError('timestamp must be a valid ISO date');
|
|
86
|
+
}
|
|
87
|
+
return parsed.toISOString();
|
|
88
|
+
}
|
|
89
|
+
function normalizeException(exception, config) {
|
|
90
|
+
if (!exception)
|
|
91
|
+
return undefined;
|
|
92
|
+
if (!exception.type || !exception.value) {
|
|
93
|
+
throw new ValidationError('exception.type and exception.value are required');
|
|
94
|
+
}
|
|
95
|
+
return {
|
|
96
|
+
...exception,
|
|
97
|
+
value: truncate(exception.value, config.maxExceptionValueLength),
|
|
98
|
+
stacktrace: normalizeStacktrace(exception.stacktrace, config.maxFrames),
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
function normalizeStacktrace(stacktrace, maxFrames) {
|
|
102
|
+
if (!stacktrace || !Array.isArray(stacktrace.frames))
|
|
103
|
+
return undefined;
|
|
104
|
+
const frames = stacktrace.frames;
|
|
105
|
+
const normalizedFrames = frames.slice(0, maxFrames).map((frame) => {
|
|
106
|
+
const filename = typeof frame?.filename === 'string' ? frame.filename : undefined;
|
|
107
|
+
const functionName = typeof frame?.function === 'string' ? frame.function : undefined;
|
|
108
|
+
const lineno = typeof frame?.lineno === 'number' ? frame.lineno : undefined;
|
|
109
|
+
const colno = typeof frame?.colno === 'number' ? frame.colno : undefined;
|
|
110
|
+
const inferredInApp = filename ? !filename.includes('node_modules') : false;
|
|
111
|
+
return {
|
|
112
|
+
filename,
|
|
113
|
+
function: functionName,
|
|
114
|
+
lineno,
|
|
115
|
+
colno,
|
|
116
|
+
in_app: typeof frame?.in_app === 'boolean' ? frame.in_app : inferredInApp,
|
|
117
|
+
};
|
|
118
|
+
});
|
|
119
|
+
return { frames: normalizedFrames };
|
|
120
|
+
}
|
|
121
|
+
function normalizeContext(context, config) {
|
|
122
|
+
if (!config.includeContext)
|
|
123
|
+
return context;
|
|
124
|
+
const systemContext = config.includeSystemContext ? getProcessContextDynamic() : undefined;
|
|
125
|
+
const runtimeContext = config.includeRuntimeContext ? getProcessContextStatic({ includeVersions: false }) : undefined;
|
|
126
|
+
const mergedContext = {
|
|
127
|
+
...context,
|
|
128
|
+
system: context?.system ?? systemContext,
|
|
129
|
+
runtime: context?.runtime ?? runtimeContext,
|
|
130
|
+
};
|
|
131
|
+
return mergedContext;
|
|
132
|
+
}
|
|
133
|
+
function enforceSizeLimit(event, config) {
|
|
134
|
+
let normalized = event;
|
|
135
|
+
if (getSize(normalized) <= config.maxEventBytes)
|
|
136
|
+
return normalized;
|
|
137
|
+
if (normalized.extra) {
|
|
138
|
+
normalized = { ...normalized, extra: undefined };
|
|
139
|
+
}
|
|
140
|
+
if (getSize(normalized) <= config.maxEventBytes)
|
|
141
|
+
return normalized;
|
|
142
|
+
if (normalized.tags) {
|
|
143
|
+
normalized = { ...normalized, tags: undefined };
|
|
144
|
+
}
|
|
145
|
+
if (getSize(normalized) <= config.maxEventBytes)
|
|
146
|
+
return normalized;
|
|
147
|
+
if (normalized.exception?.stacktrace) {
|
|
148
|
+
normalized = {
|
|
149
|
+
...normalized,
|
|
150
|
+
exception: { ...normalized.exception, stacktrace: undefined },
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
if (getSize(normalized) <= config.maxEventBytes)
|
|
154
|
+
return normalized;
|
|
155
|
+
if (normalized.message) {
|
|
156
|
+
normalized = { ...normalized, message: truncate(normalized.message, config.maxMessageLength) };
|
|
157
|
+
}
|
|
158
|
+
if (normalized.exception?.value) {
|
|
159
|
+
normalized = {
|
|
160
|
+
...normalized,
|
|
161
|
+
exception: { ...normalized.exception, value: truncate(normalized.exception.value, config.maxExceptionValueLength) },
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
if (getSize(normalized) <= config.maxEventBytes)
|
|
165
|
+
return normalized;
|
|
166
|
+
throw new ValidationError('event payload exceeds size limit');
|
|
167
|
+
}
|
|
168
|
+
function getSize(value) {
|
|
169
|
+
return Buffer.byteLength(JSON.stringify(value), 'utf8');
|
|
170
|
+
}
|
|
171
|
+
function truncate(value, maxLength) {
|
|
172
|
+
if (value.length <= maxLength)
|
|
173
|
+
return value;
|
|
174
|
+
return value.slice(0, maxLength);
|
|
175
|
+
}
|
|
43
176
|
//# sourceMappingURL=ingestApi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ingestApi.js","sourceRoot":"","sources":["../../src/apis/ingestApi.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ingestApi.js","sourceRoot":"","sources":["../../src/apis/ingestApi.ts"],"names":[],"mappings":"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"}
|
package/dist/domain/ingest.d.ts
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
|
+
import type { ProcessContextDynamic, ProcessContextStatic } from '../utils/processContext';
|
|
1
2
|
/**
|
|
2
3
|
* Severity levels for events.
|
|
3
4
|
*/
|
|
4
|
-
export type IngestLevel = 'debug' | 'info' | '
|
|
5
|
+
export type IngestLevel = 'debug' | 'info' | 'warn' | 'error' | 'fatal';
|
|
5
6
|
export type StacktraceFrame = {
|
|
6
7
|
filename?: string;
|
|
7
8
|
function?: string;
|
|
8
9
|
lineno?: number;
|
|
9
10
|
colno?: number;
|
|
11
|
+
in_app?: boolean;
|
|
10
12
|
};
|
|
11
13
|
export type Stacktrace = {
|
|
12
14
|
frames: StacktraceFrame[];
|
|
@@ -16,6 +18,16 @@ export type IngestException = {
|
|
|
16
18
|
value: string;
|
|
17
19
|
stacktrace?: Stacktrace;
|
|
18
20
|
};
|
|
21
|
+
export type RequestContext = {
|
|
22
|
+
requestId?: string;
|
|
23
|
+
userId?: string;
|
|
24
|
+
[key: string]: unknown;
|
|
25
|
+
};
|
|
26
|
+
export type IngestEventContext = {
|
|
27
|
+
system?: ProcessContextDynamic;
|
|
28
|
+
runtime?: ProcessContextStatic;
|
|
29
|
+
request?: RequestContext;
|
|
30
|
+
};
|
|
19
31
|
/**
|
|
20
32
|
* Ingestion event.
|
|
21
33
|
*/
|
|
@@ -28,6 +40,7 @@ export type IngestEvent = {
|
|
|
28
40
|
* Event ISO timestamp.
|
|
29
41
|
*/
|
|
30
42
|
timestamp?: string;
|
|
43
|
+
schema_version?: number;
|
|
31
44
|
/**
|
|
32
45
|
* Severity level.
|
|
33
46
|
*/
|
|
@@ -37,6 +50,7 @@ export type IngestEvent = {
|
|
|
37
50
|
*/
|
|
38
51
|
message?: string;
|
|
39
52
|
exception?: IngestException;
|
|
53
|
+
context?: IngestEventContext;
|
|
40
54
|
tags?: Record<string, string>;
|
|
41
55
|
extra?: Record<string, unknown>;
|
|
42
56
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ingest.d.ts","sourceRoot":"","sources":["../../src/domain/ingest.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"ingest.d.ts","sourceRoot":"","sources":["../../src/domain/ingest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAE1F;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAA;AAEvE,MAAM,MAAM,eAAe,GAAG;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACrB,MAAM,EAAE,eAAe,EAAE,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,UAAU,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC7B,MAAM,CAAC,EAAE,qBAAqB,CAAA;IAC9B,OAAO,CAAC,EAAE,oBAAoB,CAAA;IAC9B,OAAO,CAAC,EAAE,cAAc,CAAA;CAC3B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;OAEG;IACH,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,eAAe,CAAA;IAC3B,OAAO,CAAC,EAAE,kBAAkB,CAAA;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAClC,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,KAAK,EAAE,WAAW,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IACzB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;CACnB,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -23,6 +23,7 @@ export { SdkError, ValidationError, AuthError, ForbiddenError, NotFoundError, Co
|
|
|
23
23
|
*/
|
|
24
24
|
export { UptimeApi } from './apis/uptimeApi';
|
|
25
25
|
export { IngestApi } from './apis/ingestApi';
|
|
26
|
+
export type { IngestNormalizationOptions } from './apis/ingestApi';
|
|
26
27
|
/**
|
|
27
28
|
* Uptime types.
|
|
28
29
|
*/
|
|
@@ -30,7 +31,7 @@ export type { UptimeEvent, UptimeStatus, UptimeHeartbeatInput, UptimeSummary } f
|
|
|
30
31
|
/**
|
|
31
32
|
* Ingestion types.
|
|
32
33
|
*/
|
|
33
|
-
export type { IngestEvent, IngestLevel, IngestRequest, IngestResponse,
|
|
34
|
+
export type { IngestEvent, IngestEventContext, IngestException, IngestLevel, IngestRequest, IngestResponse, RequestContext, Stacktrace, StacktraceFrame, } from './domain/ingest';
|
|
34
35
|
export type { ProcessContext, ProcessContextDynamic, ProcessContextDynamicOptions, ProcessContextOptions, ProcessContextStatic, ProcessContextStaticOptions, } from './utils/processContext';
|
|
35
36
|
export { getProcessContext, getProcessContextDynamic, getProcessContextStatic } from './utils/processContext';
|
|
36
37
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC;;GAEG;AACH,YAAY,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AAE9C;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C;;GAEG;AACH,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAEjG;;GAEG;AACH,OAAO,EACL,QAAQ,EACR,eAAe,EACf,SAAS,EACT,cAAc,EACd,aAAa,EACb,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,GACb,MAAM,eAAe,CAAA;AAEtB;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC;;GAEG;AACH,YAAY,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AAE9C;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C;;GAEG;AACH,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAEjG;;GAEG;AACH,OAAO,EACL,QAAQ,EACR,eAAe,EACf,SAAS,EACT,cAAc,EACd,aAAa,EACb,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,GACb,MAAM,eAAe,CAAA;AAEtB;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,YAAY,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAA;AAElE;;GAEG;AACH,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACrG;;GAEG;AACH,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,aAAa,EACb,cAAc,EACd,cAAc,EACd,UAAU,EACV,eAAe,GAChB,MAAM,iBAAiB,CAAA;AACxB,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,4BAA4B,EAC5B,qBAAqB,EACrB,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAMlC;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAM9C;;GAEG;AACH,OAAO,EACL,QAAQ,EACR,eAAe,EACf,SAAS,EACT,cAAc,EACd,aAAa,EACb,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,GACb,MAAM,eAAe,CAAA;AAEtB;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAMlC;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAM9C;;GAEG;AACH,OAAO,EACL,QAAQ,EACR,eAAe,EACf,SAAS,EACT,cAAc,EACd,aAAa,EACb,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,GACb,MAAM,eAAe,CAAA;AAEtB;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AA6B5C,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA"}
|
package/dist/sdk.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IngestApi } from './apis/ingestApi';
|
|
1
|
+
import { IngestApi, type IngestNormalizationOptions } from './apis/ingestApi';
|
|
2
2
|
import { UptimeApi } from './apis/uptimeApi';
|
|
3
3
|
import { type RetryPolicy } from './http/httpClient';
|
|
4
4
|
import { type ProcessContext, type ProcessContextDynamic, type ProcessContextDynamicOptions, type ProcessContextOptions, type ProcessContextStatic, type ProcessContextStaticOptions } from './utils/processContext';
|
|
@@ -27,6 +27,7 @@ export type ObservaSDKOptions = {
|
|
|
27
27
|
* Additional headers sent with every request.
|
|
28
28
|
*/
|
|
29
29
|
headers?: Record<string, string>;
|
|
30
|
+
ingest?: IngestNormalizationOptions;
|
|
30
31
|
};
|
|
31
32
|
/**
|
|
32
33
|
* Main SDK for error ingestion and uptime heartbeats.
|
package/dist/sdk.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,0BAA0B,EAAE,MAAM,kBAAkB,CAAA;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,EAIH,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,EACjC,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,EACnC,MAAM,wBAAwB,CAAA;AAE/B;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC5B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;IACd;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,MAAM,CAAC,EAAE,0BAA0B,CAAA;CACtC,CAAA;AAOD;;GAEG;AACH,qBAAa,UAAU;IACnB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAC1B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;IAE1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAY;IAEjC;;OAEG;gBACS,OAAO,EAAE,iBAAiB;IAkBtC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM;IAIxB,iBAAiB,CAAC,OAAO,CAAC,EAAE,qBAAqB,GAAG,cAAc;IAIlE,uBAAuB,CAAC,OAAO,CAAC,EAAE,2BAA2B,GAAG,oBAAoB;IAIpF,wBAAwB,CAAC,OAAO,CAAC,EAAE,4BAA4B,GAAG,qBAAqB;CAG1F"}
|
package/dist/sdk.js
CHANGED
|
@@ -35,7 +35,7 @@ export class ObservaSDK {
|
|
|
35
35
|
retry: options.retry,
|
|
36
36
|
headers: options.headers,
|
|
37
37
|
});
|
|
38
|
-
this.ingest = new IngestApi(this.http, options.dsnKey);
|
|
38
|
+
this.ingest = new IngestApi(this.http, options.dsnKey, options.ingest);
|
|
39
39
|
this.uptime = new UptimeApi(this.http, options.dsnKey);
|
|
40
40
|
this.http.startHealthCheck(() => this.ingest.health(options.dsnKey));
|
|
41
41
|
}
|
package/dist/sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAmC,MAAM,kBAAkB,CAAA;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAoB,MAAM,mBAAmB,CAAA;AAChE,OAAO,EACH,iBAAiB,EACjB,wBAAwB,EACxB,uBAAuB,GAO1B,MAAM,wBAAwB,CAAA;AA8B/B;;GAEG;AACH,MAAM,gBAAgB,GAAG,sDAAsD,CAAA;AAE/E;;GAEG;AACH,MAAM,OAAO,UAAU;IACnB;;OAEG;IACM,MAAM,CAAW;IAC1B;;OAEG;IACM,MAAM,CAAW;IAET,IAAI,CAAY;IAEjC;;OAEG;IACH,YAAY,OAA0B;QAClC,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;QACjE,CAAC;QACD,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACzE,MAAM,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,KAAK,CAAA;QAC7E,IAAI,CAAC,IAAI,GAAG,IAAI,UAAU,CAAC;YACvB,OAAO,EAAE,iBAAiB;YAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,OAAO,CAAC,OAAO;SAC3B,CAAC,CAAA;QACF,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;QACtE,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;QACtD,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IACxE,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAc;QACpB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAC/B,CAAC;IAED,iBAAiB,CAAC,OAA+B;QAC7C,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAA;IACrC,CAAC;IAED,uBAAuB,CAAC,OAAqC;QACzD,OAAO,uBAAuB,CAAC,OAAO,CAAC,CAAA;IAC3C,CAAC;IAED,wBAAwB,CAAC,OAAsC;QAC3D,OAAO,wBAAwB,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;CACJ"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@observa/sdk",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.3.0",
|
|
4
4
|
"description": "Observa SDK for Node.js",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -31,11 +31,17 @@
|
|
|
31
31
|
"@types/bun": "latest",
|
|
32
32
|
"@types/jest": "^29.5.12",
|
|
33
33
|
"jest": "^29.7.0",
|
|
34
|
+
"standard-version": "^9.5.0",
|
|
34
35
|
"ts-jest": "^29.1.2",
|
|
35
36
|
"typescript": "^5.6.3"
|
|
36
37
|
},
|
|
37
38
|
"scripts": {
|
|
38
39
|
"build": "tsc -p tsconfig.build.json",
|
|
40
|
+
"changelog": "standard-version --skip.bump --skip.commit --skip.tag",
|
|
41
|
+
"release": "standard-version",
|
|
42
|
+
"release:major": "standard-version --release-as major",
|
|
43
|
+
"release:minor": "standard-version --release-as minor",
|
|
44
|
+
"release:patch": "standard-version --release-as patch",
|
|
39
45
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
40
46
|
"test": "node --experimental-vm-modules ./node_modules/jest/bin/jest.js --config ./jest.config.mjs",
|
|
41
47
|
"test:watch": "node --experimental-vm-modules ./node_modules/jest/bin/jest.js --watch --config ./jest.config.mjs",
|