@intentius/chant-lexicon-otel 0.106.3 → 0.107.1
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 +1 -1
- package/dist/collector.d.ts +6 -0
- package/dist/collector.d.ts.map +1 -1
- package/dist/composites/catalog.d.ts.map +1 -1
- package/dist/composites/genai-pipeline.d.ts +33 -0
- package/dist/composites/genai-pipeline.d.ts.map +1 -0
- package/dist/composites/index.d.ts +8 -0
- package/dist/composites/index.d.ts.map +1 -1
- package/dist/composites/otlp-collector.d.ts +43 -0
- package/dist/composites/otlp-collector.d.ts.map +1 -0
- package/dist/composites/red-metrics.d.ts +77 -0
- package/dist/composites/red-metrics.d.ts.map +1 -0
- package/dist/composites/tail-sampling-tier.d.ts +90 -0
- package/dist/composites/tail-sampling-tier.d.ts.map +1 -0
- package/dist/configmap.d.ts +16 -0
- package/dist/configmap.d.ts.map +1 -1
- package/dist/genai.d.ts +19 -0
- package/dist/genai.d.ts.map +1 -1
- package/dist/import/embedded.d.ts +8 -0
- package/dist/import/embedded.d.ts.map +1 -1
- package/dist/index.d.ts +8 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/integrity.json +3 -3
- package/dist/lint/post-synth/otel-helpers.d.ts +9 -2
- package/dist/lint/post-synth/otel-helpers.d.ts.map +1 -1
- package/dist/manifest.json +1 -1
- package/dist/metric-names.d.ts +68 -0
- package/dist/metric-names.d.ts.map +1 -1
- package/dist/op/activities/collector-audit.d.ts +95 -0
- package/dist/op/activities/collector-audit.d.ts.map +1 -0
- package/dist/op/activities/collector-health.d.ts +74 -0
- package/dist/op/activities/collector-health.d.ts.map +1 -0
- package/dist/op/activities/exec.d.ts +19 -0
- package/dist/op/activities/exec.d.ts.map +1 -0
- package/dist/op/activities/github.d.ts +55 -0
- package/dist/op/activities/github.d.ts.map +1 -0
- package/dist/op/activities/index.d.ts +20 -0
- package/dist/op/activities/index.d.ts.map +1 -0
- package/dist/op/activities/otelcol.d.ts +96 -0
- package/dist/op/activities/otelcol.d.ts.map +1 -0
- package/dist/op/activity-contracts.d.ts +96 -0
- package/dist/op/activity-contracts.d.ts.map +1 -0
- package/dist/op/audit-op.d.ts +35 -0
- package/dist/op/audit-op.d.ts.map +1 -0
- package/dist/op/builders.d.ts +43 -0
- package/dist/op/builders.d.ts.map +1 -0
- package/dist/platform.d.ts +14 -0
- package/dist/platform.d.ts.map +1 -1
- package/dist/rules/otel-helpers.ts +18 -5
- package/package.json +14 -3
- package/src/collector.ts +9 -0
- package/src/composites/catalog.test.ts +1 -1
- package/src/composites/catalog.ts +292 -0
- package/src/composites/genai-pipeline.test.ts +53 -0
- package/src/composites/genai-pipeline.ts +40 -0
- package/src/composites/index.ts +8 -0
- package/src/composites/otlp-collector.test.ts +43 -0
- package/src/composites/otlp-collector.ts +70 -0
- package/src/composites/red-metrics.test.ts +131 -0
- package/src/composites/red-metrics.ts +148 -0
- package/src/composites/tail-sampling-tier.test.ts +100 -0
- package/src/composites/tail-sampling-tier.ts +182 -0
- package/src/configmap-operator.test.ts +44 -0
- package/src/configmap.ts +35 -0
- package/src/detect.ts +13 -1
- package/src/genai.ts +72 -59
- package/src/import/embedded.test.ts +36 -0
- package/src/import/embedded.ts +28 -4
- package/src/index.ts +57 -2
- package/src/lint/post-synth/otel-helpers.ts +18 -5
- package/src/metric-names.ts +141 -0
- package/src/op/activities/collector-audit.test.ts +166 -0
- package/src/op/activities/collector-audit.ts +265 -0
- package/src/op/activities/collector-health.test.ts +115 -0
- package/src/op/activities/collector-health.ts +211 -0
- package/src/op/activities/exec.ts +33 -0
- package/src/op/activities/github.ts +127 -0
- package/src/op/activities/index.ts +19 -0
- package/src/op/activities/otelcol.test.ts +162 -0
- package/src/op/activities/otelcol.ts +233 -0
- package/src/op/activity-contracts.test.ts +103 -0
- package/src/op/activity-contracts.ts +92 -0
- package/src/op/audit-op.ts +53 -0
- package/src/op/builders.ts +52 -0
- package/src/op/testdata/otelcol-components-v0.130.0.yaml +82 -0
- package/src/platform.ts +45 -8
package/README.md
CHANGED
|
@@ -75,7 +75,7 @@ OTEL001 and OTEL002 run on source (id syntax, literal credentials). OTEL101 to O
|
|
|
75
75
|
- `src/validate-config.ts`, `src/lint/`: checks
|
|
76
76
|
- `src/topology.ts`, `src/semconv.ts`: the read surface
|
|
77
77
|
- `src/genai.ts`: the GenAI preset
|
|
78
|
-
- `src/composites/`: `NodeAgent
|
|
78
|
+
- `src/composites/`: `NodeAgent` (the per-node Kubernetes agent config), `RedMetrics` (spanmetrics and servicegraph to a prometheus exporter), `GenAiPipeline` and `OtlpCollector` (the presets as composites), `TailSamplingTier` (a tail sampling tier off Kubernetes)
|
|
79
79
|
- `src/init-templates.ts`: `chant init --lexicon otel` scaffolds (default, `k8s-agent`, `genai`)
|
|
80
80
|
- `src/import/`: `chant import` for collector YAML (parser, generator, round-trip tests and fixtures)
|
|
81
81
|
- `examples/`: getting-started, k8s-node-agent, genai-agent, tail-sampling-gateway, custom-component
|
package/dist/collector.d.ts
CHANGED
|
@@ -29,4 +29,10 @@ export declare function componentConfig(component: OTelComponent): Record<string
|
|
|
29
29
|
export declare function buildCollectorConfig(entities: Iterable<Declarable> | Map<string, Declarable>): BuiltCollector;
|
|
30
30
|
/** Collector YAML for a set of declared entities, exactly as the serializer emits it. */
|
|
31
31
|
export declare function collectorYaml(entities: Iterable<Declarable> | Map<string, Declarable>): string;
|
|
32
|
+
/**
|
|
33
|
+
* The collector config object for a set of declared entities, for a host that
|
|
34
|
+
* holds the config as an object rather than as text: the OpenTelemetry
|
|
35
|
+
* Operator's `OpenTelemetryCollector` `spec.config` (v1beta1).
|
|
36
|
+
*/
|
|
37
|
+
export declare function collectorConfig(entities: Iterable<Declarable> | Map<string, Declarable>): CollectorConfig;
|
|
32
38
|
//# sourceMappingURL=collector.d.ts.map
|
package/dist/collector.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../src/collector.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAkC,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9E,OAAO,EAAc,KAAK,eAAe,EAAuB,MAAM,SAAS,CAAC;AAChF,OAAO,EAAwD,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAI3H,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,eAAe,CAAC;IACxB;;;OAGG;IACH,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAuBD,kFAAkF;AAClF,wBAAgB,eAAe,CAAC,SAAS,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGjF;AAOD,gGAAgG;AAChG,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,cAAc,CAqF7G;AAED,yFAAyF;AACzF,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,MAAM,CAG9F"}
|
|
1
|
+
{"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../src/collector.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAkC,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9E,OAAO,EAAc,KAAK,eAAe,EAAuB,MAAM,SAAS,CAAC;AAChF,OAAO,EAAwD,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAI3H,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,eAAe,CAAC;IACxB;;;OAGG;IACH,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,qEAAqE;IACrE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB;AAuBD,kFAAkF;AAClF,wBAAgB,eAAe,CAAC,SAAS,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGjF;AAOD,gGAAgG;AAChG,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,cAAc,CAqF7G;AAED,yFAAyF;AACzF,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,MAAM,CAG9F;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,eAAe,CAEzG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/composites/catalog.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D,eAAO,MAAM,gBAAgB,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/composites/catalog.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D,eAAO,MAAM,gBAAgB,EAAE,cAAc,EA+W5C,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `GenAiPipeline`: `genAiPipeline()` as a composite.
|
|
3
|
+
*
|
|
4
|
+
* The same collector config `genAiPipeline(options)` returns as a list (an
|
|
5
|
+
* `otlp` receiver, content removal on traces and logs, a `traces/genai`
|
|
6
|
+
* branch that turns GenAI spans into metrics before any sampling, and a
|
|
7
|
+
* `metrics/genai` pipeline that exports them), with each entity under a
|
|
8
|
+
* member name, so a project exports one declaration and reads the parts by
|
|
9
|
+
* name. The options are `genAiPipeline()`'s; every one has its default.
|
|
10
|
+
*
|
|
11
|
+
* The prometheus lexicon's `GenAiRules` reads the metric names from
|
|
12
|
+
* `genAiMetrics(options)` with the same options.
|
|
13
|
+
*/
|
|
14
|
+
import { type CompositeInstance } from "@intentius/chant/composite";
|
|
15
|
+
import { type GenAiPipelineOptions, type GenAiPipelineParts } from "../genai.js";
|
|
16
|
+
export type GenAiPipelineProps = GenAiPipelineOptions;
|
|
17
|
+
/** The members: `otlp`, `traces`, `sampled` (with `sampling`), `genAiTraces`, `genAiMetrics`, `sdkMetrics` (with `clientMetrics`), `logs` and `health` (unless off). */
|
|
18
|
+
export type GenAiPipelineMembers = GenAiPipelineParts;
|
|
19
|
+
export type GenAiPipelineInstance = CompositeInstance<GenAiPipelineMembers> & GenAiPipelineMembers;
|
|
20
|
+
/**
|
|
21
|
+
* The collector config of an OTLP collector for GenAI workloads, from the
|
|
22
|
+
* GenAI preset.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```ts
|
|
26
|
+
* import { GenAiPipeline, PrometheusExporter } from "@intentius/chant-lexicon-otel";
|
|
27
|
+
*
|
|
28
|
+
* const scrape = new PrometheusExporter({ endpoint: "0.0.0.0:8889" });
|
|
29
|
+
* export const genai = GenAiPipeline({ metricExporters: [scrape], clientMetrics: "derive" });
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export declare const GenAiPipeline: import("@intentius/chant").CompositeDefinition<GenAiPipelineOptions, GenAiPipelineParts>;
|
|
33
|
+
//# sourceMappingURL=genai-pipeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"genai-pipeline.d.ts","sourceRoot":"","sources":["../../src/composites/genai-pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAa,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAsB,KAAK,oBAAoB,EAAE,KAAK,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAElG,MAAM,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AAEtD,wKAAwK;AACxK,MAAM,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEtD,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,GAAG,oBAAoB,CAAC;AAEnG;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,0FAGzB,CAAC"}
|
|
@@ -3,4 +3,12 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export { NodeAgent, nodeAgentPropsProblem } from "./node-agent.js";
|
|
5
5
|
export type { NodeAgentProps, NodeAgentMembers, NodeAgentInstance } from "./node-agent.js";
|
|
6
|
+
export { RedMetrics, redMetricsNames, redMetricsPropsProblem } from "./red-metrics.js";
|
|
7
|
+
export type { RedMetricsProps, RedMetricsMembers, RedMetricsInstance, RedMetricsNames } from "./red-metrics.js";
|
|
8
|
+
export { GenAiPipeline } from "./genai-pipeline.js";
|
|
9
|
+
export type { GenAiPipelineProps, GenAiPipelineMembers, GenAiPipelineInstance } from "./genai-pipeline.js";
|
|
10
|
+
export { OtlpCollector, otlpCollectorPropsProblem } from "./otlp-collector.js";
|
|
11
|
+
export type { OtlpCollectorProps, OtlpCollectorMembers, OtlpCollectorInstance } from "./otlp-collector.js";
|
|
12
|
+
export { TailSamplingTier, tailSamplingTierPropsProblem, tailSamplingLoadBalancer } from "./tail-sampling-tier.js";
|
|
13
|
+
export type { TailSamplingTierProps, TailSamplingTierMembers, TailSamplingTierInstance } from "./tail-sampling-tier.js";
|
|
6
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composites/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAChE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composites/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAChE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACpF,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC7G,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACxG,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC5E,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACxG,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChH,YAAY,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `OtlpCollector`: `otlpCollector()` as a composite.
|
|
3
|
+
*
|
|
4
|
+
* The small OTLP collector the docker, k8s and fly platform composites start
|
|
5
|
+
* from: an `otlp` receiver on 4317 (gRPC) and 4318 (HTTP), `memory_limiter`
|
|
6
|
+
* then `batch`, the given exporters (default: one `debug` exporter), one
|
|
7
|
+
* pipeline per signal, and a `health_check` extension on 0.0.0.0:13133.
|
|
8
|
+
* Each part is a member, so a project exports one declaration and hands
|
|
9
|
+
* the parts on by name.
|
|
10
|
+
*/
|
|
11
|
+
import { type CompositeInstance } from "@intentius/chant/composite";
|
|
12
|
+
import type { OTelComponent } from "../define.js";
|
|
13
|
+
import type { PipelineEntity } from "../pipeline.js";
|
|
14
|
+
import { type OtlpCollectorOptions } from "../platform.js";
|
|
15
|
+
export type OtlpCollectorProps = OtlpCollectorOptions;
|
|
16
|
+
export type OtlpCollectorMembers = {
|
|
17
|
+
otlp: OTelComponent<"receiver", "otlp", object>;
|
|
18
|
+
memoryLimiter: OTelComponent<"processor", "memory_limiter", object>;
|
|
19
|
+
batch: OTelComponent<"processor", "batch", object>;
|
|
20
|
+
/** The default `debug` exporter, when no `exporters` are given. */
|
|
21
|
+
debug?: OTelComponent<"exporter", string, object>;
|
|
22
|
+
health?: OTelComponent<"extension", "health_check", object>;
|
|
23
|
+
traces?: PipelineEntity;
|
|
24
|
+
metrics?: PipelineEntity;
|
|
25
|
+
logs?: PipelineEntity;
|
|
26
|
+
};
|
|
27
|
+
export type OtlpCollectorInstance = CompositeInstance<OtlpCollectorMembers> & OtlpCollectorMembers;
|
|
28
|
+
/** Why a set of `OtlpCollector` props can't build, or undefined when they can. */
|
|
29
|
+
export declare function otlpCollectorPropsProblem(props?: OtlpCollectorProps): string | undefined;
|
|
30
|
+
/**
|
|
31
|
+
* A small OTLP collector config: OTLP in, `memory_limiter` and `batch`, the
|
|
32
|
+
* given exporters out, for each signal.
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```ts
|
|
36
|
+
* import { OtlpCollector, OtlpExporter } from "@intentius/chant-lexicon-otel";
|
|
37
|
+
*
|
|
38
|
+
* const backend = new OtlpExporter({ name: "backend", endpoint: "collector.example.com:4317" });
|
|
39
|
+
* export const collector = OtlpCollector({ exporters: [backend], signals: ["traces", "logs"] });
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
export declare const OtlpCollector: import("@intentius/chant").CompositeDefinition<OtlpCollectorOptions, OtlpCollectorMembers>;
|
|
43
|
+
//# sourceMappingURL=otlp-collector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"otlp-collector.d.ts","sourceRoot":"","sources":["../../src/composites/otlp-collector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAa,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAsB,KAAK,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAE5E,MAAM,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AAGtD,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChD,aAAa,EAAE,aAAa,CAAC,WAAW,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;IACpE,KAAK,EAAE,aAAa,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACnD,mEAAmE;IACnE,KAAK,CAAC,EAAE,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAClD,MAAM,CAAC,EAAE,aAAa,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;IAC5D,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,GAAG,oBAAoB,CAAC;AAEnG,kFAAkF;AAClF,wBAAgB,yBAAyB,CAAC,KAAK,GAAE,kBAAuB,GAAG,MAAM,GAAG,SAAS,CAQ5F;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,aAAa,4FAaP,CAAC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `RedMetrics`: rate, errors and duration (RED) metrics from traces, served
|
|
3
|
+
* for Prometheus to scrape.
|
|
4
|
+
*
|
|
5
|
+
* Spans come in on an `otlp` receiver (or the receivers given) and go
|
|
6
|
+
* through `memory_limiter` and `batch` to a `spanmetrics` connector and, by
|
|
7
|
+
* default, a `servicegraph` connector. Both feed a `metrics` pipeline that
|
|
8
|
+
* ends at a `prometheus` exporter on 0.0.0.0:8889. Traces can also go on to
|
|
9
|
+
* a backend through `traceExporters`.
|
|
10
|
+
*
|
|
11
|
+
* The metric names follow from the declaration: `redMetricsNames(red)` reads
|
|
12
|
+
* them back with `spanMetricsNames()` and `serviceGraphNames()`, and the
|
|
13
|
+
* grafana lexicon's `RedDashboard` and the prometheus lexicon's `RedAlerts`
|
|
14
|
+
* take the connector and the exporter (`red.spanMetrics`, `red.exporter`),
|
|
15
|
+
* so a renamed namespace moves every query built from them.
|
|
16
|
+
*/
|
|
17
|
+
import { type CompositeInstance } from "@intentius/chant/composite";
|
|
18
|
+
import { type ServiceGraphConnectorConfig, type SpanMetricsConnectorConfig } from "../components/connectors.js";
|
|
19
|
+
import { type PrometheusExporterConfig } from "../components/exporters.js";
|
|
20
|
+
import type { OTelComponent } from "../define.js";
|
|
21
|
+
import { type PipelineEntity } from "../pipeline.js";
|
|
22
|
+
import { type ServiceGraphNames, type SpanMetricsNames } from "../metric-names.js";
|
|
23
|
+
type Exporter = OTelComponent<"exporter", string, any>;
|
|
24
|
+
type TraceSource = OTelComponent<"receiver" | "connector", string, any>;
|
|
25
|
+
type Component<K extends "receiver" | "processor" | "exporter" | "connector"> = OTelComponent<K, string, object>;
|
|
26
|
+
export interface RedMetricsProps {
|
|
27
|
+
/** Where spans come from: receivers, or a connector from another traces pipeline. Default: an `otlp` receiver on 4317 (gRPC) and 4318 (HTTP). */
|
|
28
|
+
receivers?: TraceSource[];
|
|
29
|
+
/** Where traces go besides the connectors, e.g. a tracing backend. Default: nowhere. */
|
|
30
|
+
traceExporters?: Exporter[];
|
|
31
|
+
/** The `prometheus` exporter the metrics are served on. Default: one named after `name`, on 0.0.0.0:8889. */
|
|
32
|
+
exporter?: OTelComponent<"exporter", "prometheus", PrometheusExporterConfig>;
|
|
33
|
+
/** The `spanmetrics` connector's config: namespace, dimensions, histogram unit and buckets (default: the connector's defaults). */
|
|
34
|
+
spanMetrics?: SpanMetricsConnectorConfig;
|
|
35
|
+
/** Service-to-service edge metrics from a `servicegraph` connector (default: on). */
|
|
36
|
+
serviceGraph?: boolean | ServiceGraphConnectorConfig;
|
|
37
|
+
/** `memory_limiter`'s hard limit in MiB (default: 80% of the container's memory, with a 20% spike limit). */
|
|
38
|
+
memoryLimitMib?: number;
|
|
39
|
+
/** The instance name of the connectors, the exporter and the two pipelines (default `red`). */
|
|
40
|
+
name?: string;
|
|
41
|
+
}
|
|
42
|
+
export type RedMetricsMembers = {
|
|
43
|
+
otlp?: Component<"receiver">;
|
|
44
|
+
memoryLimiter: Component<"processor">;
|
|
45
|
+
batch: Component<"processor">;
|
|
46
|
+
spanMetrics: OTelComponent<"connector", "spanmetrics", SpanMetricsConnectorConfig>;
|
|
47
|
+
serviceGraph?: OTelComponent<"connector", "servicegraph", ServiceGraphConnectorConfig>;
|
|
48
|
+
exporter: OTelComponent<"exporter", "prometheus", PrometheusExporterConfig>;
|
|
49
|
+
traces: PipelineEntity;
|
|
50
|
+
metrics: PipelineEntity;
|
|
51
|
+
};
|
|
52
|
+
export type RedMetricsInstance = CompositeInstance<RedMetricsMembers> & RedMetricsMembers;
|
|
53
|
+
/** Why a set of `RedMetrics` props can't build, or undefined when they can. */
|
|
54
|
+
export declare function redMetricsPropsProblem(props?: RedMetricsProps): string | undefined;
|
|
55
|
+
/**
|
|
56
|
+
* RED metrics from traces: `spanmetrics` and `servicegraph` connectors
|
|
57
|
+
* feeding a `prometheus` exporter.
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```ts
|
|
61
|
+
* import { RedMetrics, OtlpExporter } from "@intentius/chant-lexicon-otel";
|
|
62
|
+
*
|
|
63
|
+
* const tempo = new OtlpExporter({ name: "tempo", endpoint: "tempo:4317", tls: { insecure: true } });
|
|
64
|
+
* export const red = RedMetrics({ traceExporters: [tempo], spanMetrics: { namespace: "shop", histogram: { unit: "s" } } });
|
|
65
|
+
* // RedDashboard({ spanMetrics: red.spanMetrics, exporter: red.exporter, datasource }) in the grafana lexicon
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
export declare const RedMetrics: import("@intentius/chant").CompositeDefinition<RedMetricsProps, RedMetricsMembers>;
|
|
69
|
+
/** The Prometheus names of what a `RedMetrics` serves: the span metrics, and the service graph's when it is on. */
|
|
70
|
+
export interface RedMetricsNames {
|
|
71
|
+
spans: SpanMetricsNames;
|
|
72
|
+
serviceGraph?: ServiceGraphNames;
|
|
73
|
+
}
|
|
74
|
+
/** The metric names a `RedMetrics(...)` result serves, read from its connectors and exporter. */
|
|
75
|
+
export declare function redMetricsNames(red: RedMetricsInstance | RedMetricsMembers): RedMetricsNames;
|
|
76
|
+
export {};
|
|
77
|
+
//# sourceMappingURL=red-metrics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"red-metrics.d.ts","sourceRoot":"","sources":["../../src/composites/red-metrics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAa,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAG/E,OAAO,EAGL,KAAK,2BAA2B,EAChC,KAAK,0BAA0B,EAChC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAsB,KAAK,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAC5F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAuC,KAAK,iBAAiB,EAAE,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGrH,KAAK,QAAQ,GAAG,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;AAEvD,KAAK,WAAW,GAAG,aAAa,CAAC,UAAU,GAAG,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;AACxE,KAAK,SAAS,CAAC,CAAC,SAAS,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,WAAW,IAAI,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjH,MAAM,WAAW,eAAe;IAC9B,iJAAiJ;IACjJ,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;IAC1B,wFAAwF;IACxF,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC;IAC5B,6GAA6G;IAC7G,QAAQ,CAAC,EAAE,aAAa,CAAC,UAAU,EAAE,YAAY,EAAE,wBAAwB,CAAC,CAAC;IAC7E,mIAAmI;IACnI,WAAW,CAAC,EAAE,0BAA0B,CAAC;IACzC,qFAAqF;IACrF,YAAY,CAAC,EAAE,OAAO,GAAG,2BAA2B,CAAC;IACrD,6GAA6G;IAC7G,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+FAA+F;IAC/F,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAGD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;IAC7B,aAAa,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IACtC,KAAK,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IAC9B,WAAW,EAAE,aAAa,CAAC,WAAW,EAAE,aAAa,EAAE,0BAA0B,CAAC,CAAC;IACnF,YAAY,CAAC,EAAE,aAAa,CAAC,WAAW,EAAE,cAAc,EAAE,2BAA2B,CAAC,CAAC;IACvF,QAAQ,EAAE,aAAa,CAAC,UAAU,EAAE,YAAY,EAAE,wBAAwB,CAAC,CAAC;IAC5E,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,cAAc,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,GAAG,iBAAiB,CAAC;AAI1F,+EAA+E;AAC/E,wBAAgB,sBAAsB,CAAC,KAAK,GAAE,eAAoB,GAAG,MAAM,GAAG,SAAS,CAUtF;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,UAAU,oFAoCP,CAAC;AAEjB,mHAAmH;AACnH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,gBAAgB,CAAC;IACxB,YAAY,CAAC,EAAE,iBAAiB,CAAC;CAClC;AAED,iGAAiG;AACjG,wBAAgB,eAAe,CAAC,GAAG,EAAE,kBAAkB,GAAG,iBAAiB,GAAG,eAAe,CAM5F"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `TailSamplingTier`: the collector config of a tail sampling tier on any
|
|
3
|
+
* host (VMs, Docker, Fly, ECS), for where the k8s lexicon's
|
|
4
|
+
* `OtelCollectorGateway` does not run.
|
|
5
|
+
*
|
|
6
|
+
* Tail sampling needs every span of a trace in one collector. The agents in
|
|
7
|
+
* front send to this tier through a `loadbalancing` exporter that routes by
|
|
8
|
+
* trace id (`tailSamplingLoadBalancer()` declares it), and each replica of
|
|
9
|
+
* the tier holds a trace for `decisionWait`, then keeps it when a policy
|
|
10
|
+
* says so:
|
|
11
|
+
*
|
|
12
|
+
* - `errors`: any span ended in error (default: on);
|
|
13
|
+
* - `slowerThanMs`: the trace took at least this long (default 1000 ms);
|
|
14
|
+
* - `percentage`: a baseline share of everything else (default 10%);
|
|
15
|
+
* - `policies`: more `tail_sampling` policies of your own, after those.
|
|
16
|
+
*
|
|
17
|
+
* The pipeline is `otlp` in, `memory_limiter`, `tail_sampling`, `batch`, the
|
|
18
|
+
* given exporters out. Compute span metrics before this tier (the agents, or
|
|
19
|
+
* `RedMetrics`), or they count only the traces kept.
|
|
20
|
+
*/
|
|
21
|
+
import { type CompositeInstance } from "@intentius/chant/composite";
|
|
22
|
+
import { type Duration } from "../components/common.js";
|
|
23
|
+
import { type LoadBalancingExporterConfig, type LoadBalancingResolver, type TailSamplingPolicy, type TailSamplingProcessorConfig } from "../components/sampling.js";
|
|
24
|
+
import type { OTelComponent } from "../define.js";
|
|
25
|
+
import { type PipelineEntity } from "../pipeline.js";
|
|
26
|
+
type Exporter = OTelComponent<"exporter", string, any>;
|
|
27
|
+
type TraceSource = OTelComponent<"receiver" | "connector", string, any>;
|
|
28
|
+
type Component<K extends "receiver" | "processor" | "exporter" | "extension"> = OTelComponent<K, string, object>;
|
|
29
|
+
export interface TailSamplingTierProps {
|
|
30
|
+
/** Where the kept traces go. Default: one `debug` exporter at `basic` verbosity. */
|
|
31
|
+
exporters?: Exporter[];
|
|
32
|
+
/** Where spans come from. Default: an `otlp` receiver on 4317 (gRPC) and 4318 (HTTP). */
|
|
33
|
+
receivers?: TraceSource[];
|
|
34
|
+
/** How long after a trace's first span the decision is made (default `10s`). */
|
|
35
|
+
decisionWait?: Duration;
|
|
36
|
+
/** Keep every trace with a span ended in error (default: on). */
|
|
37
|
+
errors?: boolean;
|
|
38
|
+
/** Keep every trace that took at least this many milliseconds (default 1000; `false` for none). */
|
|
39
|
+
slowerThanMs?: number | false;
|
|
40
|
+
/** Keep this percentage of all other traces, by trace id hash (default 10; `false` for none). */
|
|
41
|
+
percentage?: number | false;
|
|
42
|
+
/** More policies, evaluated after the ones above. */
|
|
43
|
+
policies?: TailSamplingPolicy[];
|
|
44
|
+
/** How many traces to hold in memory at once (default: the collector's 50000). */
|
|
45
|
+
numTraces?: number;
|
|
46
|
+
/** `memory_limiter`'s hard limit in MiB (default: 80% of the container's memory, with a 20% spike limit). */
|
|
47
|
+
memoryLimitMib?: number;
|
|
48
|
+
/** Serve `health_check` on 0.0.0.0:13133 (default: on). */
|
|
49
|
+
healthCheck?: boolean;
|
|
50
|
+
}
|
|
51
|
+
export type TailSamplingTierMembers = {
|
|
52
|
+
otlp?: Component<"receiver">;
|
|
53
|
+
memoryLimiter: Component<"processor">;
|
|
54
|
+
tailSampling: OTelComponent<"processor", "tail_sampling", TailSamplingProcessorConfig>;
|
|
55
|
+
batch: Component<"processor">;
|
|
56
|
+
/** The default `debug` exporter, when no `exporters` are given. */
|
|
57
|
+
debug?: Component<"exporter">;
|
|
58
|
+
health?: Component<"extension">;
|
|
59
|
+
traces: PipelineEntity;
|
|
60
|
+
};
|
|
61
|
+
export type TailSamplingTierInstance = CompositeInstance<TailSamplingTierMembers> & TailSamplingTierMembers;
|
|
62
|
+
/** Why a set of `TailSamplingTier` props can't build, or undefined when they can. */
|
|
63
|
+
export declare function tailSamplingTierPropsProblem(props?: TailSamplingTierProps): string | undefined;
|
|
64
|
+
/**
|
|
65
|
+
* The collector config of a tail sampling tier: whole traces in, the ones
|
|
66
|
+
* a policy keeps out.
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```ts
|
|
70
|
+
* import { TailSamplingTier, OtlpExporter } from "@intentius/chant-lexicon-otel";
|
|
71
|
+
*
|
|
72
|
+
* const tempo = new OtlpExporter({ name: "tempo", endpoint: "tempo:4317", tls: { insecure: true } });
|
|
73
|
+
* export const sampler = TailSamplingTier({ exporters: [tempo], slowerThanMs: 500, percentage: 5 });
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export declare const TailSamplingTier: import("@intentius/chant").CompositeDefinition<TailSamplingTierProps, TailSamplingTierMembers>;
|
|
77
|
+
/**
|
|
78
|
+
* The exporter the agents in front of a `TailSamplingTier` send traces with:
|
|
79
|
+
* a `loadbalancing` exporter that routes every span of a trace to the same
|
|
80
|
+
* replica of the tier, by trace id.
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```ts
|
|
84
|
+
* // TLS by default; pass `{ otlp: { tls: { insecure: true } } }` as `protocol` on a private network.
|
|
85
|
+
* const toSampler = tailSamplingLoadBalancer({ dns: { hostname: "sampler.internal" } }, "sampler");
|
|
86
|
+
* ```
|
|
87
|
+
*/
|
|
88
|
+
export declare function tailSamplingLoadBalancer(resolver: LoadBalancingResolver, name?: string, protocol?: LoadBalancingExporterConfig["protocol"]): OTelComponent<"exporter", "loadbalancing", LoadBalancingExporterConfig>;
|
|
89
|
+
export {};
|
|
90
|
+
//# sourceMappingURL=tail-sampling-tier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tail-sampling-tier.d.ts","sourceRoot":"","sources":["../../src/composites/tail-sampling-tier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAa,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAgB,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAKnE,OAAO,EAGL,KAAK,2BAA2B,EAChC,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EACjC,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAG5D,KAAK,QAAQ,GAAG,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;AAEvD,KAAK,WAAW,GAAG,aAAa,CAAC,UAAU,GAAG,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;AACxE,KAAK,SAAS,CAAC,CAAC,SAAS,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,WAAW,IAAI,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjH,MAAM,WAAW,qBAAqB;IACpC,oFAAoF;IACpF,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,yFAAyF;IACzF,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;IAC1B,gFAAgF;IAChF,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,iEAAiE;IACjE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mGAAmG;IACnG,YAAY,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC9B,iGAAiG;IACjG,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC5B,qDAAqD;IACrD,QAAQ,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAChC,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6GAA6G;IAC7G,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAGD,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;IAC7B,aAAa,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IACtC,YAAY,EAAE,aAAa,CAAC,WAAW,EAAE,eAAe,EAAE,2BAA2B,CAAC,CAAC;IACvF,KAAK,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IAC9B,mEAAmE;IACnE,KAAK,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;IAChC,MAAM,EAAE,cAAc,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,CAAC,uBAAuB,CAAC,GAAG,uBAAuB,CAAC;AAE5G,qFAAqF;AACrF,wBAAgB,4BAA4B,CAAC,KAAK,GAAE,qBAA0B,GAAG,MAAM,GAAG,SAAS,CAiBlG;AAYD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gBAAgB,gGAkCP,CAAC;AAEvB;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,qBAAqB,EAC/B,IAAI,CAAC,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,2BAA2B,CAAC,UAAU,CAAC,GACjD,aAAa,CAAC,UAAU,EAAE,eAAe,EAAE,2BAA2B,CAAC,CAOzE"}
|
package/dist/configmap.d.ts
CHANGED
|
@@ -32,4 +32,20 @@ export interface ConfigMapCollectorConfig {
|
|
|
32
32
|
export declare function configMapCollectorConfigs(doc: unknown): ConfigMapCollectorConfig[];
|
|
33
33
|
/** How a ConfigMap config is named in a message: `ConfigMap observability/otel-agent-config, key config.yaml`. */
|
|
34
34
|
export declare function describeConfigMapConfig(c: Pick<ConfigMapCollectorConfig, "namespace" | "name" | "key">): string;
|
|
35
|
+
/** One collector config found in an OpenTelemetry Operator `OpenTelemetryCollector`. */
|
|
36
|
+
export interface OperatorCollectorConfig {
|
|
37
|
+
/** `metadata.namespace`, or `default` when unset. */
|
|
38
|
+
namespace: string;
|
|
39
|
+
name: string;
|
|
40
|
+
config: CollectorConfig;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* The collector config in one parsed manifest when it is an OpenTelemetry
|
|
44
|
+
* Operator `OpenTelemetryCollector`: `spec.config`, an object in v1beta1 and
|
|
45
|
+
* YAML text in v1alpha1. Undefined for any other document, and for a config
|
|
46
|
+
* without a `service.pipelines` map.
|
|
47
|
+
*/
|
|
48
|
+
export declare function operatorCollectorConfig(doc: unknown): OperatorCollectorConfig | undefined;
|
|
49
|
+
/** How an operator CR's config is named in a message: `OpenTelemetryCollector observability/gateway, spec.config`. */
|
|
50
|
+
export declare function describeOperatorCollectorConfig(c: Pick<OperatorCollectorConfig, "namespace" | "name">): string;
|
|
35
51
|
//# sourceMappingURL=configmap.d.ts.map
|
package/dist/configmap.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configmap.d.ts","sourceRoot":"","sources":["../src/configmap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAM/C;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,eAAe,GAAG,SAAS,CAU/E;AAED,iDAAiD;AACjD,MAAM,WAAW,wBAAwB;IACvC,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,eAAe,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,OAAO,GAAG,wBAAwB,EAAE,CAWlF;AAED,kHAAkH;AAClH,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,IAAI,CAAC,wBAAwB,EAAE,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC,GAAG,MAAM,CAE/G"}
|
|
1
|
+
{"version":3,"file":"configmap.d.ts","sourceRoot":"","sources":["../src/configmap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAM/C;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,eAAe,GAAG,SAAS,CAU/E;AAED,iDAAiD;AACjD,MAAM,WAAW,wBAAwB;IACvC,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,eAAe,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,OAAO,GAAG,wBAAwB,EAAE,CAWlF;AAED,kHAAkH;AAClH,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,IAAI,CAAC,wBAAwB,EAAE,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC,GAAG,MAAM,CAE/G;AAED,wFAAwF;AACxF,MAAM,WAAW,uBAAuB;IACtC,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,eAAe,CAAC;CACzB;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,uBAAuB,GAAG,SAAS,CAczF;AAED,sHAAsH;AACtH,wBAAgB,+BAA+B,CAAC,CAAC,EAAE,IAAI,CAAC,uBAAuB,EAAE,WAAW,GAAG,MAAM,CAAC,GAAG,MAAM,CAE9G"}
|
package/dist/genai.d.ts
CHANGED
|
@@ -38,6 +38,7 @@ import { type OTelComponent, type SchemaPin } from "./define.js";
|
|
|
38
38
|
import { type FilterProcessorConfig, type RedactionProcessorConfig, type TransformProcessorConfig } from "./components/filtering.js";
|
|
39
39
|
import { type ForwardConnectorConfig, type SignalToMetricsConnectorConfig, type SpanMetricsConnectorConfig, type SpanMetricsDimension, type SumConnectorConfig } from "./components/connectors.js";
|
|
40
40
|
import type { Duration } from "./components/common.js";
|
|
41
|
+
import { type PipelineEntity } from "./pipeline.js";
|
|
41
42
|
import { type CollectorMetric } from "./metric-names.js";
|
|
42
43
|
/** GenAI attributes the preset reads. */
|
|
43
44
|
export declare const GENAI_ATTRIBUTES: Readonly<{
|
|
@@ -295,6 +296,22 @@ export interface GenAiPipelineOptions extends GenAiComponentsOptions {
|
|
|
295
296
|
*/
|
|
296
297
|
deltaToCumulative?: boolean | "auto";
|
|
297
298
|
}
|
|
299
|
+
/**
|
|
300
|
+
* The entities `genAiPipeline()` returns, by name: what the `GenAiPipeline`
|
|
301
|
+
* composite's members are. A key is absent when its part is off: `sampled`
|
|
302
|
+
* without `sampling`, `sdkMetrics` without `clientMetrics`, `logs` with
|
|
303
|
+
* `logs: false`, `health` with `healthCheck: false`.
|
|
304
|
+
*/
|
|
305
|
+
export type GenAiPipelineParts = {
|
|
306
|
+
otlp: Declarable;
|
|
307
|
+
traces: PipelineEntity;
|
|
308
|
+
sampled?: PipelineEntity;
|
|
309
|
+
genAiTraces: PipelineEntity;
|
|
310
|
+
genAiMetrics: PipelineEntity;
|
|
311
|
+
sdkMetrics?: PipelineEntity;
|
|
312
|
+
logs?: PipelineEntity;
|
|
313
|
+
health?: Declarable;
|
|
314
|
+
};
|
|
298
315
|
/**
|
|
299
316
|
* The entities of an OTLP collector for GenAI workloads: an `otlp` receiver
|
|
300
317
|
* on 4317 and 4318; `memory_limiter`, content removal and `batch` on traces
|
|
@@ -304,5 +321,7 @@ export interface GenAiPipelineOptions extends GenAiComponentsOptions {
|
|
|
304
321
|
* pieces into pipelines of your own.
|
|
305
322
|
*/
|
|
306
323
|
export declare function genAiPipeline(options?: GenAiPipelineOptions): Declarable[];
|
|
324
|
+
/** `genAiPipeline()`'s entities by name, in the order it returns them. */
|
|
325
|
+
export declare function genAiPipelineParts(options?: GenAiPipelineOptions): GenAiPipelineParts;
|
|
307
326
|
export {};
|
|
308
327
|
//# sourceMappingURL=genai.d.ts.map
|
package/dist/genai.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"genai.d.ts","sourceRoot":"","sources":["../src/genai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAqB,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC;AAKjF,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAE9B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAKL,KAAK,sBAAsB,EAE3B,KAAK,8BAA8B,EAEnC,KAAK,0BAA0B,EAC/B,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"genai.d.ts","sourceRoot":"","sources":["../src/genai.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,14 @@
|
|
|
6
6
|
* it, into a directory of its own, and the host's value becomes
|
|
7
7
|
* `collectorYaml([...])` over every component, pipeline and service the
|
|
8
8
|
* import declares, which renders the same config text at build time.
|
|
9
|
+
*
|
|
10
|
+
* A host that holds the config as an object, the OpenTelemetry Operator's
|
|
11
|
+
* `OpenTelemetryCollector` `spec.config`, offers it as `{ config, header }`
|
|
12
|
+
* with `select: "config"`. The config is printed back to the text the
|
|
13
|
+
* standalone import reads, with the `# chant:` header lines the host kept in
|
|
14
|
+
* an annotation put back on top so custom-component pins and semconv use
|
|
15
|
+
* survive. The host's value becomes `collectorConfig([...])`, an object, so
|
|
16
|
+
* the field keeps the type its CRD gives it.
|
|
9
17
|
*/
|
|
10
18
|
import type { EmbeddedContentImporter } from "@intentius/chant/import/embedded";
|
|
11
19
|
export declare const collectorConfigImporter: EmbeddedContentImporter;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedded.d.ts","sourceRoot":"","sources":["../../src/import/embedded.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"embedded.d.ts","sourceRoot":"","sources":["../../src/import/embedded.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAmB,uBAAuB,EAAkB,MAAM,kCAAkC,CAAC;AAwBjH,eAAO,MAAM,uBAAuB,EAAE,uBAsBrC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,16 +4,19 @@ export * from "./components/index.js";
|
|
|
4
4
|
export { Pipeline, Service, PIPELINE_TYPE, SERVICE_TYPE, isPipelineEntity, isServiceEntity, type ComponentRef, type PipelineProps, type PipelineEntity, type ServiceProps, type ServiceEntity, type ServiceTelemetry, } from "./pipeline.js";
|
|
5
5
|
export { defineComponent, definitionFor, definitionOf, registeredDefinitions, componentEntityType, isOTelComponent, COLLECTOR_PIN, SEMCONV_PIN, GENAI_SEMCONV_PIN, type SchemaPin, type SafeParseSchema, type ConfigValidator, type ComponentDefinition, type CustomComponentOptions, type ComponentProps, type ComponentClass, type OTelComponent, } from "./define.js";
|
|
6
6
|
export * from "./model.js";
|
|
7
|
-
export { buildCollectorConfig, collectorYaml, componentConfig, type BuiltCollector } from "./collector.js";
|
|
7
|
+
export { buildCollectorConfig, collectorConfig, collectorYaml, componentConfig, type BuiltCollector } from "./collector.js";
|
|
8
8
|
export { emitCollectorYaml, type EmitOptions } from "./yaml.js";
|
|
9
|
-
export { configMapCollectorConfigs, describeConfigMapConfig, parseCollectorConfig, type ConfigMapCollectorConfig } from "./configmap.js";
|
|
9
|
+
export { configMapCollectorConfigs, describeConfigMapConfig, describeOperatorCollectorConfig, operatorCollectorConfig, parseCollectorConfig, type ConfigMapCollectorConfig, type OperatorCollectorConfig, } from "./configmap.js";
|
|
10
10
|
export { validateCollectorConfig, validateCollectorEntities, type CollectorIssue, type CollectorIssueCode, } from "./validate-config.js";
|
|
11
11
|
export { K8S_ATTRIBUTES_METADATA, RESOURCE_DETECTORS } from "./config-hygiene.js";
|
|
12
12
|
export { collectorTopology, collectorTopologyOf, type CollectorTopology, type TopologyPipeline, type TopologyComponent, type TopologyExporter, type TopologyEdge, type SemconvUsage, } from "./topology.js";
|
|
13
13
|
export { semconvUsage, SEMCONV_VOCABULARIES, type SemconvVocabulary } from "./semconv.js";
|
|
14
14
|
export { attributionIssues, isProtectedResourceAttribute, PROTECTED_RESOURCE_ATTRIBUTES } from "./attribution.js";
|
|
15
15
|
export { NodeAgent, nodeAgentPropsProblem, type NodeAgentProps, type NodeAgentMembers, type NodeAgentInstance } from "./composites/index.js";
|
|
16
|
-
export {
|
|
17
|
-
export {
|
|
18
|
-
export {
|
|
16
|
+
export { RedMetrics, redMetricsNames, redMetricsPropsProblem, GenAiPipeline, OtlpCollector, otlpCollectorPropsProblem, TailSamplingTier, tailSamplingTierPropsProblem, tailSamplingLoadBalancer, type RedMetricsProps, type RedMetricsMembers, type RedMetricsInstance, type RedMetricsNames, type GenAiPipelineProps, type GenAiPipelineMembers, type GenAiPipelineInstance, type OtlpCollectorProps, type OtlpCollectorMembers, type OtlpCollectorInstance, type TailSamplingTierProps, type TailSamplingTierMembers, type TailSamplingTierInstance, } from "./composites/index.js";
|
|
17
|
+
export { otlpCollector, otlpCollectorParts, collectorEndpoints, COLLECTOR_IMAGE, COLLECTOR_CONFIG_PATH, type OtlpCollectorOptions, type OtlpCollectorParts, type CollectorPort, type CollectorEndpoints, } from "./platform.js";
|
|
18
|
+
export { genAiPipeline, genAiPipelineParts, genAiComponents, genAiMetrics, GENAI_ATTRIBUTES, GENAI_CONTENT_ATTRIBUTES, GENAI_CONTENT_EVENTS, GENAI_INDEXED_CONTENT_PATTERN, GENAI_HIGH_CARDINALITY_ATTRIBUTES, genAiCardinalityRisk, GENAI_SPAN_METRIC_DIMENSIONS, GENAI_TOKEN_DIMENSIONS, GENAI_DURATION_BUCKETS, GENAI_UNKNOWN_MODEL, GENAI_PROVIDER_DIMENSIONS, GENAI_CLIENT_METRIC_NAMES, GENAI_CLIENT_METRIC_ATTRIBUTES, GENAI_CLIENT_DURATION_BUCKETS, GENAI_CLIENT_TOKEN_BUCKETS, GENAI_TOKEN_TYPES, DELTA_READY_EXPORTERS, genAiNeedsDeltaToCumulative, type GenAiPipelineOptions, type GenAiPipelineParts, type GenAiComponentsOptions, type GenAiComponents, type GenAiMetricsOptions, type GenAiMetrics, type GenAiMetric, type GenAiClientMetrics, type GenAiClientMetricsSource, } from "./genai.js";
|
|
19
|
+
export { spanMetricsNames, prometheusMetricName, prometheusLabel, SPANMETRICS_DEFAULT_DIMENSIONS, SPANMETRICS_DEFAULT_NAMESPACE, SPAN_STATUS_ERROR, SERVICEGRAPH_NAMESPACE, serviceGraphNames, type ServiceGraphNames, type ServiceGraphNamingConfig, type CollectorMetric, type SpanMetricsNames, type SpanMetricsNamingConfig, type PrometheusNaming, promSelector, promSumRate, promErrorRatio, promQuantile, promNumber, spanKindMatchers, spanMetricsRedQueries, SPAN_METRICS_KINDS, RED_DEFAULT_SPAN_KINDS, type PromMatcher, type SpanMetricsKind, type RedQueryOptions, type RedQueries, } from "./metric-names.js";
|
|
20
|
+
export { otelcolValidate, otelcolComponents, collectorHealthObserve, collectorAudit } from "./op/builders.js";
|
|
21
|
+
export { CollectorAuditOp, type CollectorAuditOpConfig, type CollectorAuditOpResources } from "./op/audit-op.js";
|
|
19
22
|
//# 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":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C,cAAc,cAAc,CAAC;AAG7B,OAAO,EACL,QAAQ,EACR,OAAO,EACP,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,gBAAgB,GACtB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,eAAe,EACf,aAAa,EACb,YAAY,EACZ,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,aAAa,GACnB,MAAM,UAAU,CAAC;AAGlB,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C,cAAc,cAAc,CAAC;AAG7B,OAAO,EACL,QAAQ,EACR,OAAO,EACP,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,gBAAgB,GACtB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,eAAe,EACf,aAAa,EACb,YAAY,EACZ,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,aAAa,GACnB,MAAM,UAAU,CAAC;AAGlB,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AACzH,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC7D,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,+BAA+B,EAC/B,uBAAuB,EACvB,oBAAoB,EACpB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,KAAK,cAAc,EACnB,KAAK,kBAAkB,GACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,YAAY,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,KAAK,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAG/G,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,KAAK,cAAc,EAAE,KAAK,gBAAgB,EAAE,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACpI,OAAO,EACL,UAAU,EACV,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,aAAa,EACb,yBAAyB,EACzB,gBAAgB,EAChB,4BAA4B,EAC5B,wBAAwB,EACxB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,GAC9B,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,kBAAkB,GACxB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,wBAAwB,EACxB,oBAAoB,EACpB,6BAA6B,EAC7B,iCAAiC,EACjC,oBAAoB,EACpB,4BAA4B,EAC5B,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,yBAAyB,EACzB,yBAAyB,EACzB,8BAA8B,EAC9B,6BAA6B,EAC7B,0BAA0B,EAC1B,iBAAiB,EACjB,qBAAqB,EACrB,2BAA2B,EAC3B,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,GAC9B,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,8BAA8B,EAC9B,6BAA6B,EAC7B,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,gBAAgB,EACrB,YAAY,EACZ,WAAW,EACX,cAAc,EACd,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,UAAU,GAChB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC3G,OAAO,EAAE,gBAAgB,EAAE,KAAK,sBAAsB,EAAE,KAAK,yBAAyB,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/integrity.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"algorithm": "sha256",
|
|
3
3
|
"artifacts": {
|
|
4
|
-
"manifest.json": "
|
|
4
|
+
"manifest.json": "0c726a26db15b0dbeb44b7849a3d5db54df5950af5f50ea6f4ad087a7f5ece20",
|
|
5
5
|
"meta.json": "884042882639c4dd91a8a97b9826869de90553ec4420fd1e6a0b08bb16fc5181",
|
|
6
6
|
"types/index.d.ts": "a1070fd1cb3e8d8a9002fc5a75a80b3bdda02965be351e8aed2dbc2f63d36e3c",
|
|
7
7
|
"rules/component-id-syntax.ts": "95f507614d2626159140d906bce9d086e8ecba18ede22f5ddfbda13ac1c08169",
|
|
8
8
|
"rules/literal-credential.ts": "f9849be30287fdb05e4dd6c8930ac948259471877a0499fad5dc6c048e17d702",
|
|
9
9
|
"rules/otel-ast.ts": "cf286102f778bd010d130ad8de6adc279de517fffffcd49d7cfb3c419b4bec66",
|
|
10
|
-
"rules/otel-helpers.ts": "
|
|
10
|
+
"rules/otel-helpers.ts": "c31668c8290dbda0333069f1711d2864ba218d390e2f96f73b08d977efa22865",
|
|
11
11
|
"rules/otel101.ts": "9a9d5f79403fb07e78752f904741ab4cec8c0f00975b44fe0b6eace63fda4c13",
|
|
12
12
|
"rules/otel102.ts": "4b3612bc28097e46b33d6f7b187903fe1ecba4e5bda88189e9b1a5aaf37062a8",
|
|
13
13
|
"rules/otel103.ts": "8e404d7c7104a678de6351a4a4caf0aab1e6ae63c810cce889975bbeebc1a632",
|
|
@@ -37,5 +37,5 @@
|
|
|
37
37
|
"skills/chant-otel-custom-components.md": "82e53bb482281f79b428e66fb80a1c194ead74a1a34a88bbebb11c6ad5493258",
|
|
38
38
|
"skills/chant-otel-platforms.md": "c90836952dc5c88d668b890152a5063bdb656bce73fc7fa3233a3ea58ad85686"
|
|
39
39
|
},
|
|
40
|
-
"composite": "
|
|
40
|
+
"composite": "6657e34e2bb2439e5437a76c731d9462546e885ff3cb38cf7b28579b790d5042"
|
|
41
41
|
}
|
|
@@ -16,12 +16,18 @@ export interface FoundCollectorConfig {
|
|
|
16
16
|
name: string;
|
|
17
17
|
key: string;
|
|
18
18
|
};
|
|
19
|
+
/** Set when the config is the `spec.config` of an OpenTelemetry Operator `OpenTelemetryCollector` (chant #3367). */
|
|
20
|
+
operator?: {
|
|
21
|
+
namespace: string;
|
|
22
|
+
name: string;
|
|
23
|
+
};
|
|
19
24
|
}
|
|
20
25
|
/**
|
|
21
26
|
* Every collector config in the output: the otel lexicon's own, any YAML
|
|
22
27
|
* document shaped like one, and any ConfigMap data value that parses as one
|
|
23
28
|
* (how `OtelCollector`, `OtelCollectorGateway` and `GkeOtelCollector` carry
|
|
24
|
-
* theirs)
|
|
29
|
+
* theirs), and the `spec.config` of an OpenTelemetry Operator
|
|
30
|
+
* `OpenTelemetryCollector` (chant #3367). Parsed with js-yaml rather than `ctx.docs`, because collector
|
|
25
31
|
* configs are written with flow lists (`[otlp, batch]`) that core's small
|
|
26
32
|
* YAML reader keeps as strings.
|
|
27
33
|
*
|
|
@@ -33,10 +39,11 @@ export declare function collectorConfigs(ctx: PostSynthContext): FoundCollectorC
|
|
|
33
39
|
/**
|
|
34
40
|
* Every config-level diagnostic (OTEL101-OTEL106, OTEL112-OTEL127 and any later
|
|
35
41
|
* config check) over the collector configs in the output. `configMapsOnly`
|
|
36
|
-
* keeps the configs held in ConfigMaps
|
|
42
|
+
* keeps the configs held in ConfigMaps. `hostedOnly` keeps those and the `spec.config` of an operator `OpenTelemetryCollector`, which is what WK8604 reads.
|
|
37
43
|
*/
|
|
38
44
|
export declare function collectorConfigDiagnostics(ctx: PostSynthContext, opts?: {
|
|
39
45
|
configMapsOnly?: boolean;
|
|
46
|
+
hostedOnly?: boolean;
|
|
40
47
|
}): PostSynthDiagnostic[];
|
|
41
48
|
/** Diagnostics for one config-level code (OTEL101-OTEL106, OTEL112-OTEL127) across every collector config in the output. */
|
|
42
49
|
export declare function configDiagnostics(ctx: PostSynthContext, code: CollectorIssueCode): PostSynthDiagnostic[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"otel-helpers.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/otel-helpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAI9F,OAAO,EAA4B,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAE7E,OAAO,EAAsD,KAAK,kBAAkB,EAAuB,MAAM,uBAAuB,CAAC;AAGzI,8DAA8D;AAC9D,MAAM,WAAW,oBAAoB;IACnC,oEAAoE;IACpE,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,eAAe,CAAC;IACxB,8EAA8E;IAC9E,SAAS,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"otel-helpers.d.ts","sourceRoot":"","sources":["../../../src/lint/post-synth/otel-helpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAI9F,OAAO,EAA4B,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAE7E,OAAO,EAAsD,KAAK,kBAAkB,EAAuB,MAAM,uBAAuB,CAAC;AAGzI,8DAA8D;AAC9D,MAAM,WAAW,oBAAoB;IACnC,oEAAoE;IACpE,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,eAAe,CAAC;IACxB,8EAA8E;IAC9E,SAAS,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,oHAAoH;IACpH,QAAQ,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,gBAAgB,GAAG,oBAAoB,EAAE,CA8B9E;AA2BD;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,gBAAgB,EACrB,IAAI,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GAC5D,mBAAmB,EAAE,CAKvB;AAED,4HAA4H;AAC5H,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,GAAG,mBAAmB,EAAE,CAMxG;AAED,8FAA8F;AAC9F,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,GAAG,mBAAmB,EAAE,CAKxG"}
|