@brizz/sdk 0.1.17 → 0.1.19
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 +15 -2
- package/dist/index.cjs +90 -25
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +11 -4
- package/dist/index.d.ts +11 -4
- package/dist/index.js +90 -25
- package/dist/index.js.map +1 -1
- package/dist/preload.cjs +56 -14
- package/dist/preload.cjs.map +1 -1
- package/dist/preload.js +56 -14
- package/dist/preload.js.map +1 -1
- package/package.json +2 -2
package/dist/preload.js
CHANGED
|
@@ -185,6 +185,7 @@ function resolveConfig(options) {
|
|
|
185
185
|
const resolvedConfig = {
|
|
186
186
|
...options,
|
|
187
187
|
appName: process.env["BRIZZ_APP_NAME"] || options.appName || "unknown-app",
|
|
188
|
+
appVersion: process.env["BRIZZ_APP_VERSION"] || options.appVersion,
|
|
188
189
|
baseUrl: process.env["BRIZZ_BASE_URL"] || options.baseUrl || "https://telemetry.brizz.dev",
|
|
189
190
|
headers: { ...options.headers },
|
|
190
191
|
apiKey: process.env["BRIZZ_API_KEY"] || options.apiKey,
|
|
@@ -357,7 +358,7 @@ import {
|
|
|
357
358
|
|
|
358
359
|
// src/internal/version.ts
|
|
359
360
|
function getSDKVersion() {
|
|
360
|
-
return "0.1.
|
|
361
|
+
return "0.1.19";
|
|
361
362
|
}
|
|
362
363
|
|
|
363
364
|
// src/internal/log/processors/log-processor.ts
|
|
@@ -1159,6 +1160,7 @@ var LoggingModule = class _LoggingModule {
|
|
|
1159
1160
|
serviceName: config.appName
|
|
1160
1161
|
});
|
|
1161
1162
|
const resourceAttributes = {
|
|
1163
|
+
...config.resourceAttributes,
|
|
1162
1164
|
"service.name": config.appName,
|
|
1163
1165
|
[BRIZZ_SDK_VERSION]: getSDKVersion(),
|
|
1164
1166
|
[BRIZZ_SDK_LANGUAGE]: SDK_LANGUAGE
|
|
@@ -1166,6 +1168,9 @@ var LoggingModule = class _LoggingModule {
|
|
|
1166
1168
|
if (config.environment) {
|
|
1167
1169
|
resourceAttributes["deployment.environment"] = config.environment;
|
|
1168
1170
|
}
|
|
1171
|
+
if (config.appVersion) {
|
|
1172
|
+
resourceAttributes["service.version"] = config.appVersion;
|
|
1173
|
+
}
|
|
1169
1174
|
const resource = resourceFromAttributes(resourceAttributes);
|
|
1170
1175
|
logger.debug("Creating logger provider with resource");
|
|
1171
1176
|
this.loggerProvider = new LoggerProvider({
|
|
@@ -1349,13 +1354,16 @@ function getMetricsReader() {
|
|
|
1349
1354
|
import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-proto";
|
|
1350
1355
|
|
|
1351
1356
|
// src/internal/trace/exporters/span-exporter.ts
|
|
1357
|
+
import { ExportResultCode } from "@opentelemetry/core";
|
|
1352
1358
|
import { resourceFromAttributes as resourceFromAttributes2 } from "@opentelemetry/resources";
|
|
1353
1359
|
var BrizzSpanExporter = class {
|
|
1354
1360
|
_delegate;
|
|
1355
1361
|
_brizzResource;
|
|
1362
|
+
_beforeSendSpan;
|
|
1356
1363
|
constructor(delegate, config) {
|
|
1357
1364
|
this._delegate = delegate;
|
|
1358
1365
|
const resourceAttrs = {
|
|
1366
|
+
...config.resourceAttributes,
|
|
1359
1367
|
"service.name": config.appName,
|
|
1360
1368
|
[BRIZZ_SDK_VERSION]: getSDKVersion(),
|
|
1361
1369
|
[BRIZZ_SDK_LANGUAGE]: SDK_LANGUAGE
|
|
@@ -1363,15 +1371,47 @@ var BrizzSpanExporter = class {
|
|
|
1363
1371
|
if (config.environment) {
|
|
1364
1372
|
resourceAttrs["deployment.environment"] = config.environment;
|
|
1365
1373
|
}
|
|
1374
|
+
if (config.appVersion) {
|
|
1375
|
+
resourceAttrs["service.version"] = config.appVersion;
|
|
1376
|
+
}
|
|
1366
1377
|
this._brizzResource = resourceFromAttributes2(resourceAttrs);
|
|
1378
|
+
this._beforeSendSpan = config.beforeSendSpan;
|
|
1367
1379
|
}
|
|
1368
1380
|
export(spans, resultCallback) {
|
|
1381
|
+
if (spans.length === 0) {
|
|
1382
|
+
resultCallback({ code: ExportResultCode.SUCCESS });
|
|
1383
|
+
return;
|
|
1384
|
+
}
|
|
1369
1385
|
const patchedSpans = spans.map((span) => ({
|
|
1370
1386
|
...span,
|
|
1371
1387
|
resource: span.resource.merge(this._brizzResource),
|
|
1372
1388
|
spanContext: span.spanContext.bind(span)
|
|
1373
1389
|
}));
|
|
1374
|
-
this.
|
|
1390
|
+
const filter = this._beforeSendSpan;
|
|
1391
|
+
if (!filter) {
|
|
1392
|
+
this._delegate.export(patchedSpans, resultCallback);
|
|
1393
|
+
return;
|
|
1394
|
+
}
|
|
1395
|
+
const verdicts = patchedSpans.map((span) => {
|
|
1396
|
+
try {
|
|
1397
|
+
return Promise.resolve(filter(span));
|
|
1398
|
+
} catch (error) {
|
|
1399
|
+
logger.warn("beforeSendSpan threw; span will be kept", { error });
|
|
1400
|
+
return Promise.resolve(true);
|
|
1401
|
+
}
|
|
1402
|
+
});
|
|
1403
|
+
Promise.all(verdicts).then((keep) => {
|
|
1404
|
+
const filtered = patchedSpans.filter((_, i) => keep[i] !== false);
|
|
1405
|
+
if (filtered.length === 0) {
|
|
1406
|
+
resultCallback({ code: ExportResultCode.SUCCESS });
|
|
1407
|
+
return;
|
|
1408
|
+
}
|
|
1409
|
+
this._delegate.export(filtered, resultCallback);
|
|
1410
|
+
return;
|
|
1411
|
+
}).catch((error) => {
|
|
1412
|
+
logger.warn("beforeSendSpan rejected; all spans will be kept", { error });
|
|
1413
|
+
this._delegate.export(patchedSpans, resultCallback);
|
|
1414
|
+
});
|
|
1375
1415
|
}
|
|
1376
1416
|
async shutdown() {
|
|
1377
1417
|
return this._delegate.shutdown();
|
|
@@ -1387,6 +1427,14 @@ import {
|
|
|
1387
1427
|
BatchSpanProcessor,
|
|
1388
1428
|
SimpleSpanProcessor
|
|
1389
1429
|
} from "@opentelemetry/sdk-trace-base";
|
|
1430
|
+
function applyContextAttributes(span) {
|
|
1431
|
+
const sessionProperties = context2.active().getValue(PROPERTIES_CONTEXT_KEY);
|
|
1432
|
+
if (sessionProperties) {
|
|
1433
|
+
for (const [key, value] of Object.entries(sessionProperties)) {
|
|
1434
|
+
span.setAttribute(`${BRIZZ}.${key}`, value);
|
|
1435
|
+
}
|
|
1436
|
+
}
|
|
1437
|
+
}
|
|
1390
1438
|
var DEFAULT_MASKING_RULES = [
|
|
1391
1439
|
{
|
|
1392
1440
|
mode: "partial",
|
|
@@ -1421,12 +1469,7 @@ var BrizzSimpleSpanProcessor = class extends SimpleSpanProcessor {
|
|
|
1421
1469
|
if (maskingConfig) {
|
|
1422
1470
|
maskSpan(span, maskingConfig);
|
|
1423
1471
|
}
|
|
1424
|
-
|
|
1425
|
-
if (associationProperties) {
|
|
1426
|
-
for (const [key, value] of Object.entries(associationProperties)) {
|
|
1427
|
-
span.setAttribute(`${BRIZZ}.${key}`, value);
|
|
1428
|
-
}
|
|
1429
|
-
}
|
|
1472
|
+
applyContextAttributes(span);
|
|
1430
1473
|
super.onStart(span, parentContext);
|
|
1431
1474
|
}
|
|
1432
1475
|
};
|
|
@@ -1441,12 +1484,7 @@ var BrizzBatchSpanProcessor = class extends BatchSpanProcessor {
|
|
|
1441
1484
|
if (maskingConfig) {
|
|
1442
1485
|
maskSpan(span, maskingConfig);
|
|
1443
1486
|
}
|
|
1444
|
-
|
|
1445
|
-
if (associationProperties) {
|
|
1446
|
-
for (const [key, value] of Object.entries(associationProperties)) {
|
|
1447
|
-
span.setAttribute(`${BRIZZ}.${key}`, value);
|
|
1448
|
-
}
|
|
1449
|
-
}
|
|
1487
|
+
applyContextAttributes(span);
|
|
1450
1488
|
super.onStart(span, parentContext);
|
|
1451
1489
|
}
|
|
1452
1490
|
};
|
|
@@ -1660,6 +1698,7 @@ var _Brizz = class __Brizz {
|
|
|
1660
1698
|
const registry = InstrumentationRegistry.getInstance();
|
|
1661
1699
|
const manualInstrumentations = registry.getManualInstrumentations();
|
|
1662
1700
|
const resourceAttributes = {
|
|
1701
|
+
...resolvedConfig.resourceAttributes,
|
|
1663
1702
|
"service.name": resolvedConfig.appName,
|
|
1664
1703
|
[BRIZZ_SDK_VERSION]: getSDKVersion(),
|
|
1665
1704
|
[BRIZZ_SDK_LANGUAGE]: SDK_LANGUAGE
|
|
@@ -1667,6 +1706,9 @@ var _Brizz = class __Brizz {
|
|
|
1667
1706
|
if (resolvedConfig.environment) {
|
|
1668
1707
|
resourceAttributes["deployment.environment"] = resolvedConfig.environment;
|
|
1669
1708
|
}
|
|
1709
|
+
if (resolvedConfig.appVersion) {
|
|
1710
|
+
resourceAttributes["service.version"] = resolvedConfig.appVersion;
|
|
1711
|
+
}
|
|
1670
1712
|
this._sdk = new NodeSDK({
|
|
1671
1713
|
spanProcessors: resolvedConfig.disableSpanExporter ? [] : [getSpanProcessor()],
|
|
1672
1714
|
metricReader: getMetricsReader(),
|