fg-tracker-sdk 0.23.0 → 0.24.0

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/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog — fg-tracker-sdk
2
2
 
3
+ ## 0.24.0
4
+
5
+ Sucede a 0.23.0 (flush de route handlers Next.js, T128).
6
+
7
+ - **Coleta parcial por trace (T64):** quando o limite da fila (`maxQueueSize`/`maxQueueBytes`) descarta um span com pai local, inclusive depois de um retry devolver o lote à fila, o SDK envia no próximo lote `partialCollection: [{ traceId, parentSpanId, reason: "queue_overflow", environment?, lost: [[inícioMs, fimMs]] }]`. A API deixa de acusar UNTRACED_GAP no intervalo perdido daquele pai e continua julgando o resto; uma ocorrência já gravada é desfeita quando a marca chega depois.
8
+ - **Limites:** até 256 pares (trace, pai, ambiente) pendentes, 32 intervalos por par, 64 marcas e no máximo um quarto do teto do lote por envio; pendente há mais de 24 h expira. Retry mantém as marcas; 2xx sem a confirmação `partialCollection` (API sem o contrato) ou 4xx as descartam, sem novo envio. Raiz perdida não gera marca.
9
+ - **Efeito ao atualizar:** sem estouro da fila o corpo enviado é o mesmo de antes. O contador agregado `clientDropped` (0.19.0) não muda; spans, amostragem e `sampling.kept` também não. Requer a API com o contrato de coleta parcial; a ausência de marca não prova trace completo.
10
+
3
11
  ## 0.23.0
4
12
 
5
13
  Sucede a 0.22.0 (métricas de processo, T118).
package/README.md CHANGED
@@ -128,6 +128,7 @@ O envio segue o CONTRATO.md §4.3 e vale também para o shipper de logs:
128
128
  - **413**: o lote é dividido até caber. **Outro 4xx**: o lote é descartado (repetir daria o mesmo erro).
129
129
  - **202 parcial**: spans recusados pela validação da API (`rejected`) não são reenviados. Agregados de infra com falha transitória (`infra.retryableIds`) voltam para a fila com o mesmo `id` e esperam o backoff. O reenvio não duplica: spans, logs, pageviews e agregados têm identidade e a API deduplica.
130
130
  - **Memória**: lotes de até 1,5 MiB e 1000 spans; fila de até 5000 spans e 32 MiB. `attributes` ou `error` acima de 60 KiB são cortados antes do envio, com `attributes['fg.truncated'] = true` (a API recusaria o span acima de 64 KiB).
131
+ - **Coleta parcial** (desde 0.24.0): quando o limite da fila descarta um span que tem pai local, o SDK envia no próximo lote a marca `partialCollection` (trace, span pai, ambiente e o intervalo perdido, motivo `queue_overflow`). A API não acusa UNTRACED_GAP nesse intervalo e continua julgando o resto do pai. A memória das marcas é limitada (256 pares pendentes, 24 h); uma API que não confirma o campo faz o SDK descartá-las sem reenviar. Detalhes em `docs/coleta-parcial.md` do repositório.
131
132
  - **`shutdown({ timeoutMs })`** envia o que der em até 10 s (padrão `shutdownTimeoutMs`) e aborta a requisição pendente no prazo. Com a API muda, volta no prazo; o que sobrou é descartado e contado.
132
133
  - **Saída sem `shutdown()`** (`exitHooks`, ligado por padrão): scripts e jobs que terminam sozinhos enviam a fila no `beforeExit`. Em SIGTERM/SIGINT o SDK envia a fila e, se a aplicação não trata o sinal, o reemite: o processo sai como sairia sem o SDK. Se a aplicação tem o próprio handler, ela decide quando sair; chame `await tracker.shutdown()` nele. Na Lambda use `wrapLambda` (abaixo).
133
134
  - **Amostragem**: com `tracesSampleRate < 1`, a decisão é por trace, na raiz. Com `sendUnsampledErrors: true`, o span que falhou num trace não amostrado e a raiz local dele são enviados mesmo assim, marcados `attributes['sampling.kept'] = 'error'`. Os spans que fecharam antes do erro já foram descartados e não voltam: preservar o trace inteiro exige amostragem no coletor. A API deixa essas raízes fora das métricas e as mostra nas issues e nos traces.
@@ -0,0 +1,95 @@
1
+ /**
2
+ * Coleta parcial por trace (docs/coleta-parcial.md, CONTRATO.md §4.3).
3
+ *
4
+ * Acima de `maxQueueSize`/`maxQueueBytes` a fila descarta spans antigos um a um. Se a raiz e parte
5
+ * dos filhos sobrevivem, a API vê o intervalo do filho perdido como tempo sem span e acusa
6
+ * UNTRACED_GAP: falha de coleta atribuída à instrumentação. Este registro guarda, por trace, span
7
+ * pai e ambiente, os intervalos dos filhos descartados e os envia em `partialCollection` no próximo
8
+ * lote até a API confirmar. Dentro desses intervalos a API não julga gap; fora deles, sim.
9
+ *
10
+ * O contador agregado `clientDropped` continua sendo o número de descartes: ele não diz qual trace
11
+ * ficou incompleto. Nada aqui muda a fila, a amostragem nem `sampling.kept`.
12
+ *
13
+ * Limites (a marca é melhor esforço; sem ela a API avalia como sempre, e ausência de marca não
14
+ * prova trace completo):
15
+ * - até `MAX_PARTIAL_COLLECTION_ENTRIES` pares pendentes; acima disso sai o par atualizado há mais
16
+ * tempo (os mais recentes são os que ainda podem ter raiz na fila). Os descartados contam em
17
+ * `evicted`;
18
+ * - até `MAX_LOST_INTERVALS` intervalos por par: acima disso os vizinhos mais próximos se juntam (a
19
+ * área marcada só cresce);
20
+ * - pendente há mais de `PARTIAL_COLLECTION_TTL_MS` expira (`expired`): a API só desfaz um gap já
21
+ * gravado enquanto guarda o registro de ocorrências do trace (24 h);
22
+ * - só filhos com pai local (`parentSpanId`): raiz perdida não gera gap (os filhos dela ficam sem
23
+ * pai na API), então não precisa de marca.
24
+ */
25
+ export declare const PARTIAL_COLLECTION_REASON = "queue_overflow";
26
+ export declare const MAX_PARTIAL_COLLECTION_ENTRIES = 256;
27
+ /** Marcas por lote: o mesmo teto que a API lê por corpo. */
28
+ export declare const MAX_PARTIAL_COLLECTION_PER_BATCH = 64;
29
+ export declare const MAX_LOST_INTERVALS = 32;
30
+ export declare const PARTIAL_COLLECTION_TTL_MS: number;
31
+ type Interval = [number, number];
32
+ /** O que a fila guarda de um span com pai local para marcar a perda dele. */
33
+ export interface LostSpanRef {
34
+ parentSpanId: string;
35
+ environment: string | null;
36
+ startMs: number;
37
+ endMs: number;
38
+ }
39
+ /** Uma marca no corpo de `POST /v1/ingest` (`partialCollection[]`). */
40
+ export interface PartialCollectionMarker {
41
+ traceId: string;
42
+ parentSpanId: string;
43
+ reason: typeof PARTIAL_COLLECTION_REASON;
44
+ environment?: string;
45
+ lost: Interval[];
46
+ }
47
+ /** Marcas que saíram num lote, com a versão de cada par: a confirmação só apaga a versão enviada. */
48
+ export interface PartialCollectionTake {
49
+ markers: PartialCollectionMarker[];
50
+ json: string;
51
+ sent: Map<string, number>;
52
+ }
53
+ /**
54
+ * Ambiente como a API o lê (`environment`, senão `env`; texto ou número, aparado, até 64): a marca só
55
+ * vale para o pai do mesmo ambiente.
56
+ */
57
+ export declare function spanEnvironment(attributes: Record<string, unknown> | undefined): string | null;
58
+ /** Referência do span para a fila; `undefined` para raiz local ou intervalo inválido. */
59
+ export declare function lostSpanRef(span: {
60
+ parentSpanId: string | null;
61
+ startedAt: string;
62
+ durationMs: number;
63
+ attributes?: Record<string, unknown>;
64
+ }): LostSpanRef | undefined;
65
+ /** União ordenada; acima de `max`, junta o par vizinho com o menor espaço entre eles (como a API). */
66
+ export declare function mergeIntervals(intervals: readonly Interval[], max?: number): Interval[];
67
+ export declare class PartialCollectionLedger {
68
+ private readonly now;
69
+ /** Ordem de inserção = do par atualizado há mais tempo para o mais recente. */
70
+ private readonly entries;
71
+ /** Pares descartados pelo teto de memória (a perda deles pode aparecer como gap na API). */
72
+ evicted: number;
73
+ /** Pares que expiraram sem confirmação. */
74
+ expired: number;
75
+ /** Pares enviados e não confirmados por uma API que não conhece `partialCollection` (2xx sem ACK) ou recusados (4xx). */
76
+ unacknowledged: number;
77
+ constructor(now?: () => number);
78
+ /** Um span com pai local saiu da fila pelo limite (`trimQueue`). */
79
+ record(traceId: string, ref: LostSpanRef): void;
80
+ get size(): number;
81
+ hasPending(): boolean;
82
+ /**
83
+ * Marcas do próximo lote, dos pares mais recentes para os mais antigos (os que ainda podem ter a
84
+ * raiz na fila), até `MAX_PARTIAL_COLLECTION_PER_BATCH` e `maxBytes` do JSON; sempre leva pelo
85
+ * menos uma, como o lote leva pelo menos um item. `null` sem nada pendente.
86
+ */
87
+ take(maxBytes: number): PartialCollectionTake | null;
88
+ /** A API confirmou (aceitas ou ignoradas, nenhuma volta): apaga o que não mudou desde o envio. */
89
+ acknowledge(sent: ReadonlyMap<string, number>): void;
90
+ /** Lote recusado (4xx), ou 2xx de uma API sem suporte: nunca vai ser lido, então sai. */
91
+ discard(sent: ReadonlyMap<string, number>): void;
92
+ private expire;
93
+ }
94
+ export {};
95
+ //# sourceMappingURL=partial-collection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partial-collection.d.ts","sourceRoot":"","sources":["../src/partial-collection.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,eAAO,MAAM,yBAAyB,mBAAmB,CAAC;AAC1D,eAAO,MAAM,8BAA8B,MAAM,CAAC;AAClD,4DAA4D;AAC5D,eAAO,MAAM,gCAAgC,KAAK,CAAC;AACnD,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,yBAAyB,QAAmB,CAAC;AAI1D,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjC,6EAA6E;AAC7E,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,uEAAuE;AACvE,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,OAAO,yBAAyB,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,QAAQ,EAAE,CAAC;CAClB;AAED,qGAAqG;AACrG,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,uBAAuB,EAAE,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC3B;AAQD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAQ9F;AAED,yFAAyF;AACzF,wBAAgB,WAAW,CAAC,IAAI,EAAE;IAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,WAAW,GAAG,SAAS,CAMvK;AAED,sGAAsG;AACtG,wBAAgB,cAAc,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,EAAE,GAAG,SAAqB,GAAG,QAAQ,EAAE,CAgBnG;AAED,qBAAa,uBAAuB;IAUtB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAThC,+EAA+E;IAC/E,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IACpD,4FAA4F;IAC5F,OAAO,SAAK;IACZ,2CAA2C;IAC3C,OAAO,SAAK;IACZ,yHAAyH;IACzH,cAAc,SAAK;gBAEU,GAAG,GAAE,MAAM,MAAiB;IAEzD,oEAAoE;IACpE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI;IAuB/C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,UAAU,IAAI,OAAO;IAKrB;;;;OAIG;IACH,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,qBAAqB,GAAG,IAAI;IAqBpD,kGAAkG;IAClG,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAMpD,yFAAyF;IACzF,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAQhD,OAAO,CAAC,MAAM;CAQf"}
@@ -0,0 +1,177 @@
1
+ import { byteLength } from './transport.js';
2
+ /**
3
+ * Coleta parcial por trace (docs/coleta-parcial.md, CONTRATO.md §4.3).
4
+ *
5
+ * Acima de `maxQueueSize`/`maxQueueBytes` a fila descarta spans antigos um a um. Se a raiz e parte
6
+ * dos filhos sobrevivem, a API vê o intervalo do filho perdido como tempo sem span e acusa
7
+ * UNTRACED_GAP: falha de coleta atribuída à instrumentação. Este registro guarda, por trace, span
8
+ * pai e ambiente, os intervalos dos filhos descartados e os envia em `partialCollection` no próximo
9
+ * lote até a API confirmar. Dentro desses intervalos a API não julga gap; fora deles, sim.
10
+ *
11
+ * O contador agregado `clientDropped` continua sendo o número de descartes: ele não diz qual trace
12
+ * ficou incompleto. Nada aqui muda a fila, a amostragem nem `sampling.kept`.
13
+ *
14
+ * Limites (a marca é melhor esforço; sem ela a API avalia como sempre, e ausência de marca não
15
+ * prova trace completo):
16
+ * - até `MAX_PARTIAL_COLLECTION_ENTRIES` pares pendentes; acima disso sai o par atualizado há mais
17
+ * tempo (os mais recentes são os que ainda podem ter raiz na fila). Os descartados contam em
18
+ * `evicted`;
19
+ * - até `MAX_LOST_INTERVALS` intervalos por par: acima disso os vizinhos mais próximos se juntam (a
20
+ * área marcada só cresce);
21
+ * - pendente há mais de `PARTIAL_COLLECTION_TTL_MS` expira (`expired`): a API só desfaz um gap já
22
+ * gravado enquanto guarda o registro de ocorrências do trace (24 h);
23
+ * - só filhos com pai local (`parentSpanId`): raiz perdida não gera gap (os filhos dela ficam sem
24
+ * pai na API), então não precisa de marca.
25
+ */
26
+ export const PARTIAL_COLLECTION_REASON = 'queue_overflow';
27
+ export const MAX_PARTIAL_COLLECTION_ENTRIES = 256;
28
+ /** Marcas por lote: o mesmo teto que a API lê por corpo. */
29
+ export const MAX_PARTIAL_COLLECTION_PER_BATCH = 64;
30
+ export const MAX_LOST_INTERVALS = 32;
31
+ export const PARTIAL_COLLECTION_TTL_MS = 24 * 60 * 60_000;
32
+ /** Mesmo teto da coluna `environment` dos spans na API. */
33
+ const MAX_ENVIRONMENT_LENGTH = 64;
34
+ /**
35
+ * Ambiente como a API o lê (`environment`, senão `env`; texto ou número, aparado, até 64): a marca só
36
+ * vale para o pai do mesmo ambiente.
37
+ */
38
+ export function spanEnvironment(attributes) {
39
+ for (const key of ['environment', 'env']) {
40
+ const value = attributes?.[key];
41
+ const text = typeof value === 'string' ? value : typeof value === 'number' ? String(value) : null;
42
+ const trimmed = text?.trim();
43
+ if (trimmed)
44
+ return trimmed.slice(0, MAX_ENVIRONMENT_LENGTH);
45
+ }
46
+ return null;
47
+ }
48
+ /** Referência do span para a fila; `undefined` para raiz local ou intervalo inválido. */
49
+ export function lostSpanRef(span) {
50
+ if (!span.parentSpanId)
51
+ return undefined;
52
+ const startMs = Date.parse(span.startedAt);
53
+ const duration = Number.isFinite(span.durationMs) ? Math.max(0, span.durationMs) : 0;
54
+ if (!Number.isFinite(startMs) || startMs <= 0)
55
+ return undefined;
56
+ return { parentSpanId: span.parentSpanId, environment: spanEnvironment(span.attributes), startMs, endMs: startMs + duration };
57
+ }
58
+ /** União ordenada; acima de `max`, junta o par vizinho com o menor espaço entre eles (como a API). */
59
+ export function mergeIntervals(intervals, max = MAX_LOST_INTERVALS) {
60
+ const sorted = intervals.map(([start, end]) => [start, end]).sort((a, b) => a[0] - b[0] || a[1] - b[1]);
61
+ const merged = [];
62
+ for (const [start, end] of sorted) {
63
+ const last = merged[merged.length - 1];
64
+ if (last && start <= last[1])
65
+ last[1] = Math.max(last[1], end);
66
+ else
67
+ merged.push([start, end]);
68
+ }
69
+ while (merged.length > Math.max(1, max)) {
70
+ let best = 0;
71
+ for (let i = 1; i < merged.length - 1; i += 1) {
72
+ if (merged[i + 1][0] - merged[i][1] < merged[best + 1][0] - merged[best][1])
73
+ best = i;
74
+ }
75
+ merged.splice(best, 2, [merged[best][0], merged[best + 1][1]]);
76
+ }
77
+ return merged;
78
+ }
79
+ export class PartialCollectionLedger {
80
+ now;
81
+ /** Ordem de inserção = do par atualizado há mais tempo para o mais recente. */
82
+ entries = new Map();
83
+ /** Pares descartados pelo teto de memória (a perda deles pode aparecer como gap na API). */
84
+ evicted = 0;
85
+ /** Pares que expiraram sem confirmação. */
86
+ expired = 0;
87
+ /** Pares enviados e não confirmados por uma API que não conhece `partialCollection` (2xx sem ACK) ou recusados (4xx). */
88
+ unacknowledged = 0;
89
+ constructor(now = Date.now) {
90
+ this.now = now;
91
+ }
92
+ /** Um span com pai local saiu da fila pelo limite (`trimQueue`). */
93
+ record(traceId, ref) {
94
+ const key = JSON.stringify([traceId, ref.parentSpanId, ref.environment ?? '']);
95
+ const interval = [ref.startMs, ref.endMs];
96
+ const existing = this.entries.get(key);
97
+ if (existing) {
98
+ this.entries.delete(key);
99
+ existing.marker.lost = mergeIntervals([...existing.marker.lost, interval]);
100
+ existing.version += 1;
101
+ this.entries.set(key, existing);
102
+ return;
103
+ }
104
+ this.entries.set(key, {
105
+ marker: { traceId, parentSpanId: ref.parentSpanId, reason: PARTIAL_COLLECTION_REASON, ...(ref.environment ? { environment: ref.environment } : {}), lost: [interval] },
106
+ firstAt: this.now(),
107
+ version: 1,
108
+ });
109
+ while (this.entries.size > MAX_PARTIAL_COLLECTION_ENTRIES) {
110
+ const oldest = this.entries.keys().next().value;
111
+ this.entries.delete(oldest);
112
+ this.evicted += 1;
113
+ }
114
+ }
115
+ get size() {
116
+ return this.entries.size;
117
+ }
118
+ hasPending() {
119
+ this.expire();
120
+ return this.entries.size > 0;
121
+ }
122
+ /**
123
+ * Marcas do próximo lote, dos pares mais recentes para os mais antigos (os que ainda podem ter a
124
+ * raiz na fila), até `MAX_PARTIAL_COLLECTION_PER_BATCH` e `maxBytes` do JSON; sempre leva pelo
125
+ * menos uma, como o lote leva pelo menos um item. `null` sem nada pendente.
126
+ */
127
+ take(maxBytes) {
128
+ this.expire();
129
+ if (this.entries.size === 0)
130
+ return null;
131
+ const markers = [];
132
+ const jsons = [];
133
+ const sent = new Map();
134
+ let bytes = 2;
135
+ for (const [key, entry] of [...this.entries].reverse()) {
136
+ if (markers.length >= MAX_PARTIAL_COLLECTION_PER_BATCH)
137
+ break;
138
+ const json = JSON.stringify(entry.marker);
139
+ const size = byteLength(json) + (jsons.length > 0 ? 1 : 0);
140
+ if (markers.length > 0 && bytes + size > maxBytes)
141
+ break;
142
+ bytes += size;
143
+ markers.push(entry.marker);
144
+ jsons.push(json);
145
+ sent.set(key, entry.version);
146
+ }
147
+ if (markers.length === 0)
148
+ return null;
149
+ return { markers, json: `[${jsons.join(',')}]`, sent };
150
+ }
151
+ /** A API confirmou (aceitas ou ignoradas, nenhuma volta): apaga o que não mudou desde o envio. */
152
+ acknowledge(sent) {
153
+ for (const [key, version] of sent) {
154
+ if (this.entries.get(key)?.version === version)
155
+ this.entries.delete(key);
156
+ }
157
+ }
158
+ /** Lote recusado (4xx), ou 2xx de uma API sem suporte: nunca vai ser lido, então sai. */
159
+ discard(sent) {
160
+ for (const [key, version] of sent) {
161
+ if (this.entries.get(key)?.version !== version)
162
+ continue;
163
+ this.entries.delete(key);
164
+ this.unacknowledged += 1;
165
+ }
166
+ }
167
+ expire() {
168
+ const limit = this.now() - PARTIAL_COLLECTION_TTL_MS;
169
+ for (const [key, entry] of this.entries) {
170
+ if (entry.firstAt >= limit)
171
+ continue;
172
+ this.entries.delete(key);
173
+ this.expired += 1;
174
+ }
175
+ }
176
+ }
177
+ //# sourceMappingURL=partial-collection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"partial-collection.js","sourceRoot":"","sources":["../src/partial-collection.ts"],"names":[],"mappings":"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"}
package/dist/tracker.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { type SpanContext } from './context.js';
2
+ import { PartialCollectionLedger } from './partial-collection.js';
2
3
  import { type ScrubOptions } from './scrub.js';
3
4
  import { type ExitParticipant } from './exit-hooks.js';
4
5
  import { type ResolvedGenAi } from './genai/config.js';
@@ -84,6 +85,8 @@ export declare class TrackerCore implements ExitParticipant {
84
85
  private droppedReportSequence;
85
86
  private droppedReportSuppressed;
86
87
  private exitDroppedReportAttempted;
88
+ /** Marcas de coleta parcial por trace (docs/coleta-parcial.md): qual pai perdeu filhos e onde. */
89
+ readonly partialCollection: PartialCollectionLedger;
87
90
  private readonly sender;
88
91
  /** Teto atual do corpo: começa em `maxBatchBytes` e cai pela metade a cada 413. */
89
92
  private batchBytes;
@@ -244,6 +247,11 @@ export declare class TrackerCore implements ExitParticipant {
244
247
  private acknowledgeClientDropped;
245
248
  /** Aplica o resultado do envio. Devolve `false` quando o lote voltou para a fila (backoff). */
246
249
  private handleResult;
250
+ /**
251
+ * 2xx com marcas de coleta parcial: `partialCollection` na resposta confirma todas (aceitas ou
252
+ * ignoradas, nenhuma volta). Sem ele a API não conhece o campo: as marcas saem, sem novo envio.
253
+ */
254
+ private settlePartialCollection;
247
255
  /** Devolve o lote para a frente da fila (os limites de memória continuam valendo). */
248
256
  private requeue;
249
257
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"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"}
package/dist/tracker.js CHANGED
@@ -4,6 +4,7 @@ import { EventLoopMonitor } from './event-loop.js';
4
4
  import { ProcessMetrics } from './process-metrics.js';
5
5
  import { als, newSpanId, newTraceId, traceContextHeaders } from './context.js';
6
6
  import { toSpanError } from './normalize.js';
7
+ import { lostSpanRef, PartialCollectionLedger } from './partial-collection.js';
7
8
  import { DEFAULT_SCRUB_FIELDS, FILTERED, matchesAny, scrubAttributes, scrubDiagnostic, scrubError, scrubText, shouldScrub, testPattern } from './scrub.js';
8
9
  import { API_KEY_HEADER, DEFAULT_ENDPOINT, readEnv } from './constants.js';
9
10
  import { registerExitFlush } from './exit-hooks.js';
@@ -174,6 +175,8 @@ export class TrackerCore {
174
175
  droppedReportSequence = 0;
175
176
  droppedReportSuppressed = false;
176
177
  exitDroppedReportAttempted = false;
178
+ /** Marcas de coleta parcial por trace (docs/coleta-parcial.md): qual pai perdeu filhos e onde. */
179
+ partialCollection = new PartialCollectionLedger();
177
180
  sender;
178
181
  /** Teto atual do corpo: começa em `maxBatchBytes` e cai pela metade a cada 413. */
179
182
  batchBytes;
@@ -583,6 +586,8 @@ export class TrackerCore {
583
586
  this.warnOnce(`span descartado: não foi possível serializar (${err?.message ?? err})`);
584
587
  return;
585
588
  }
589
+ if (span.parentSpanId)
590
+ item.lost = lostSpanRef(span);
586
591
  this.queue.push(item);
587
592
  this.queueBytes += item.bytes;
588
593
  this.enqueuedSinceExit += 1;
@@ -598,6 +603,8 @@ export class TrackerCore {
598
603
  this.queueBytes -= removed.bytes;
599
604
  this.dropped += 1;
600
605
  this.queueDroppedSinceReport += 1;
606
+ if (removed.lost)
607
+ this.partialCollection.record(removed.traceId, removed.lost);
601
608
  if (rearmExitDroppedReportAttempt)
602
609
  this.exitDroppedReportAttempted = false;
603
610
  }
@@ -614,9 +621,11 @@ export class TrackerCore {
614
621
  this.infraDue = true;
615
622
  if (this.flushing) {
616
623
  // Um envio em andamento pode já ter passado da checagem de infra: encadeia outro.
617
- return includeInfra ? this.flushing.then(() => (this.hasInfraToSend() || this.hasClientDroppedToSend() ? this.flush(true) : undefined)) : this.flushing;
624
+ return includeInfra
625
+ ? this.flushing.then(() => (this.hasInfraToSend() || this.hasClientDroppedToSend() || this.partialCollection.hasPending() ? this.flush(true) : undefined))
626
+ : this.flushing;
618
627
  }
619
- if (this.queue.length === 0 && !this.hasInfraToSend() && !this.hasClientDroppedToSend()) {
628
+ if (this.queue.length === 0 && !this.hasInfraToSend() && !this.hasClientDroppedToSend() && !this.partialCollection.hasPending()) {
620
629
  this.infraDue = false;
621
630
  return;
622
631
  }
@@ -660,7 +669,7 @@ export class TrackerCore {
660
669
  this.pushInfraPending(this.infra.drain());
661
670
  }
662
671
  const clientDropped = reportUnavailable ? null : this.pendingClientDroppedReport();
663
- if (this.queue.length === 0 && this.infraPending.length === 0 && !clientDropped)
672
+ if (this.queue.length === 0 && this.infraPending.length === 0 && !clientDropped && !this.partialCollection.hasPending())
664
673
  return;
665
674
  const now = Date.now();
666
675
  if (this.deadline !== null && now >= this.deadline)
@@ -679,7 +688,8 @@ export class TrackerCore {
679
688
  this.droppedReportSuppressed = true;
680
689
  reportUnavailable = true;
681
690
  }
682
- if (batch.clientDropped && this.pendingDroppedReport === batch.clientDropped && result.type === 'too_large' && batch.spans.length + batch.infra.length === 0) {
691
+ // Com marcas de coleta parcial no lote, o 413 pode ser delas: elas saem e o relatório tenta sozinho.
692
+ if (batch.clientDropped && this.pendingDroppedReport === batch.clientDropped && result.type === 'too_large' && batch.spans.length + batch.infra.length === 0 && !batch.partialCollection) {
683
693
  this.droppedReportSuppressed = true;
684
694
  reportUnavailable = true;
685
695
  }
@@ -695,7 +705,9 @@ export class TrackerCore {
695
705
  takeBatch(clientDropped) {
696
706
  // Tamanho exato do corpo de `buildIngestBody`: `{"traces":[` + grupos + `]` + `,"infra":[…]` + `}`.
697
707
  const droppedJson = clientDropped ? safeStringify(clientDropped) : '';
698
- let bytes = 13 + (droppedJson ? byteLength(`,"clientDropped":${droppedJson}`) : 0);
708
+ // Marcas de coleta parcial ocupam no máximo um quarto do teto (sempre ao menos uma).
709
+ const partialCollection = this.partialCollection.take(Math.floor(this.batchBytes / 4));
710
+ let bytes = 13 + (droppedJson ? byteLength(`,"clientDropped":${droppedJson}`) : 0) + (partialCollection ? byteLength(`,"partialCollection":${partialCollection.json}`) : 0);
699
711
  let items = 0;
700
712
  const fits = (size) => items === 0 || (bytes + size <= this.batchBytes && items < this.batchItems);
701
713
  const infraJsons = [];
@@ -726,8 +738,8 @@ export class TrackerCore {
726
738
  const spans = this.queue.splice(0, count);
727
739
  for (const span of spans)
728
740
  this.queueBytes -= span.bytes;
729
- const body = buildIngestBody(spans, infraJsons.length > 0 ? `[${infraJsons.join(',')}]` : '', clientDropped);
730
- return { spans, infra, clientDropped, body, bytes: byteLength(body) };
741
+ const body = buildIngestBody(spans, infraJsons.length > 0 ? `[${infraJsons.join(',')}]` : '', clientDropped, partialCollection?.json ?? '');
742
+ return { spans, infra, clientDropped, partialCollection, body, bytes: byteLength(body) };
731
743
  }
732
744
  pendingClientDroppedReport() {
733
745
  if (this.droppedReportSuppressed)
@@ -763,6 +775,7 @@ export class TrackerCore {
763
775
  if (this.options.debug) {
764
776
  console.info(`[fg-tracker] enviados ${batch.spans.length} spans${batch.infra.length > 0 ? ` e ${batch.infra.length} agregados de infra` : ''} (${batch.bytes} bytes).`);
765
777
  }
778
+ this.settlePartialCollection(batch, result.body);
766
779
  const retryable = this.readIngestResponse(batch, result.body);
767
780
  if (batch.clientDropped && this.pendingDroppedReport === batch.clientDropped) {
768
781
  this.sender.noteFailure({ type: 'retry', status: result.status, retryAfterMs: null, reason: 'client dropped report unacknowledged' });
@@ -778,6 +791,9 @@ export class TrackerCore {
778
791
  return true;
779
792
  case 'too_large': {
780
793
  const items = batch.spans.length + batch.infra.length;
794
+ // Só marcas e ainda grande demais: saem, para o laço andar (com itens, voltam no próximo lote).
795
+ if (items === 0 && batch.partialCollection)
796
+ this.partialCollection.discard(batch.partialCollection.sent);
781
797
  if (items <= 1) {
782
798
  this.dropped += batch.spans.length;
783
799
  this.warnOnce(`ingest respondeu 413 para um item de ${batch.bytes} bytes (descartado).`);
@@ -798,6 +814,8 @@ export class TrackerCore {
798
814
  // 4xx = configuração (chave inválida, payload malformado): reenviar daria o mesmo erro.
799
815
  this.sender.noteSuccess();
800
816
  this.dropped += batch.spans.length;
817
+ if (batch.partialCollection)
818
+ this.partialCollection.discard(batch.partialCollection.sent);
801
819
  this.warnOnce(`ingest respondeu ${result.status} (lote descartado)`);
802
820
  return true;
803
821
  case 'retry': {
@@ -808,6 +826,19 @@ export class TrackerCore {
808
826
  }
809
827
  }
810
828
  }
829
+ /**
830
+ * 2xx com marcas de coleta parcial: `partialCollection` na resposta confirma todas (aceitas ou
831
+ * ignoradas, nenhuma volta). Sem ele a API não conhece o campo: as marcas saem, sem novo envio.
832
+ */
833
+ settlePartialCollection(batch, body) {
834
+ if (!batch.partialCollection)
835
+ return;
836
+ const ack = body && typeof body === 'object' ? body.partialCollection : undefined;
837
+ if (ack && typeof ack === 'object')
838
+ this.partialCollection.acknowledge(batch.partialCollection.sent);
839
+ else
840
+ this.partialCollection.discard(batch.partialCollection.sent);
841
+ }
811
842
  /** Devolve o lote para a frente da fila (os limites de memória continuam valendo). */
812
843
  requeue(batch) {
813
844
  this.queue.unshift(...batch.spans);
@@ -961,7 +992,7 @@ export class TrackerCore {
961
992
  await this.flushing;
962
993
  if (this.infra?.hasData())
963
994
  this.infraDue = true;
964
- if (this.queue.length === 0 && !this.hasInfraToSend() && !this.hasClientDroppedToSend())
995
+ if (this.queue.length === 0 && !this.hasInfraToSend() && !this.hasClientDroppedToSend() && !this.partialCollection.hasPending())
965
996
  return;
966
997
  this.flushing = this.drain(true).finally(() => {
967
998
  this.flushing = null;
@@ -1078,7 +1109,7 @@ function fitError(error) {
1078
1109
  }
1079
1110
  }
1080
1111
  /** `{"traces":[{"traceId":…,"spans":[…]}…]}` a partir do JSON já pronto de cada span. */
1081
- function buildIngestBody(spans, infraJson, clientDropped) {
1112
+ function buildIngestBody(spans, infraJson, clientDropped, partialCollectionJson) {
1082
1113
  const groups = new Map();
1083
1114
  for (const span of spans) {
1084
1115
  const list = groups.get(span.traceId);
@@ -1089,7 +1120,7 @@ function buildIngestBody(spans, infraJson, clientDropped) {
1089
1120
  }
1090
1121
  const traces = [...groups].map(([traceId, jsons]) => `{"traceId":${JSON.stringify(traceId)},"spans":[${jsons.join(',')}]}`).join(',');
1091
1122
  const payload = infraJson ? `{"traces":[${traces}],"infra":${infraJson}` : `{"traces":[${traces}]`;
1092
- return `${payload}${clientDropped ? `,"clientDropped":${safeStringify(clientDropped)}` : ''}}`;
1123
+ return `${payload}${clientDropped ? `,"clientDropped":${safeStringify(clientDropped)}` : ''}${partialCollectionJson ? `,"partialCollection":${partialCollectionJson}` : ''}}`;
1093
1124
  }
1094
1125
  export function userAttributes(user) {
1095
1126
  if (!user)
@@ -1 +1 @@
1
- {"version":3,"file":"tracker.js","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tracker.js","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fg-tracker-sdk",
3
- "version": "0.23.0",
3
+ "version": "0.24.0",
4
4
  "description": "SDK de instrumentação Node para o FG Tracker (Express, Fastify, Koa, NestJS, Next.js, pg, fetch), tracing distribuído, releases, check-ins de jobs, envio de logs (pino, winston, NestJS Logger) e agregados de infraestrutura (AWS SDK v3, pool de conexões, ECS, Lambda)",
5
5
  "license": "UNLICENSED",
6
6
  "homepage": "https://github.com/FORTGROUND/fg-tracker/tree/main/packages/sdk#readme",