@superblocksteam/telemetry 2.0.173-next.4 → 2.0.174
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/dist/browser/console-logging.js +7 -2
- package/dist/browser/console-logging.js.map +1 -1
- package/dist/browser/early-console-buffer.js +14 -12
- package/dist/browser/early-console-buffer.js.map +1 -1
- package/dist/browser/index.js +41 -12
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/init.d.ts +1 -1
- package/dist/browser/init.d.ts.map +1 -1
- package/dist/browser/init.js +52 -42
- package/dist/browser/init.js.map +1 -1
- package/dist/browser/instrumentations.js +15 -11
- package/dist/browser/instrumentations.js.map +1 -1
- package/dist/browser/logs.d.ts +1 -1
- package/dist/browser/logs.d.ts.map +1 -1
- package/dist/browser/logs.js +18 -11
- package/dist/browser/logs.js.map +1 -1
- package/dist/browser/metrics.js +12 -9
- package/dist/browser/metrics.js.map +1 -1
- package/dist/browser/resilient-exporter.d.ts +1 -1
- package/dist/browser/resilient-exporter.d.ts.map +1 -1
- package/dist/browser/resilient-exporter.js +12 -8
- package/dist/browser/resilient-exporter.js.map +1 -1
- package/dist/browser/sanitizer.js +6 -2
- package/dist/browser/sanitizer.js.map +1 -1
- package/dist/browser/traced-socket.js +18 -14
- package/dist/browser/traced-socket.js.map +1 -1
- package/dist/common/contracts/tier2-traces.js +44 -33
- package/dist/common/contracts/tier2-traces.js.map +1 -1
- package/dist/common/deployment-type.js +8 -5
- package/dist/common/deployment-type.js.map +1 -1
- package/dist/common/guardrails.js +38 -26
- package/dist/common/guardrails.js.map +1 -1
- package/dist/common/index.js +24 -8
- package/dist/common/index.js.map +1 -1
- package/dist/common/log-sanitizer.js +55 -37
- package/dist/common/log-sanitizer.js.map +1 -1
- package/dist/common/policy-evaluator.d.ts +1 -1
- package/dist/common/policy-evaluator.d.ts.map +1 -1
- package/dist/common/policy-evaluator.js +9 -5
- package/dist/common/policy-evaluator.js.map +1 -1
- package/dist/common/resource.js +25 -18
- package/dist/common/resource.js.map +1 -1
- package/dist/common/tier-hints.js +22 -12
- package/dist/common/tier-hints.js.map +1 -1
- package/dist/common/trace-sanitizer.js +10 -6
- package/dist/common/trace-sanitizer.js.map +1 -1
- package/dist/common/traced-socket-types.js +2 -1
- package/dist/common/traced-socket-types.js.map +1 -1
- package/dist/index.js +38 -6
- package/dist/index.js.map +1 -1
- package/dist/lint/forbidden-attributes.js +24 -19
- package/dist/lint/forbidden-attributes.js.map +1 -1
- package/dist/lint/index.js +8 -1
- package/dist/lint/index.js.map +1 -1
- package/dist/llmobs/index.js +9 -2
- package/dist/llmobs/index.js.map +1 -1
- package/dist/llmobs/tier1-exporter.js +12 -6
- package/dist/llmobs/tier1-exporter.js.map +1 -1
- package/dist/llmobs/tier2-summarizer.js +5 -1
- package/dist/llmobs/tier2-summarizer.js.map +1 -1
- package/dist/node/dynamic-attribute-processor.js +7 -2
- package/dist/node/dynamic-attribute-processor.js.map +1 -1
- package/dist/node/exporters/resilient-exporter.d.ts +1 -1
- package/dist/node/exporters/resilient-exporter.d.ts.map +1 -1
- package/dist/node/exporters/resilient-exporter.js +12 -8
- package/dist/node/exporters/resilient-exporter.js.map +1 -1
- package/dist/node/index.js +26 -7
- package/dist/node/index.js.map +1 -1
- package/dist/node/init.d.ts +3 -3
- package/dist/node/init.d.ts.map +1 -1
- package/dist/node/init.js +72 -66
- package/dist/node/init.js.map +1 -1
- package/dist/node/local-obs-mode.js +4 -1
- package/dist/node/local-obs-mode.js.map +1 -1
- package/dist/node/log-processor.d.ts +1 -1
- package/dist/node/log-processor.d.ts.map +1 -1
- package/dist/node/log-processor.js +55 -47
- package/dist/node/log-processor.js.map +1 -1
- package/dist/node/metrics-client.js +5 -1
- package/dist/node/metrics-client.js.map +1 -1
- package/dist/node/safe-logger.js +12 -8
- package/dist/node/safe-logger.js.map +1 -1
- package/dist/node/sanitizing-processor.d.ts +2 -2
- package/dist/node/sanitizing-processor.d.ts.map +1 -1
- package/dist/node/sanitizing-processor.js +10 -6
- package/dist/node/sanitizing-processor.js.map +1 -1
- package/dist/node/service-tracers.js +10 -7
- package/dist/node/service-tracers.js.map +1 -1
- package/dist/node/traced-socket.d.ts +3 -3
- package/dist/node/traced-socket.d.ts.map +1 -1
- package/dist/node/traced-socket.js +52 -48
- package/dist/node/traced-socket.js.map +1 -1
- package/dist/npm-registry/emitter.js +47 -34
- package/dist/npm-registry/emitter.js.map +1 -1
- package/dist/npm-registry/index.js +19 -3
- package/dist/npm-registry/index.js.map +1 -1
- package/dist/npm-registry/sanitize.js +27 -16
- package/dist/npm-registry/sanitize.js.map +1 -1
- package/dist/npm-registry/spans.js +12 -7
- package/dist/npm-registry/spans.js.map +1 -1
- package/dist/testing/in-memory-exporter.d.ts +1 -1
- package/dist/testing/in-memory-exporter.d.ts.map +1 -1
- package/dist/testing/in-memory-exporter.js +12 -6
- package/dist/testing/in-memory-exporter.js.map +1 -1
- package/dist/testing/index.js +15 -3
- package/dist/testing/index.js.map +1 -1
- package/dist/testing/metrics-capture.js +15 -12
- package/dist/testing/metrics-capture.js.map +1 -1
- package/dist/testing/test-init.js +31 -24
- package/dist/testing/test-init.js.map +1 -1
- package/dist/types/index.js +17 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/policy.js +24 -21
- package/dist/types/policy.js.map +1 -1
- package/dist-esm/browser/console-logging.d.ts +18 -0
- package/dist-esm/browser/console-logging.d.ts.map +1 -0
- package/dist-esm/browser/console-logging.js +27 -0
- package/dist-esm/browser/console-logging.js.map +1 -0
- package/dist-esm/browser/early-console-buffer.d.ts +49 -0
- package/dist-esm/browser/early-console-buffer.d.ts.map +1 -0
- package/dist-esm/browser/early-console-buffer.js +181 -0
- package/dist-esm/browser/early-console-buffer.js.map +1 -0
- package/dist-esm/browser/index.d.ts +18 -0
- package/dist-esm/browser/index.d.ts.map +1 -0
- package/dist-esm/browser/index.js +23 -0
- package/dist-esm/browser/index.js.map +1 -0
- package/dist-esm/browser/init.d.ts +100 -0
- package/dist-esm/browser/init.d.ts.map +1 -0
- package/dist-esm/browser/init.js +317 -0
- package/dist-esm/browser/init.js.map +1 -0
- package/dist-esm/browser/instrumentations.d.ts +67 -0
- package/dist-esm/browser/instrumentations.d.ts.map +1 -0
- package/dist-esm/browser/instrumentations.js +79 -0
- package/dist-esm/browser/instrumentations.js.map +1 -0
- package/dist-esm/browser/logs.d.ts +57 -0
- package/dist-esm/browser/logs.d.ts.map +1 -0
- package/dist-esm/browser/logs.js +80 -0
- package/dist-esm/browser/logs.js.map +1 -0
- package/dist-esm/browser/metrics.d.ts +29 -0
- package/dist-esm/browser/metrics.d.ts.map +1 -0
- package/dist-esm/browser/metrics.js +46 -0
- package/dist-esm/browser/metrics.js.map +1 -0
- package/dist-esm/browser/resilient-exporter.d.ts +43 -0
- package/dist-esm/browser/resilient-exporter.d.ts.map +1 -0
- package/dist-esm/browser/resilient-exporter.js +84 -0
- package/dist-esm/browser/resilient-exporter.js.map +1 -0
- package/dist-esm/browser/sanitizer.d.ts +35 -0
- package/dist-esm/browser/sanitizer.d.ts.map +1 -0
- package/dist-esm/browser/sanitizer.js +207 -0
- package/dist-esm/browser/sanitizer.js.map +1 -0
- package/dist-esm/browser/traced-socket.d.ts +102 -0
- package/dist-esm/browser/traced-socket.d.ts.map +1 -0
- package/dist-esm/browser/traced-socket.js +199 -0
- package/dist-esm/browser/traced-socket.js.map +1 -0
- package/dist-esm/common/contracts/tier2-traces.d.ts +116 -0
- package/dist-esm/common/contracts/tier2-traces.d.ts.map +1 -0
- package/dist-esm/common/contracts/tier2-traces.js +725 -0
- package/dist-esm/common/contracts/tier2-traces.js.map +1 -0
- package/dist-esm/common/deployment-type.d.ts +18 -0
- package/dist-esm/common/deployment-type.d.ts.map +1 -0
- package/dist-esm/common/deployment-type.js +27 -0
- package/dist-esm/common/deployment-type.js.map +1 -0
- package/dist-esm/common/guardrails.d.ts +132 -0
- package/dist-esm/common/guardrails.d.ts.map +1 -0
- package/dist-esm/common/guardrails.js +230 -0
- package/dist-esm/common/guardrails.js.map +1 -0
- package/dist-esm/common/index.d.ts +17 -0
- package/dist-esm/common/index.d.ts.map +1 -0
- package/dist-esm/common/index.js +17 -0
- package/dist-esm/common/index.js.map +1 -0
- package/dist-esm/common/log-sanitizer.d.ts +163 -0
- package/dist-esm/common/log-sanitizer.d.ts.map +1 -0
- package/dist-esm/common/log-sanitizer.js +745 -0
- package/dist-esm/common/log-sanitizer.js.map +1 -0
- package/dist-esm/common/policy-evaluator.d.ts +103 -0
- package/dist-esm/common/policy-evaluator.d.ts.map +1 -0
- package/dist-esm/common/policy-evaluator.js +196 -0
- package/dist-esm/common/policy-evaluator.js.map +1 -0
- package/dist-esm/common/resource.d.ts +79 -0
- package/dist-esm/common/resource.d.ts.map +1 -0
- package/dist-esm/common/resource.js +121 -0
- package/dist-esm/common/resource.js.map +1 -0
- package/dist-esm/common/tier-hints.d.ts +182 -0
- package/dist-esm/common/tier-hints.d.ts.map +1 -0
- package/dist-esm/common/tier-hints.js +199 -0
- package/dist-esm/common/tier-hints.js.map +1 -0
- package/dist-esm/common/trace-sanitizer.d.ts +82 -0
- package/dist-esm/common/trace-sanitizer.d.ts.map +1 -0
- package/dist-esm/common/trace-sanitizer.js +230 -0
- package/dist-esm/common/trace-sanitizer.js.map +1 -0
- package/dist-esm/common/traced-socket-types.d.ts +43 -0
- package/dist-esm/common/traced-socket-types.d.ts.map +1 -0
- package/dist-esm/common/traced-socket-types.js +16 -0
- package/dist-esm/common/traced-socket-types.js.map +1 -0
- package/dist-esm/index.d.ts +45 -0
- package/dist-esm/index.d.ts.map +1 -0
- package/dist-esm/index.js +56 -0
- package/dist-esm/index.js.map +1 -0
- package/dist-esm/lint/forbidden-attributes.d.ts +149 -0
- package/dist-esm/lint/forbidden-attributes.d.ts.map +1 -0
- package/dist-esm/lint/forbidden-attributes.js +210 -0
- package/dist-esm/lint/forbidden-attributes.js.map +1 -0
- package/dist-esm/lint/index.d.ts +9 -0
- package/dist-esm/lint/index.d.ts.map +1 -0
- package/dist-esm/lint/index.js +9 -0
- package/dist-esm/lint/index.js.map +1 -0
- package/dist-esm/llmobs/index.d.ts +22 -0
- package/dist-esm/llmobs/index.d.ts.map +1 -0
- package/dist-esm/llmobs/index.js +22 -0
- package/dist-esm/llmobs/index.js.map +1 -0
- package/dist-esm/llmobs/tier1-exporter.d.ts +146 -0
- package/dist-esm/llmobs/tier1-exporter.d.ts.map +1 -0
- package/dist-esm/llmobs/tier1-exporter.js +193 -0
- package/dist-esm/llmobs/tier1-exporter.js.map +1 -0
- package/dist-esm/llmobs/tier2-summarizer.d.ts +268 -0
- package/dist-esm/llmobs/tier2-summarizer.d.ts.map +1 -0
- package/dist-esm/llmobs/tier2-summarizer.js +652 -0
- package/dist-esm/llmobs/tier2-summarizer.js.map +1 -0
- package/dist-esm/node/dynamic-attribute-processor.d.ts +43 -0
- package/dist-esm/node/dynamic-attribute-processor.d.ts.map +1 -0
- package/dist-esm/node/dynamic-attribute-processor.js +74 -0
- package/dist-esm/node/dynamic-attribute-processor.js.map +1 -0
- package/dist-esm/node/exporters/resilient-exporter.d.ts +91 -0
- package/dist-esm/node/exporters/resilient-exporter.d.ts.map +1 -0
- package/dist-esm/node/exporters/resilient-exporter.js +132 -0
- package/dist-esm/node/exporters/resilient-exporter.js.map +1 -0
- package/dist-esm/node/index.d.ts +13 -0
- package/dist-esm/node/index.d.ts.map +1 -0
- package/dist-esm/node/index.js +13 -0
- package/dist-esm/node/index.js.map +1 -0
- package/dist-esm/node/init.d.ts +97 -0
- package/dist-esm/node/init.d.ts.map +1 -0
- package/dist-esm/node/init.js +359 -0
- package/dist-esm/node/init.js.map +1 -0
- package/dist-esm/node/local-obs-mode.d.ts +17 -0
- package/dist-esm/node/local-obs-mode.d.ts.map +1 -0
- package/dist-esm/node/local-obs-mode.js +19 -0
- package/dist-esm/node/local-obs-mode.js.map +1 -0
- package/dist-esm/node/log-processor.d.ts +132 -0
- package/dist-esm/node/log-processor.d.ts.map +1 -0
- package/dist-esm/node/log-processor.js +389 -0
- package/dist-esm/node/log-processor.js.map +1 -0
- package/dist-esm/node/metrics-client.d.ts +88 -0
- package/dist-esm/node/metrics-client.d.ts.map +1 -0
- package/dist-esm/node/metrics-client.js +205 -0
- package/dist-esm/node/metrics-client.js.map +1 -0
- package/dist-esm/node/safe-logger.d.ts +55 -0
- package/dist-esm/node/safe-logger.d.ts.map +1 -0
- package/dist-esm/node/safe-logger.js +154 -0
- package/dist-esm/node/safe-logger.js.map +1 -0
- package/dist-esm/node/sanitizing-processor.d.ts +67 -0
- package/dist-esm/node/sanitizing-processor.d.ts.map +1 -0
- package/dist-esm/node/sanitizing-processor.js +163 -0
- package/dist-esm/node/sanitizing-processor.js.map +1 -0
- package/dist-esm/node/service-tracers.d.ts +52 -0
- package/dist-esm/node/service-tracers.d.ts.map +1 -0
- package/dist-esm/node/service-tracers.js +78 -0
- package/dist-esm/node/service-tracers.js.map +1 -0
- package/dist-esm/node/traced-socket.d.ts +120 -0
- package/dist-esm/node/traced-socket.d.ts.map +1 -0
- package/dist-esm/node/traced-socket.js +334 -0
- package/dist-esm/node/traced-socket.js.map +1 -0
- package/dist-esm/npm-registry/emitter.d.ts +330 -0
- package/dist-esm/npm-registry/emitter.d.ts.map +1 -0
- package/dist-esm/npm-registry/emitter.js +546 -0
- package/dist-esm/npm-registry/emitter.js.map +1 -0
- package/dist-esm/npm-registry/index.d.ts +12 -0
- package/dist-esm/npm-registry/index.d.ts.map +1 -0
- package/dist-esm/npm-registry/index.js +12 -0
- package/dist-esm/npm-registry/index.js.map +1 -0
- package/dist-esm/npm-registry/sanitize.d.ts +174 -0
- package/dist-esm/npm-registry/sanitize.d.ts.map +1 -0
- package/dist-esm/npm-registry/sanitize.js +331 -0
- package/dist-esm/npm-registry/sanitize.js.map +1 -0
- package/dist-esm/npm-registry/spans.d.ts +61 -0
- package/dist-esm/npm-registry/spans.d.ts.map +1 -0
- package/dist-esm/npm-registry/spans.js +86 -0
- package/dist-esm/npm-registry/spans.js.map +1 -0
- package/dist-esm/package.json +1 -0
- package/dist-esm/testing/in-memory-exporter.d.ts +179 -0
- package/dist-esm/testing/in-memory-exporter.d.ts.map +1 -0
- package/dist-esm/testing/in-memory-exporter.js +250 -0
- package/dist-esm/testing/in-memory-exporter.js.map +1 -0
- package/dist-esm/testing/index.d.ts +9 -0
- package/dist-esm/testing/index.d.ts.map +1 -0
- package/dist-esm/testing/index.js +9 -0
- package/dist-esm/testing/index.js.map +1 -0
- package/dist-esm/testing/metrics-capture.d.ts +29 -0
- package/dist-esm/testing/metrics-capture.d.ts.map +1 -0
- package/dist-esm/testing/metrics-capture.js +71 -0
- package/dist-esm/testing/metrics-capture.js.map +1 -0
- package/dist-esm/testing/test-init.d.ts +80 -0
- package/dist-esm/testing/test-init.d.ts.map +1 -0
- package/dist-esm/testing/test-init.js +137 -0
- package/dist-esm/testing/test-init.js.map +1 -0
- package/dist-esm/types/index.d.ts +84 -0
- package/dist-esm/types/index.d.ts.map +1 -0
- package/dist-esm/types/index.js +7 -0
- package/dist-esm/types/index.js.map +1 -0
- package/dist-esm/types/policy.d.ts +92 -0
- package/dist-esm/types/policy.d.ts.map +1 -0
- package/dist-esm/types/policy.js +122 -0
- package/dist-esm/types/policy.js.map +1 -0
- package/package.json +17 -11
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tier2-traces.js","sourceRoot":"","sources":["../../../src/common/contracts/tier2-traces.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deployment Type Parsing
|
|
3
|
+
*
|
|
4
|
+
* Shared utility for validating and parsing deployment type values.
|
|
5
|
+
* Used by both the server and CLI telemetry initialization.
|
|
6
|
+
*/
|
|
7
|
+
import { DeploymentTypeEnum } from "@superblocksteam/shared";
|
|
8
|
+
/**
|
|
9
|
+
* Parse and validate a deployment type string.
|
|
10
|
+
*
|
|
11
|
+
* Returns CLOUD if not specified. Throws if an invalid value is provided.
|
|
12
|
+
*
|
|
13
|
+
* @param value - Raw deployment type string (typically from env var)
|
|
14
|
+
* @returns Valid DeploymentTypeEnum value
|
|
15
|
+
* @throws Error if value is not a valid DeploymentTypeEnum
|
|
16
|
+
*/
|
|
17
|
+
export declare function parseDeploymentType(value: string | undefined): DeploymentTypeEnum;
|
|
18
|
+
//# sourceMappingURL=deployment-type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployment-type.d.ts","sourceRoot":"","sources":["../../src/common/deployment-type.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,GAAG,SAAS,GACxB,kBAAkB,CAapB"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deployment Type Parsing
|
|
3
|
+
*
|
|
4
|
+
* Shared utility for validating and parsing deployment type values.
|
|
5
|
+
* Used by both the server and CLI telemetry initialization.
|
|
6
|
+
*/
|
|
7
|
+
import { DeploymentTypeEnum } from "@superblocksteam/shared";
|
|
8
|
+
/**
|
|
9
|
+
* Parse and validate a deployment type string.
|
|
10
|
+
*
|
|
11
|
+
* Returns CLOUD if not specified. Throws if an invalid value is provided.
|
|
12
|
+
*
|
|
13
|
+
* @param value - Raw deployment type string (typically from env var)
|
|
14
|
+
* @returns Valid DeploymentTypeEnum value
|
|
15
|
+
* @throws Error if value is not a valid DeploymentTypeEnum
|
|
16
|
+
*/
|
|
17
|
+
export function parseDeploymentType(value) {
|
|
18
|
+
if (!value || value === "") {
|
|
19
|
+
return DeploymentTypeEnum.CLOUD;
|
|
20
|
+
}
|
|
21
|
+
if (!Object.values(DeploymentTypeEnum).includes(value)) {
|
|
22
|
+
throw new Error(`Invalid SUPERBLOCKS_DEPLOYMENT_TYPE: "${value}". ` +
|
|
23
|
+
`Valid values are: ${Object.values(DeploymentTypeEnum).join(", ")}.`);
|
|
24
|
+
}
|
|
25
|
+
return value;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=deployment-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployment-type.js","sourceRoot":"","sources":["../../src/common/deployment-type.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAAyB;IAEzB,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QAC3B,OAAO,kBAAkB,CAAC,KAAK,CAAC;IAClC,CAAC;IACD,IACE,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,KAA2B,CAAC,EACxE,CAAC;QACD,MAAM,IAAI,KAAK,CACb,yCAAyC,KAAK,KAAK;YACjD,qBAAqB,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACvE,CAAC;IACJ,CAAC;IACD,OAAO,KAA2B,CAAC;AACrC,CAAC"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Telemetry Guardrails
|
|
3
|
+
*
|
|
4
|
+
* Guardrails to detect forbidden or high-cardinality attributes.
|
|
5
|
+
*
|
|
6
|
+
* NOTE: In the tiered telemetry architecture, the OTEL Collector handles
|
|
7
|
+
* runtime filtering and sanitization of span and log attributes. These
|
|
8
|
+
* guardrails are for:
|
|
9
|
+
* - ESLint rules (static analysis)
|
|
10
|
+
* - Development warnings (not enforcement)
|
|
11
|
+
* - CI validation
|
|
12
|
+
* - The runtime metric label guard: CUSTOMER_SCALED_LABEL_KEYS and
|
|
13
|
+
* isCustomerScaledLabelKey are read by the server metrics client
|
|
14
|
+
* (packages/server/src/utils/metrics.ts) on every metric registration and
|
|
15
|
+
* emit, so editing the set changes which labels production server metrics carry.
|
|
16
|
+
*
|
|
17
|
+
* See obs/otel-collector/config-tiered.yaml for collector-side runtime
|
|
18
|
+
* enforcement of the span and log rules.
|
|
19
|
+
*/
|
|
20
|
+
import type { Attributes } from "@opentelemetry/api";
|
|
21
|
+
/**
|
|
22
|
+
* Guardrail violation types.
|
|
23
|
+
*/
|
|
24
|
+
export declare enum ViolationType {
|
|
25
|
+
/** Attribute is forbidden in Tier 2 */
|
|
26
|
+
FORBIDDEN_ATTRIBUTE = "forbidden_attribute",
|
|
27
|
+
/** Attribute should be a resource attribute, not span attribute */
|
|
28
|
+
RESOURCE_ONLY = "resource_only",
|
|
29
|
+
/** Value contains forbidden pattern (JWT, API key, etc.) */
|
|
30
|
+
FORBIDDEN_VALUE = "forbidden_value",
|
|
31
|
+
/** Attribute value has too high cardinality */
|
|
32
|
+
HIGH_CARDINALITY = "high_cardinality",
|
|
33
|
+
/** Metric label key identifies a customer-scaled entity (organization, agent, user, application, page, api, integration, profile) */
|
|
34
|
+
CUSTOMER_SCALED_LABEL = "customer_scaled_label"
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Guardrail violation record.
|
|
38
|
+
*/
|
|
39
|
+
export interface GuardrailViolation {
|
|
40
|
+
/** Type of violation */
|
|
41
|
+
type: ViolationType;
|
|
42
|
+
/** Attribute key that violated */
|
|
43
|
+
attributeKey: string;
|
|
44
|
+
/** Human-readable message */
|
|
45
|
+
message: string;
|
|
46
|
+
/** Severity level */
|
|
47
|
+
severity: "error" | "warning";
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Mode for guardrail reporting.
|
|
51
|
+
*
|
|
52
|
+
* NOTE: Runtime filtering is handled by the OTEL Collector.
|
|
53
|
+
* These modes are for lint-time/development feedback only.
|
|
54
|
+
*/
|
|
55
|
+
export declare enum GuardrailMode {
|
|
56
|
+
/** Log violations as warnings (development) */
|
|
57
|
+
WARN = "warn",
|
|
58
|
+
/** Throw on violations (CI/strict mode) */
|
|
59
|
+
STRICT = "strict"
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Options for guardrail validation.
|
|
63
|
+
*/
|
|
64
|
+
export interface GuardrailOptions {
|
|
65
|
+
/** Reporting mode */
|
|
66
|
+
mode: GuardrailMode;
|
|
67
|
+
/** Whether to check for high-cardinality values */
|
|
68
|
+
checkCardinality?: boolean;
|
|
69
|
+
/** Maximum allowed cardinality for string values */
|
|
70
|
+
maxCardinalityLength?: number;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Label keys whose value count grows with customers rather than with code.
|
|
74
|
+
* Never allowed on a metric; they belong on spans and logs. Keys are compared
|
|
75
|
+
* after normalizeLabelKey, so camelCase and every separator spelling are covered.
|
|
76
|
+
*/
|
|
77
|
+
export declare const CUSTOMER_SCALED_LABEL_KEYS: ReadonlySet<string>;
|
|
78
|
+
export declare function normalizeLabelKey(key: string): string;
|
|
79
|
+
export declare function isCustomerScaledLabelKey(key: string): boolean;
|
|
80
|
+
/**
|
|
81
|
+
* Validate span attributes against Tier 2 guardrails.
|
|
82
|
+
*
|
|
83
|
+
* This is for lint-time validation. Runtime filtering is handled by Collector.
|
|
84
|
+
*
|
|
85
|
+
* @param attributes - Attributes to validate
|
|
86
|
+
* @param options - Guardrail options
|
|
87
|
+
* @returns Array of violations found
|
|
88
|
+
*/
|
|
89
|
+
export declare function validateSpanAttributes(attributes: Attributes, options?: Partial<GuardrailOptions>): GuardrailViolation[];
|
|
90
|
+
/**
|
|
91
|
+
* Validate metric labels against Tier 2 guardrails.
|
|
92
|
+
*
|
|
93
|
+
* @param labels - Metric labels to validate
|
|
94
|
+
* @param options - Guardrail options
|
|
95
|
+
* @returns Array of violations found
|
|
96
|
+
*/
|
|
97
|
+
export declare function validateMetricLabels(labels: Record<string, string | number | boolean>, options?: Partial<GuardrailOptions>): GuardrailViolation[];
|
|
98
|
+
/**
|
|
99
|
+
* Report guardrail violations.
|
|
100
|
+
*
|
|
101
|
+
* NOTE: This is for development feedback only. Runtime filtering
|
|
102
|
+
* is handled by the OTEL Collector.
|
|
103
|
+
*
|
|
104
|
+
* @param attributes - Attributes to check
|
|
105
|
+
* @param options - Guardrail options
|
|
106
|
+
* @throws Error in STRICT mode if violations found
|
|
107
|
+
*/
|
|
108
|
+
export declare function reportViolations(attributes: Attributes, options?: Partial<GuardrailOptions>): void;
|
|
109
|
+
/**
|
|
110
|
+
* Check if an attribute key is allowed in Tier 2.
|
|
111
|
+
* Convenience function for quick checks.
|
|
112
|
+
*
|
|
113
|
+
* @param key - Attribute key
|
|
114
|
+
* @returns true if allowed
|
|
115
|
+
*/
|
|
116
|
+
export declare function isTier2Allowed(key: string): boolean;
|
|
117
|
+
/**
|
|
118
|
+
* Check if an attribute should be hashed (by Collector).
|
|
119
|
+
*
|
|
120
|
+
* @param key - Attribute key
|
|
121
|
+
* @returns true if should be hashed
|
|
122
|
+
*/
|
|
123
|
+
export declare function shouldHash(key: string): boolean;
|
|
124
|
+
/**
|
|
125
|
+
* Get all forbidden attribute names (for documentation/linting).
|
|
126
|
+
*/
|
|
127
|
+
export declare function getForbiddenAttributes(): string[];
|
|
128
|
+
/**
|
|
129
|
+
* Get all hashed attribute names (for documentation/linting).
|
|
130
|
+
*/
|
|
131
|
+
export declare function getHashedAttributes(): string[];
|
|
132
|
+
//# sourceMappingURL=guardrails.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guardrails.d.ts","sourceRoot":"","sources":["../../src/common/guardrails.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAUrD;;GAEG;AACH,oBAAY,aAAa;IACvB,uCAAuC;IACvC,mBAAmB,wBAAwB;IAC3C,mEAAmE;IACnE,aAAa,kBAAkB;IAC/B,4DAA4D;IAC5D,eAAe,oBAAoB;IACnC,+CAA+C;IAC/C,gBAAgB,qBAAqB;IACrC,qIAAqI;IACrI,qBAAqB,0BAA0B;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,kCAAkC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED;;;;;GAKG;AACH,oBAAY,aAAa;IACvB,+CAA+C;IAC/C,IAAI,SAAS;IACb,2CAA2C;IAC3C,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qBAAqB;IACrB,IAAI,EAAE,aAAa,CAAC;IACpB,mDAAmD;IACnD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oDAAoD;IACpD,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAQD;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,EAAE,WAAW,CAAC,MAAM,CAezD,CAAC;AAEH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAMrD;AAED,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,UAAU,EACtB,OAAO,GAAE,OAAO,CAAC,gBAAgB,CAAM,GACtC,kBAAkB,EAAE,CAyDtB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EACjD,OAAO,GAAE,OAAO,CAAC,gBAAgB,CAAM,GACtC,kBAAkB,EAAE,CAgBtB;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,EACtB,OAAO,GAAE,OAAO,CAAC,gBAAgB,CAAM,GACtC,IAAI,CAuBN;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAMnD;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE/C;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,EAAE,CAEjD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,EAAE,CAE9C"}
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Telemetry Guardrails
|
|
3
|
+
*
|
|
4
|
+
* Guardrails to detect forbidden or high-cardinality attributes.
|
|
5
|
+
*
|
|
6
|
+
* NOTE: In the tiered telemetry architecture, the OTEL Collector handles
|
|
7
|
+
* runtime filtering and sanitization of span and log attributes. These
|
|
8
|
+
* guardrails are for:
|
|
9
|
+
* - ESLint rules (static analysis)
|
|
10
|
+
* - Development warnings (not enforcement)
|
|
11
|
+
* - CI validation
|
|
12
|
+
* - The runtime metric label guard: CUSTOMER_SCALED_LABEL_KEYS and
|
|
13
|
+
* isCustomerScaledLabelKey are read by the server metrics client
|
|
14
|
+
* (packages/server/src/utils/metrics.ts) on every metric registration and
|
|
15
|
+
* emit, so editing the set changes which labels production server metrics carry.
|
|
16
|
+
*
|
|
17
|
+
* See obs/otel-collector/config-tiered.yaml for collector-side runtime
|
|
18
|
+
* enforcement of the span and log rules.
|
|
19
|
+
*/
|
|
20
|
+
import { TIER2_FORBIDDEN_ATTRIBUTES, TIER2_HASHED_ATTRIBUTES, TIER2_DROPPED_ATTRIBUTES, containsForbiddenPattern, } from "./contracts/tier2-traces.js";
|
|
21
|
+
import { RESOURCE_ONLY_ATTRIBUTES } from "./resource.js";
|
|
22
|
+
/**
|
|
23
|
+
* Guardrail violation types.
|
|
24
|
+
*/
|
|
25
|
+
export var ViolationType;
|
|
26
|
+
(function (ViolationType) {
|
|
27
|
+
/** Attribute is forbidden in Tier 2 */
|
|
28
|
+
ViolationType["FORBIDDEN_ATTRIBUTE"] = "forbidden_attribute";
|
|
29
|
+
/** Attribute should be a resource attribute, not span attribute */
|
|
30
|
+
ViolationType["RESOURCE_ONLY"] = "resource_only";
|
|
31
|
+
/** Value contains forbidden pattern (JWT, API key, etc.) */
|
|
32
|
+
ViolationType["FORBIDDEN_VALUE"] = "forbidden_value";
|
|
33
|
+
/** Attribute value has too high cardinality */
|
|
34
|
+
ViolationType["HIGH_CARDINALITY"] = "high_cardinality";
|
|
35
|
+
/** Metric label key identifies a customer-scaled entity (organization, agent, user, application, page, api, integration, profile) */
|
|
36
|
+
ViolationType["CUSTOMER_SCALED_LABEL"] = "customer_scaled_label";
|
|
37
|
+
})(ViolationType || (ViolationType = {}));
|
|
38
|
+
/**
|
|
39
|
+
* Mode for guardrail reporting.
|
|
40
|
+
*
|
|
41
|
+
* NOTE: Runtime filtering is handled by the OTEL Collector.
|
|
42
|
+
* These modes are for lint-time/development feedback only.
|
|
43
|
+
*/
|
|
44
|
+
export var GuardrailMode;
|
|
45
|
+
(function (GuardrailMode) {
|
|
46
|
+
/** Log violations as warnings (development) */
|
|
47
|
+
GuardrailMode["WARN"] = "warn";
|
|
48
|
+
/** Throw on violations (CI/strict mode) */
|
|
49
|
+
GuardrailMode["STRICT"] = "strict";
|
|
50
|
+
})(GuardrailMode || (GuardrailMode = {}));
|
|
51
|
+
const DEFAULT_OPTIONS = {
|
|
52
|
+
mode: GuardrailMode.WARN,
|
|
53
|
+
checkCardinality: true,
|
|
54
|
+
maxCardinalityLength: 200,
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Label keys whose value count grows with customers rather than with code.
|
|
58
|
+
* Never allowed on a metric; they belong on spans and logs. Keys are compared
|
|
59
|
+
* after normalizeLabelKey, so camelCase and every separator spelling are covered.
|
|
60
|
+
*/
|
|
61
|
+
export const CUSTOMER_SCALED_LABEL_KEYS = new Set([
|
|
62
|
+
"organization_id",
|
|
63
|
+
"organization_name",
|
|
64
|
+
"org_id",
|
|
65
|
+
"org_name",
|
|
66
|
+
"agent_id",
|
|
67
|
+
"agent_url",
|
|
68
|
+
"user_id",
|
|
69
|
+
"user_email",
|
|
70
|
+
"application_id",
|
|
71
|
+
"app_id",
|
|
72
|
+
"page_id",
|
|
73
|
+
"api_id",
|
|
74
|
+
"integration_id",
|
|
75
|
+
"profile_id",
|
|
76
|
+
]);
|
|
77
|
+
export function normalizeLabelKey(key) {
|
|
78
|
+
return key
|
|
79
|
+
.replace(/([A-Z])([A-Z][a-z])/g, "$1_$2")
|
|
80
|
+
.replace(/([a-z0-9])([A-Z])/g, "$1_$2")
|
|
81
|
+
.toLowerCase()
|
|
82
|
+
.replace(/[^a-z0-9]+/g, "_");
|
|
83
|
+
}
|
|
84
|
+
export function isCustomerScaledLabelKey(key) {
|
|
85
|
+
return CUSTOMER_SCALED_LABEL_KEYS.has(normalizeLabelKey(key));
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Validate span attributes against Tier 2 guardrails.
|
|
89
|
+
*
|
|
90
|
+
* This is for lint-time validation. Runtime filtering is handled by Collector.
|
|
91
|
+
*
|
|
92
|
+
* @param attributes - Attributes to validate
|
|
93
|
+
* @param options - Guardrail options
|
|
94
|
+
* @returns Array of violations found
|
|
95
|
+
*/
|
|
96
|
+
export function validateSpanAttributes(attributes, options = {}) {
|
|
97
|
+
const opts = { ...DEFAULT_OPTIONS, ...options };
|
|
98
|
+
const violations = [];
|
|
99
|
+
for (const [key, value] of Object.entries(attributes)) {
|
|
100
|
+
// Check for forbidden attributes
|
|
101
|
+
if (TIER2_FORBIDDEN_ATTRIBUTES.has(key)) {
|
|
102
|
+
violations.push({
|
|
103
|
+
type: ViolationType.FORBIDDEN_ATTRIBUTE,
|
|
104
|
+
attributeKey: key,
|
|
105
|
+
message: `Attribute '${key}' is forbidden in Tier 2 telemetry. ` +
|
|
106
|
+
`Collector will filter this at runtime.`,
|
|
107
|
+
severity: "warning",
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
// Check for resource-only attributes
|
|
111
|
+
if (RESOURCE_ONLY_ATTRIBUTES.has(key)) {
|
|
112
|
+
violations.push({
|
|
113
|
+
type: ViolationType.RESOURCE_ONLY,
|
|
114
|
+
attributeKey: key,
|
|
115
|
+
message: `Attribute '${key}' should be a RESOURCE attribute, not a span attribute. ` +
|
|
116
|
+
`Set it in initNodeTelemetry() config, not per-span.`,
|
|
117
|
+
severity: "warning",
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
// Check for forbidden value patterns
|
|
121
|
+
if (containsForbiddenPattern(value)) {
|
|
122
|
+
violations.push({
|
|
123
|
+
type: ViolationType.FORBIDDEN_VALUE,
|
|
124
|
+
attributeKey: key,
|
|
125
|
+
message: `Attribute '${key}' contains a forbidden pattern (JWT, API key, etc.). ` +
|
|
126
|
+
`Collector will filter this at runtime.`,
|
|
127
|
+
severity: "warning",
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
// Check for high cardinality
|
|
131
|
+
if (opts.checkCardinality && typeof value === "string") {
|
|
132
|
+
if (value.length > opts.maxCardinalityLength) {
|
|
133
|
+
violations.push({
|
|
134
|
+
type: ViolationType.HIGH_CARDINALITY,
|
|
135
|
+
attributeKey: key,
|
|
136
|
+
message: `Attribute '${key}' has a very long value (${value.length} chars). ` +
|
|
137
|
+
`This may cause high cardinality. Consider using a shorter, normalized value.`,
|
|
138
|
+
severity: "warning",
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
return violations;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Validate metric labels against Tier 2 guardrails.
|
|
147
|
+
*
|
|
148
|
+
* @param labels - Metric labels to validate
|
|
149
|
+
* @param options - Guardrail options
|
|
150
|
+
* @returns Array of violations found
|
|
151
|
+
*/
|
|
152
|
+
export function validateMetricLabels(labels, options = {}) {
|
|
153
|
+
// Metric labels follow the span rules plus the customer-scaled key rule.
|
|
154
|
+
const violations = validateSpanAttributes(labels, options);
|
|
155
|
+
for (const key of Object.keys(labels)) {
|
|
156
|
+
if (isCustomerScaledLabelKey(key)) {
|
|
157
|
+
violations.push({
|
|
158
|
+
type: ViolationType.CUSTOMER_SCALED_LABEL,
|
|
159
|
+
attributeKey: key,
|
|
160
|
+
message: `Metric label '${key}' identifies a customer-scaled entity and is never allowed on a metric. ` +
|
|
161
|
+
`Record it on a span or log instead.`,
|
|
162
|
+
severity: "error",
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
return violations;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Report guardrail violations.
|
|
170
|
+
*
|
|
171
|
+
* NOTE: This is for development feedback only. Runtime filtering
|
|
172
|
+
* is handled by the OTEL Collector.
|
|
173
|
+
*
|
|
174
|
+
* @param attributes - Attributes to check
|
|
175
|
+
* @param options - Guardrail options
|
|
176
|
+
* @throws Error in STRICT mode if violations found
|
|
177
|
+
*/
|
|
178
|
+
export function reportViolations(attributes, options = {}) {
|
|
179
|
+
const opts = { ...DEFAULT_OPTIONS, ...options };
|
|
180
|
+
const violations = validateSpanAttributes(attributes, opts);
|
|
181
|
+
if (violations.length === 0) {
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
switch (opts.mode) {
|
|
185
|
+
case GuardrailMode.STRICT: {
|
|
186
|
+
throw new Error(`Guardrail violations found:\n` +
|
|
187
|
+
violations.map((v) => ` - ${v.message}`).join("\n"));
|
|
188
|
+
}
|
|
189
|
+
case GuardrailMode.WARN: {
|
|
190
|
+
violations.forEach((v) => {
|
|
191
|
+
console.warn(`[Guardrail] ${v.message}`);
|
|
192
|
+
});
|
|
193
|
+
break;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Check if an attribute key is allowed in Tier 2.
|
|
199
|
+
* Convenience function for quick checks.
|
|
200
|
+
*
|
|
201
|
+
* @param key - Attribute key
|
|
202
|
+
* @returns true if allowed
|
|
203
|
+
*/
|
|
204
|
+
export function isTier2Allowed(key) {
|
|
205
|
+
return (!TIER2_FORBIDDEN_ATTRIBUTES.has(key) &&
|
|
206
|
+
!TIER2_DROPPED_ATTRIBUTES.has(key) &&
|
|
207
|
+
!RESOURCE_ONLY_ATTRIBUTES.has(key));
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Check if an attribute should be hashed (by Collector).
|
|
211
|
+
*
|
|
212
|
+
* @param key - Attribute key
|
|
213
|
+
* @returns true if should be hashed
|
|
214
|
+
*/
|
|
215
|
+
export function shouldHash(key) {
|
|
216
|
+
return TIER2_HASHED_ATTRIBUTES.has(key);
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Get all forbidden attribute names (for documentation/linting).
|
|
220
|
+
*/
|
|
221
|
+
export function getForbiddenAttributes() {
|
|
222
|
+
return [...TIER2_FORBIDDEN_ATTRIBUTES];
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Get all hashed attribute names (for documentation/linting).
|
|
226
|
+
*/
|
|
227
|
+
export function getHashedAttributes() {
|
|
228
|
+
return [...TIER2_HASHED_ATTRIBUTES];
|
|
229
|
+
}
|
|
230
|
+
//# sourceMappingURL=guardrails.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guardrails.js","sourceRoot":"","sources":["../../src/common/guardrails.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Common Telemetry Utilities
|
|
3
|
+
*
|
|
4
|
+
* Shared utilities for resource building and policy evaluation.
|
|
5
|
+
*
|
|
6
|
+
* NOTE: Sanitization and routing are handled by the OTEL Collector
|
|
7
|
+
* in the tiered telemetry architecture. See obs/otel-collector/config-tiered.yaml.
|
|
8
|
+
*/
|
|
9
|
+
export * from "./deployment-type.js";
|
|
10
|
+
export * from "./traced-socket-types.js";
|
|
11
|
+
export * from "./resource.js";
|
|
12
|
+
export * from "./policy-evaluator.js";
|
|
13
|
+
export * from "./guardrails.js";
|
|
14
|
+
export * from "./contracts/tier2-traces.js";
|
|
15
|
+
export * from "./log-sanitizer.js";
|
|
16
|
+
export * from "./tier-hints.js";
|
|
17
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Common Telemetry Utilities
|
|
3
|
+
*
|
|
4
|
+
* Shared utilities for resource building and policy evaluation.
|
|
5
|
+
*
|
|
6
|
+
* NOTE: Sanitization and routing are handled by the OTEL Collector
|
|
7
|
+
* in the tiered telemetry architecture. See obs/otel-collector/config-tiered.yaml.
|
|
8
|
+
*/
|
|
9
|
+
export * from "./deployment-type.js";
|
|
10
|
+
export * from "./traced-socket-types.js";
|
|
11
|
+
export * from "./resource.js";
|
|
12
|
+
export * from "./policy-evaluator.js";
|
|
13
|
+
export * from "./guardrails.js";
|
|
14
|
+
export * from "./contracts/tier2-traces.js";
|
|
15
|
+
export * from "./log-sanitizer.js";
|
|
16
|
+
export * from "./tier-hints.js";
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC"}
|