apitally 1.0.0-beta.2 → 1.0.0-beta.3
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 +7 -2
- package/dist/activation.cjs +1 -0
- package/dist/activation.cjs.map +1 -1
- package/dist/activation.d.cts +1 -0
- package/dist/activation.d.ts +1 -0
- package/dist/activation.js +1 -0
- package/dist/activation.js.map +1 -1
- package/dist/consumers.cjs +96 -0
- package/dist/consumers.cjs.map +1 -0
- package/dist/consumers.d.cts +13 -0
- package/dist/consumers.d.ts +13 -0
- package/dist/consumers.js +93 -0
- package/dist/consumers.js.map +1 -0
- package/dist/context.cjs +2 -8
- package/dist/context.cjs.map +1 -1
- package/dist/context.d.cts +5 -5
- package/dist/context.d.ts +5 -5
- package/dist/context.js +3 -7
- package/dist/context.js.map +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/nestjs/index.cjs +6 -0
- package/dist/nestjs/index.cjs.map +1 -1
- package/dist/nestjs/index.js +6 -0
- package/dist/nestjs/index.js.map +1 -1
- package/dist/requestObservation.cjs +6 -4
- package/dist/requestObservation.cjs.map +1 -1
- package/dist/requestObservation.js +7 -5
- package/dist/requestObservation.js.map +1 -1
- package/dist/spanProcessor.cjs +0 -2
- package/dist/spanProcessor.cjs.map +1 -1
- package/dist/spanProcessor.js +0 -2
- package/dist/spanProcessor.js.map +1 -1
- package/package.json +1 -1
- package/dist/consumer.cjs +0 -61
- package/dist/consumer.cjs.map +0 -1
- package/dist/consumer.d.cts +0 -12
- package/dist/consumer.d.ts +0 -12
- package/dist/consumer.js +0 -59
- package/dist/consumer.js.map +0 -1
package/dist/consumer.js
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { logDebug } from "./logger.js";
|
|
2
|
-
import { CONSUMER_HOLDER_KEY, getConsumerHolder, getRequestRecord, getServerSpan } from "./context.js";
|
|
3
|
-
import { writeRequestAttribute } from "./requestAttributes.js";
|
|
4
|
-
//#region src/consumer.ts
|
|
5
|
-
const CONSUMER_IDENTIFIER_ATTRIBUTE = "apitally.consumer.identifier";
|
|
6
|
-
const CONSUMER_NAME_ATTRIBUTE = "apitally.consumer.name";
|
|
7
|
-
const CONSUMER_GROUP_ATTRIBUTE = "apitally.consumer.group";
|
|
8
|
-
function setConsumer(consumer) {
|
|
9
|
-
try {
|
|
10
|
-
const holder = getConsumerHolder();
|
|
11
|
-
const record = getRequestRecord();
|
|
12
|
-
const normalized = normalizeConsumer(consumer);
|
|
13
|
-
if (!holder && !record || !normalized) return;
|
|
14
|
-
if (holder) {
|
|
15
|
-
holder.identifier = normalized.identifier;
|
|
16
|
-
holder.name = normalized.name;
|
|
17
|
-
holder.group = normalized.group;
|
|
18
|
-
}
|
|
19
|
-
writeConsumerAttributes(getServerSpan(), record, normalized);
|
|
20
|
-
} catch (error) {
|
|
21
|
-
logDebug(`Error setting consumer: ${String(error)}`);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
function writeConsumerAttributesFromContext(parentContext, span, record) {
|
|
25
|
-
const holder = parentContext.getValue(CONSUMER_HOLDER_KEY);
|
|
26
|
-
if (!holder?.identifier) return;
|
|
27
|
-
const consumer = normalizeConsumer({
|
|
28
|
-
identifier: holder.identifier,
|
|
29
|
-
name: holder.name,
|
|
30
|
-
group: holder.group
|
|
31
|
-
});
|
|
32
|
-
if (consumer) writeConsumerAttributes(span, record, consumer);
|
|
33
|
-
}
|
|
34
|
-
function writeConsumerAttributes(span, record, consumer) {
|
|
35
|
-
writeRequestAttribute(span, record, CONSUMER_IDENTIFIER_ATTRIBUTE, consumer.identifier);
|
|
36
|
-
if (consumer.name) writeRequestAttribute(span, record, CONSUMER_NAME_ATTRIBUTE, consumer.name);
|
|
37
|
-
if (consumer.group) writeRequestAttribute(span, record, CONSUMER_GROUP_ATTRIBUTE, consumer.group);
|
|
38
|
-
}
|
|
39
|
-
function normalizeConsumer(consumer) {
|
|
40
|
-
if (typeof consumer === "object" && consumer !== null) {
|
|
41
|
-
const identifier = trimAndCap(consumer.identifier, 128);
|
|
42
|
-
if (!identifier) return;
|
|
43
|
-
return {
|
|
44
|
-
identifier,
|
|
45
|
-
name: trimAndCap(consumer.name, 64),
|
|
46
|
-
group: trimAndCap(consumer.group, 64)
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
const identifier = trimAndCap(consumer, 128);
|
|
50
|
-
return identifier ? { identifier } : void 0;
|
|
51
|
-
}
|
|
52
|
-
function trimAndCap(value, maxLength) {
|
|
53
|
-
if (typeof value !== "string" && typeof value !== "number") return;
|
|
54
|
-
return String(value).trim().slice(0, maxLength) || void 0;
|
|
55
|
-
}
|
|
56
|
-
//#endregion
|
|
57
|
-
export { setConsumer, writeConsumerAttributesFromContext };
|
|
58
|
-
|
|
59
|
-
//# sourceMappingURL=consumer.js.map
|
package/dist/consumer.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"consumer.js","names":[],"sources":["../src/consumer.ts"],"sourcesContent":["import type { Context, Span } from \"@opentelemetry/api\";\nimport {\n CONSUMER_HOLDER_KEY,\n type ConsumerHolder,\n getConsumerHolder,\n getRequestRecord,\n getServerSpan,\n type RequestRecord,\n} from \"./context.js\";\nimport { logDebug } from \"./logger.js\";\nimport { writeRequestAttribute } from \"./requestAttributes.js\";\n\nexport interface ApitallyConsumer {\n identifier: string;\n name?: string | null;\n group?: string | null;\n}\n\nconst CONSUMER_IDENTIFIER_ATTRIBUTE = \"apitally.consumer.identifier\";\nconst CONSUMER_NAME_ATTRIBUTE = \"apitally.consumer.name\";\nconst CONSUMER_GROUP_ATTRIBUTE = \"apitally.consumer.group\";\n\nexport function setConsumer(consumer: ApitallyConsumer | string | null | undefined): void {\n try {\n const holder = getConsumerHolder();\n const record = getRequestRecord();\n const normalized = normalizeConsumer(consumer);\n if ((!holder && !record) || !normalized) {\n return;\n }\n if (holder) {\n holder.identifier = normalized.identifier;\n holder.name = normalized.name;\n holder.group = normalized.group;\n }\n writeConsumerAttributes(getServerSpan(), record, normalized);\n } catch (error) {\n logDebug(`Error setting consumer: ${String(error)}`);\n }\n}\n\n// Applies a consumer inherited in the parent context when a SERVER span starts.\nexport function writeConsumerAttributesFromContext(\n parentContext: Context,\n span: Span,\n record: RequestRecord | undefined,\n): void {\n const holder = parentContext.getValue(CONSUMER_HOLDER_KEY) as ConsumerHolder | undefined;\n if (!holder?.identifier) {\n return;\n }\n const consumer = normalizeConsumer({\n identifier: holder.identifier,\n name: holder.name,\n group: holder.group,\n });\n if (consumer) {\n writeConsumerAttributes(span, record, consumer);\n }\n}\n\nfunction writeConsumerAttributes(\n span: Span | undefined,\n record: RequestRecord | undefined,\n consumer: ApitallyConsumer,\n): void {\n writeRequestAttribute(span, record, CONSUMER_IDENTIFIER_ATTRIBUTE, consumer.identifier);\n if (consumer.name) {\n writeRequestAttribute(span, record, CONSUMER_NAME_ATTRIBUTE, consumer.name);\n }\n if (consumer.group) {\n writeRequestAttribute(span, record, CONSUMER_GROUP_ATTRIBUTE, consumer.group);\n }\n}\n\nfunction normalizeConsumer(consumer: ApitallyConsumer | string | number | null | undefined) {\n if (typeof consumer === \"object\" && consumer !== null) {\n const identifier = trimAndCap(consumer.identifier, 128);\n if (!identifier) {\n return undefined;\n }\n return {\n identifier,\n name: trimAndCap(consumer.name, 64),\n group: trimAndCap(consumer.group, 64),\n };\n }\n const identifier = trimAndCap(consumer, 128);\n return identifier ? { identifier } : undefined;\n}\n\nfunction trimAndCap(value: unknown, maxLength: number): string | undefined {\n if (typeof value !== \"string\" && typeof value !== \"number\") {\n return undefined;\n }\n return String(value).trim().slice(0, maxLength) || undefined;\n}\n"],"mappings":";;;;AAkBA,MAAM,gCAAgC;AACtC,MAAM,0BAA0B;AAChC,MAAM,2BAA2B;AAEjC,SAAgB,YAAY,UAA8D;CACxF,IAAI;EACF,MAAM,SAAS,kBAAkB;EACjC,MAAM,SAAS,iBAAiB;EAChC,MAAM,aAAa,kBAAkB,QAAQ;EAC7C,IAAK,CAAC,UAAU,CAAC,UAAW,CAAC,YAC3B;EAEF,IAAI,QAAQ;GACV,OAAO,aAAa,WAAW;GAC/B,OAAO,OAAO,WAAW;GACzB,OAAO,QAAQ,WAAW;EAC5B;EACA,wBAAwB,cAAc,GAAG,QAAQ,UAAU;CAC7D,SAAS,OAAO;EACd,SAAS,2BAA2B,OAAO,KAAK,GAAG;CACrD;AACF;AAGA,SAAgB,mCACd,eACA,MACA,QACM;CACN,MAAM,SAAS,cAAc,SAAS,mBAAmB;CACzD,IAAI,CAAC,QAAQ,YACX;CAEF,MAAM,WAAW,kBAAkB;EACjC,YAAY,OAAO;EACnB,MAAM,OAAO;EACb,OAAO,OAAO;CAChB,CAAC;CACD,IAAI,UACF,wBAAwB,MAAM,QAAQ,QAAQ;AAElD;AAEA,SAAS,wBACP,MACA,QACA,UACM;CACN,sBAAsB,MAAM,QAAQ,+BAA+B,SAAS,UAAU;CACtF,IAAI,SAAS,MACX,sBAAsB,MAAM,QAAQ,yBAAyB,SAAS,IAAI;CAE5E,IAAI,SAAS,OACX,sBAAsB,MAAM,QAAQ,0BAA0B,SAAS,KAAK;AAEhF;AAEA,SAAS,kBAAkB,UAAiE;CAC1F,IAAI,OAAO,aAAa,YAAY,aAAa,MAAM;EACrD,MAAM,aAAa,WAAW,SAAS,YAAY,GAAG;EACtD,IAAI,CAAC,YACH;EAEF,OAAO;GACL;GACA,MAAM,WAAW,SAAS,MAAM,EAAE;GAClC,OAAO,WAAW,SAAS,OAAO,EAAE;EACtC;CACF;CACA,MAAM,aAAa,WAAW,UAAU,GAAG;CAC3C,OAAO,aAAa,EAAE,WAAW,IAAI,KAAA;AACvC;AAEA,SAAS,WAAW,OAAgB,WAAuC;CACzE,IAAI,OAAO,UAAU,YAAY,OAAO,UAAU,UAChD;CAEF,OAAO,OAAO,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,SAAS,KAAK,KAAA;AACrD"}
|