@intentius/chant-lexicon-otel 0.105.1 → 0.106.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/common.d.ts +22 -0
- package/dist/components/common.d.ts.map +1 -1
- package/dist/components/exporters.d.ts.map +1 -1
- package/dist/integrity.json +3 -3
- package/dist/manifest.json +1 -1
- package/dist/skills/chant-otel.md +1 -1
- package/package.json +2 -2
- package/src/components/common.ts +44 -0
- package/src/components/exporters.ts +7 -4
- package/src/define.test.ts +33 -0
- package/src/skills/chant-otel.md +1 -1
|
@@ -123,15 +123,37 @@ export interface RetrySettings {
|
|
|
123
123
|
max_interval?: Duration;
|
|
124
124
|
max_elapsed_time?: Duration;
|
|
125
125
|
}
|
|
126
|
+
/**
|
|
127
|
+
* `sending_queue.batch` (v0.130.0, `exporterhelper/internal/queuebatch`):
|
|
128
|
+
* the exporter merges queued requests into larger ones before sending. An
|
|
129
|
+
* alternative to the `batch` processor that works per exporter. Unset, the
|
|
130
|
+
* exporter does not batch.
|
|
131
|
+
*/
|
|
132
|
+
export interface BatchSettings {
|
|
133
|
+
/** How long a partial batch waits before it is sent. Default 200ms. */
|
|
134
|
+
flush_timeout?: Duration;
|
|
135
|
+
/** A batch is sent once it reaches this size, in `sizer` units. Default 8192. */
|
|
136
|
+
min_size?: number;
|
|
137
|
+
/** A larger batch is split to this size. 0 means no limit. */
|
|
138
|
+
max_size?: number;
|
|
139
|
+
sizer?: "requests" | "items" | "bytes";
|
|
140
|
+
}
|
|
126
141
|
export interface QueueSettings {
|
|
127
142
|
enabled?: boolean;
|
|
128
143
|
num_consumers?: number;
|
|
129
144
|
queue_size?: number;
|
|
130
145
|
/** The id of a storage extension, for a persistent queue. */
|
|
131
146
|
storage?: string;
|
|
147
|
+
/** Block the sender when the queue is full instead of dropping data. The collector's field is `block_on_overflow`. */
|
|
148
|
+
block_on_overflow?: boolean;
|
|
149
|
+
/** @deprecated The collector reads `block_on_overflow`; `queueIssues` reports this field. */
|
|
132
150
|
blocking?: boolean;
|
|
133
151
|
sizer?: "requests" | "items" | "bytes";
|
|
152
|
+
/** Batching in the queue, in place of a `batch` processor. */
|
|
153
|
+
batch?: BatchSettings;
|
|
134
154
|
}
|
|
155
|
+
/** Problems in the `sending_queue` of an exporter's `exporterhelper` settings. */
|
|
156
|
+
export declare function queueIssues(c: ExporterHelperSettings): string[];
|
|
135
157
|
/** `exporterhelper` settings every queued exporter accepts. */
|
|
136
158
|
export interface ExporterHelperSettings {
|
|
137
159
|
timeout?: Duration;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/components/common.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/components/common.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exporters.d.ts","sourceRoot":"","sources":["../../src/components/exporters.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"exporters.d.ts","sourceRoot":"","sources":["../../src/components/exporters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAI5H,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,GAAG,sBAAsB,CAAC;AAE7E,8DAA8D;AAC9D,eAAO,MAAM,YAAY,qEAOvB,CAAC;AAIH,MAAM,MAAM,sBAAsB,GAAG,kBAAkB,GACrD,sBAAsB,GAAG;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC7B,CAAC;AAEJ,oHAAoH;AACpH,eAAO,MAAM,gBAAgB,6EAa3B,CAAC;AAIH,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC;IAC5C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,kEAAkE;AAClE,eAAO,MAAM,aAAa,uEAKxB,CAAC;AAIH,MAAM,WAAW,wBAAwB;IACvC,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,QAAQ,CAAC;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,gCAAgC,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IACxD,GAAG,CAAC,EAAE,iBAAiB,CAAC;CACzB;AAED,wDAAwD;AACxD,eAAO,MAAM,kBAAkB,iFAM7B,CAAC;AAIH,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAA0B,SAAQ,sBAAsB;IACvE,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,MAAM,CAAC,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QACzB,sBAAsB,CAAC,EAAE,OAAO,CAAC;QACjC,8BAA8B,CAAC,EAAE,OAAO,CAAC;QACzC,yBAAyB,CAAC,EAAE,OAAO,CAAC;QACpC,oCAAoC,CAAC,EAAE,MAAM,CAAC;QAC9C,uBAAuB,CAAC,EAAE,OAAO,CAAC;QAClC,gBAAgB,CAAC,EAAE,yBAAyB,EAAE,CAAC;QAC/C,wBAAwB,CAAC,EAAE,OAAO,CAAC;QACnC,wBAAwB,CAAC,EAAE,OAAO,CAAC;KACpC,CAAC;IACF,KAAK,CAAC,EAAE;QACN,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,kBAAkB,CAAC,EAAE,KAAK,CAAC;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAClE,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,gBAAgB,CAAC,EAAE,yBAAyB,EAAE,CAAC;QAC/C,uBAAuB,CAAC,EAAE,OAAO,CAAC;QAClC,oBAAoB,CAAC,EAAE,OAAO,CAAC;KAChC,CAAC;CACH;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,mFAU9B,CAAC"}
|
package/dist/integrity.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"algorithm": "sha256",
|
|
3
3
|
"artifacts": {
|
|
4
|
-
"manifest.json": "
|
|
4
|
+
"manifest.json": "8edf8cf9b5c5857cce13950cad5de8b4f9dbdad24fc72510082a4d259e5befca",
|
|
5
5
|
"meta.json": "884042882639c4dd91a8a97b9826869de90553ec4420fd1e6a0b08bb16fc5181",
|
|
6
6
|
"types/index.d.ts": "a1070fd1cb3e8d8a9002fc5a75a80b3bdda02965be351e8aed2dbc2f63d36e3c",
|
|
7
7
|
"rules/component-id-syntax.ts": "95f507614d2626159140d906bce9d086e8ecba18ede22f5ddfbda13ac1c08169",
|
|
@@ -33,9 +33,9 @@
|
|
|
33
33
|
"rules/otel125.ts": "ce318fd66be1c9d4c71fec9f70eef4623f92f5429f81444f73e5443a49885479",
|
|
34
34
|
"rules/otel126.ts": "57653f13e3fbb085ea2134c4530f6a10ab56df92a680ed8b0bb5c2609e72c545",
|
|
35
35
|
"rules/otel127.ts": "7f5bc8b21e721eb70bf36b67df79610c645ded588fee8392db2d85309277e49e",
|
|
36
|
-
"skills/chant-otel.md": "
|
|
36
|
+
"skills/chant-otel.md": "f05bbddd9c79e049a5fbf1647df763c89399194d2ae91a09a6121786b29c8450",
|
|
37
37
|
"skills/chant-otel-custom-components.md": "82e53bb482281f79b428e66fb80a1c194ead74a1a34a88bbebb11c6ad5493258",
|
|
38
38
|
"skills/chant-otel-platforms.md": "c90836952dc5c88d668b890152a5063bdb656bce73fc7fa3233a3ea58ad85686"
|
|
39
39
|
},
|
|
40
|
-
"composite": "
|
|
40
|
+
"composite": "161ccc27392c17d2d8bd0e44a641f13d574c73cea4a9bd3d07daf5cc848dc6f4"
|
|
41
41
|
}
|
package/dist/manifest.json
CHANGED
|
@@ -83,7 +83,7 @@ It deletes prompt, completion, system-instruction and tool-call content from spa
|
|
|
83
83
|
- Don't split metrics by a per-request id (`gen_ai.conversation.id`, `gen_ai.response.id`, `gen_ai.tool.call.id`, `session.id`, `user.id`, `enduser.id`) or a content key: each value starts new time series (OTEL116).
|
|
84
84
|
- Give every listener its own port. The collector's own metrics already use localhost:8888, so a `prometheus` exporter there makes it exit with "address already in use" (OTEL117).
|
|
85
85
|
- Keep `zpages` and `pprof` on localhost (OTEL122). `health_check` may listen on 0.0.0.0 for probes.
|
|
86
|
-
- Put `batch` in every pipeline that sends to a remote `otlp` or `otlphttp` exporter (OTEL125), and leave the exporter's `sending_queue` and `retry_on_failure` on (OTEL124).
|
|
86
|
+
- Put `batch` in every pipeline that sends to a remote `otlp` or `otlphttp` exporter (OTEL125), and leave the exporter's `sending_queue` and `retry_on_failure` on (OTEL124). To block the sender instead of dropping data when the queue is full, set `sending_queue.block_on_overflow: true`; `sending_queue.blocking` is not a collector setting (OTEL107).
|
|
87
87
|
- Use a `drop` policy rather than `invert_match`, and `readers` rather than `service.telemetry.metrics.address` (OTEL119).
|
|
88
88
|
- In a workspace, or with `telemetry.attribution: true`, leave `service.name`, `service.version`, `deployment.environment.name`, `vcs.ref.head.revision` and `chant.*` resource attributes alone: `insert` rather than `upsert`, and `override: false` on `resourcedetection` (OTEL118).
|
|
89
89
|
- Declared extensions are enabled in declaration order unless a `Service` lists `extensions` itself.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@intentius/chant-lexicon-otel",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.106.3",
|
|
4
4
|
"description": "OpenTelemetry Collector lexicon for chant — typed receivers, processors, exporters, connectors, extensions and pipelines, serialized to collector YAML",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"homepage": "https://intentius.io/chant",
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
"typescript": "^5.9.3"
|
|
69
69
|
},
|
|
70
70
|
"peerDependencies": {
|
|
71
|
-
"@intentius/chant": "^0.
|
|
71
|
+
"@intentius/chant": "^0.106.3",
|
|
72
72
|
"typescript": "^5.9.3"
|
|
73
73
|
}
|
|
74
74
|
}
|
package/src/components/common.ts
CHANGED
|
@@ -144,14 +144,58 @@ export interface RetrySettings {
|
|
|
144
144
|
max_elapsed_time?: Duration;
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
+
/**
|
|
148
|
+
* `sending_queue.batch` (v0.130.0, `exporterhelper/internal/queuebatch`):
|
|
149
|
+
* the exporter merges queued requests into larger ones before sending. An
|
|
150
|
+
* alternative to the `batch` processor that works per exporter. Unset, the
|
|
151
|
+
* exporter does not batch.
|
|
152
|
+
*/
|
|
153
|
+
export interface BatchSettings {
|
|
154
|
+
/** How long a partial batch waits before it is sent. Default 200ms. */
|
|
155
|
+
flush_timeout?: Duration;
|
|
156
|
+
/** A batch is sent once it reaches this size, in `sizer` units. Default 8192. */
|
|
157
|
+
min_size?: number;
|
|
158
|
+
/** A larger batch is split to this size. 0 means no limit. */
|
|
159
|
+
max_size?: number;
|
|
160
|
+
sizer?: "requests" | "items" | "bytes";
|
|
161
|
+
}
|
|
162
|
+
|
|
147
163
|
export interface QueueSettings {
|
|
148
164
|
enabled?: boolean;
|
|
149
165
|
num_consumers?: number;
|
|
150
166
|
queue_size?: number;
|
|
151
167
|
/** The id of a storage extension, for a persistent queue. */
|
|
152
168
|
storage?: string;
|
|
169
|
+
/** Block the sender when the queue is full instead of dropping data. The collector's field is `block_on_overflow`. */
|
|
170
|
+
block_on_overflow?: boolean;
|
|
171
|
+
/** @deprecated The collector reads `block_on_overflow`; `queueIssues` reports this field. */
|
|
153
172
|
blocking?: boolean;
|
|
154
173
|
sizer?: "requests" | "items" | "bytes";
|
|
174
|
+
/** Batching in the queue, in place of a `batch` processor. */
|
|
175
|
+
batch?: BatchSettings;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
/** Problems in the `sending_queue` of an exporter's `exporterhelper` settings. */
|
|
179
|
+
export function queueIssues(c: ExporterHelperSettings): string[] {
|
|
180
|
+
const q = c.sending_queue;
|
|
181
|
+
if (!q) return [];
|
|
182
|
+
const issues: string[] = [];
|
|
183
|
+
if (q.blocking !== undefined) {
|
|
184
|
+
issues.push(
|
|
185
|
+
q.block_on_overflow !== undefined
|
|
186
|
+
? "sending_queue.blocking is set next to block_on_overflow; remove blocking, the collector reads block_on_overflow"
|
|
187
|
+
: "sending_queue.blocking is not a collector setting; use sending_queue.block_on_overflow",
|
|
188
|
+
);
|
|
189
|
+
}
|
|
190
|
+
const b = q.batch;
|
|
191
|
+
if (!b) return issues;
|
|
192
|
+
if (q.enabled === false) issues.push("sending_queue.batch is set but sending_queue.enabled is false; batching runs in the queue");
|
|
193
|
+
if (b.min_size !== undefined && b.min_size < 0) issues.push("sending_queue.batch.min_size is negative");
|
|
194
|
+
if (b.max_size !== undefined && b.max_size < 0) issues.push("sending_queue.batch.max_size is negative");
|
|
195
|
+
if (b.max_size !== undefined && b.max_size !== 0 && b.min_size !== undefined && b.max_size < b.min_size) {
|
|
196
|
+
issues.push(`sending_queue.batch.max_size (${b.max_size}) is below min_size (${b.min_size}); the collector rejects this`);
|
|
197
|
+
}
|
|
198
|
+
return issues;
|
|
155
199
|
}
|
|
156
200
|
|
|
157
201
|
/** `exporterhelper` settings every queued exporter accepts. */
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
import { defineBuiltin } from "../define";
|
|
6
|
+
import { queueIssues } from "./common";
|
|
6
7
|
import type { Duration, ExporterHelperSettings, GRPCClientSettings, HTTPClientSettings, TLSServerSettings } from "./common";
|
|
7
8
|
|
|
8
9
|
// ── otlp ─────────────────────────────────────────────────────────────
|
|
@@ -14,7 +15,7 @@ export const OtlpExporter = defineBuiltin<OtlpExporterConfig, "exporter", "otlp"
|
|
|
14
15
|
kind: "exporter",
|
|
15
16
|
type: "otlp",
|
|
16
17
|
description: "Sends traces, metrics and logs over OTLP gRPC",
|
|
17
|
-
validate: (c) => (c.endpoint ? [] : ["endpoint is empty"]),
|
|
18
|
+
validate: (c) => [...(c.endpoint ? [] : ["endpoint is empty"]), ...queueIssues(c)],
|
|
18
19
|
endpoints: (c) => (c.endpoint ? [c.endpoint] : []),
|
|
19
20
|
protocols: () => ["grpc"],
|
|
20
21
|
});
|
|
@@ -34,10 +35,12 @@ export const OtlpHttpExporter = defineBuiltin<OtlpHttpExporterConfig, "exporter"
|
|
|
34
35
|
kind: "exporter",
|
|
35
36
|
type: "otlphttp",
|
|
36
37
|
description: "Sends traces, metrics and logs over OTLP HTTP",
|
|
37
|
-
validate: (c) =>
|
|
38
|
-
c.endpoint || c.traces_endpoint || c.metrics_endpoint || c.logs_endpoint
|
|
38
|
+
validate: (c) => [
|
|
39
|
+
...(c.endpoint || c.traces_endpoint || c.metrics_endpoint || c.logs_endpoint
|
|
39
40
|
? []
|
|
40
|
-
: ["set endpoint, or at least one of traces_endpoint, metrics_endpoint and logs_endpoint"],
|
|
41
|
+
: ["set endpoint, or at least one of traces_endpoint, metrics_endpoint and logs_endpoint"]),
|
|
42
|
+
...queueIssues(c),
|
|
43
|
+
],
|
|
41
44
|
endpoints: (c) =>
|
|
42
45
|
[c.endpoint, c.traces_endpoint, c.metrics_endpoint, c.logs_endpoint].filter((e): e is string => typeof e === "string" && e !== ""),
|
|
43
46
|
protocols: (c) => [c.encoding === "json" ? "http/json" : "http/protobuf"],
|
package/src/define.test.ts
CHANGED
|
@@ -77,6 +77,39 @@ describe("defineComponent", () => {
|
|
|
77
77
|
expect(yaml.startsWith("receivers:")).toBe(true);
|
|
78
78
|
});
|
|
79
79
|
|
|
80
|
+
test("sending_queue.batch serializes and is checked as OTEL107", () => {
|
|
81
|
+
const otlp = new OtlpReceiver({ protocols: { grpc: {} } });
|
|
82
|
+
const ok = new OtlpExporter({ endpoint: "backend:4317", sending_queue: { batch: { flush_timeout: "1s", min_size: 100, max_size: 500 } } });
|
|
83
|
+
const good = build([otlp, ok, new Pipeline({ signal: "traces", receivers: [otlp], exporters: [ok] })]);
|
|
84
|
+
expect(good.yaml).toContain("flush_timeout: 1s");
|
|
85
|
+
expect(good.diags.filter((d) => d.checkId === "OTEL107" || d.checkId === "OTEL125")).toEqual([]);
|
|
86
|
+
|
|
87
|
+
const bad = new OtlpExporter({ endpoint: "backend:4317", sending_queue: { enabled: false, batch: { min_size: 500, max_size: 100 } } });
|
|
88
|
+
const r = build([otlp, bad, new Pipeline({ signal: "traces", receivers: [otlp], exporters: [bad] })]);
|
|
89
|
+
expect(r.diags.filter((d) => d.checkId === "OTEL107").map((d) => d.message)).toEqual([
|
|
90
|
+
'exporter "otlp": sending_queue.batch is set but sending_queue.enabled is false; batching runs in the queue',
|
|
91
|
+
'exporter "otlp": sending_queue.batch.max_size (100) is below min_size (500); the collector rejects this',
|
|
92
|
+
]);
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
test("sending_queue.blocking is reported; the collector reads block_on_overflow", () => {
|
|
96
|
+
const otlp = new OtlpReceiver({ protocols: { grpc: {} } });
|
|
97
|
+
const old = new OtlpExporter({ endpoint: "backend:4317", sending_queue: { blocking: true } });
|
|
98
|
+
const r = build([otlp, old, new Pipeline({ signal: "traces", receivers: [otlp], exporters: [old] })]);
|
|
99
|
+
expect(r.diags.filter((d) => d.checkId === "OTEL107").map((d) => d.message)).toEqual([
|
|
100
|
+
'exporter "otlp": sending_queue.blocking is not a collector setting; use sending_queue.block_on_overflow',
|
|
101
|
+
]);
|
|
102
|
+
|
|
103
|
+
const both = new OtlpExporter({ endpoint: "backend:4317", sending_queue: { blocking: true, block_on_overflow: true } });
|
|
104
|
+
const r2 = build([otlp, both, new Pipeline({ signal: "traces", receivers: [otlp], exporters: [both] })]);
|
|
105
|
+
expect(r2.diags.filter((d) => d.checkId === "OTEL107")).toHaveLength(1);
|
|
106
|
+
|
|
107
|
+
const ok = new OtlpExporter({ endpoint: "backend:4317", sending_queue: { block_on_overflow: true } });
|
|
108
|
+
const r3 = build([otlp, ok, new Pipeline({ signal: "traces", receivers: [otlp], exporters: [ok] })]);
|
|
109
|
+
expect(r3.diags.filter((d) => d.checkId === "OTEL107")).toEqual([]);
|
|
110
|
+
expect(r3.yaml).toContain("block_on_overflow: true");
|
|
111
|
+
});
|
|
112
|
+
|
|
80
113
|
test("its own validate runs as OTEL107, function or safeParse", () => {
|
|
81
114
|
const otlp = new OtlpReceiver({ protocols: { grpc: {} } });
|
|
82
115
|
const v = new VendorExporter({ api: { key: "plaintext" } });
|
package/src/skills/chant-otel.md
CHANGED
|
@@ -83,7 +83,7 @@ It deletes prompt, completion, system-instruction and tool-call content from spa
|
|
|
83
83
|
- Don't split metrics by a per-request id (`gen_ai.conversation.id`, `gen_ai.response.id`, `gen_ai.tool.call.id`, `session.id`, `user.id`, `enduser.id`) or a content key: each value starts new time series (OTEL116).
|
|
84
84
|
- Give every listener its own port. The collector's own metrics already use localhost:8888, so a `prometheus` exporter there makes it exit with "address already in use" (OTEL117).
|
|
85
85
|
- Keep `zpages` and `pprof` on localhost (OTEL122). `health_check` may listen on 0.0.0.0 for probes.
|
|
86
|
-
- Put `batch` in every pipeline that sends to a remote `otlp` or `otlphttp` exporter (OTEL125), and leave the exporter's `sending_queue` and `retry_on_failure` on (OTEL124).
|
|
86
|
+
- Put `batch` in every pipeline that sends to a remote `otlp` or `otlphttp` exporter (OTEL125), and leave the exporter's `sending_queue` and `retry_on_failure` on (OTEL124). To block the sender instead of dropping data when the queue is full, set `sending_queue.block_on_overflow: true`; `sending_queue.blocking` is not a collector setting (OTEL107).
|
|
87
87
|
- Use a `drop` policy rather than `invert_match`, and `readers` rather than `service.telemetry.metrics.address` (OTEL119).
|
|
88
88
|
- In a workspace, or with `telemetry.attribution: true`, leave `service.name`, `service.version`, `deployment.environment.name`, `vcs.ref.head.revision` and `chant.*` resource attributes alone: `insert` rather than `upsert`, and `override: false` on `resourcedetection` (OTEL118).
|
|
89
89
|
- Declared extensions are enabled in declaration order unless a `Service` lists `extensions` itself.
|