@posthog/core 1.48.9 → 1.48.10
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/posthog-core-stateless.d.ts +10 -16
- package/dist/posthog-core-stateless.d.ts.map +1 -1
- package/dist/posthog-core-stateless.js +13 -46
- package/dist/posthog-core-stateless.mjs +13 -46
- package/package.json +2 -2
- package/src/logs/index.spec.ts +77 -0
- package/src/logs/index.ts +1 -1
- package/src/posthog-core-stateless.ts +34 -64
|
@@ -41,13 +41,12 @@ export declare function isPostHogFetchContentTooLargeError(err: unknown): err is
|
|
|
41
41
|
status: 413;
|
|
42
42
|
};
|
|
43
43
|
/**
|
|
44
|
-
* Outcome of a logs batch send. Keeps HTTP error classification inside core
|
|
45
|
-
* (single source of truth — same policy events already use in `_flush()`) so
|
|
44
|
+
* Outcome of a logs batch send. Keeps HTTP error classification inside core so
|
|
46
45
|
* PostHogLogs doesn't need to know about specific error types.
|
|
47
46
|
*
|
|
48
47
|
* - ok → records are accepted; drop them from the queue
|
|
49
48
|
* - too-large → 413; caller should halve batch size and retry same records
|
|
50
|
-
* - retry-later → network error; caller keeps records and retries next cycle
|
|
49
|
+
* - retry-later → retryable network or HTTP error; caller keeps records and retries next cycle
|
|
51
50
|
* - fatal → anything else (auth, malformed, etc.); caller drops the
|
|
52
51
|
* batch and surfaces the error
|
|
53
52
|
*/
|
|
@@ -329,22 +328,17 @@ export declare abstract class PostHogCoreStateless {
|
|
|
329
328
|
private _flush;
|
|
330
329
|
private _flushRoute;
|
|
331
330
|
/**
|
|
332
|
-
*
|
|
333
|
-
* outcome instead of throwing so
|
|
334
|
-
* core's error class hierarchy.
|
|
335
|
-
* source of truth, same policy the events `_flush()` uses for its own
|
|
336
|
-
* 413 / network / fatal handling).
|
|
331
|
+
* Shared implementation behind the OTLP senders, which differ only in path.
|
|
332
|
+
* Returns a tagged outcome instead of throwing so the queue owners don't
|
|
333
|
+
* have to know the core's error class hierarchy.
|
|
337
334
|
*
|
|
338
|
-
*
|
|
339
|
-
*
|
|
335
|
+
* Exhausted 408/429/5xx stay `retry-later`, unlike the events `_flush()`
|
|
336
|
+
* which drops anything that isn't a network error: every OTLP queue is
|
|
337
|
+
* bounded and retried with backoff, so holding a batch through an outage can
|
|
338
|
+
* neither grow without limit nor spin.
|
|
340
339
|
*/
|
|
340
|
+
private _sendOtlpBatch;
|
|
341
341
|
_sendLogsBatch(payload: OtlpLogsPayload): Promise<SendLogsBatchOutcome>;
|
|
342
|
-
/**
|
|
343
|
-
* Sends a pre-built OTLP metrics payload to `/i/v1/metrics`. Same tagged
|
|
344
|
-
* outcome contract and error classification as `_sendLogsBatch` — this is
|
|
345
|
-
* the `MetricsHost._sendMetricsBatch` implementation, so `PostHogMetrics`
|
|
346
|
-
* can use any core-based SDK as its host.
|
|
347
|
-
*/
|
|
348
342
|
_sendMetricsBatch(payload: OtlpMetricsPayload): Promise<SendMetricsBatchOutcome>;
|
|
349
343
|
private fetchWithRetry;
|
|
350
344
|
_shutdown(shutdownTimeoutMs?: number): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"posthog-core-stateless.d.ts","sourceRoot":"","sources":["../src/posthog-core-stateless.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"posthog-core-stateless.d.ts","sourceRoot":"","sources":["../src/posthog-core-stateless.ts"],"names":[],"mappings":"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"}
|
|
@@ -845,13 +845,13 @@ class PostHogCoreStateless {
|
|
|
845
845
|
sentFromRoute += batchMessages.length;
|
|
846
846
|
}
|
|
847
847
|
}
|
|
848
|
-
async
|
|
848
|
+
async _sendOtlpBatch({ path, payload }) {
|
|
849
849
|
if (this.disabled) return {
|
|
850
850
|
kind: 'fatal',
|
|
851
851
|
error: new Error('The client is disabled')
|
|
852
852
|
};
|
|
853
853
|
const serialized = JSON.stringify(payload);
|
|
854
|
-
const url = `${this.host}/i/v1
|
|
854
|
+
const url = `${this.host}/i/v1/${path}?token=${encodeURIComponent(this.apiKey)}`;
|
|
855
855
|
const gzippedPayload = this.disableCompression ? null : await this.compressPayload(serialized);
|
|
856
856
|
const fetchOptions = {
|
|
857
857
|
method: 'POST',
|
|
@@ -880,7 +880,7 @@ class PostHogCoreStateless {
|
|
|
880
880
|
if (isPostHogFetchContentTooLargeError(err)) return {
|
|
881
881
|
kind: 'too-large'
|
|
882
882
|
};
|
|
883
|
-
if (err
|
|
883
|
+
if (isPostHogFetchRetryableError(err)) return {
|
|
884
884
|
kind: 'retry-later',
|
|
885
885
|
error: err
|
|
886
886
|
};
|
|
@@ -890,50 +890,17 @@ class PostHogCoreStateless {
|
|
|
890
890
|
};
|
|
891
891
|
}
|
|
892
892
|
}
|
|
893
|
+
async _sendLogsBatch(payload) {
|
|
894
|
+
return this._sendOtlpBatch({
|
|
895
|
+
path: 'logs',
|
|
896
|
+
payload
|
|
897
|
+
});
|
|
898
|
+
}
|
|
893
899
|
async _sendMetricsBatch(payload) {
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
};
|
|
898
|
-
const serialized = JSON.stringify(payload);
|
|
899
|
-
const url = `${this.host}/i/v1/metrics?token=${encodeURIComponent(this.apiKey)}`;
|
|
900
|
-
const gzippedPayload = this.disableCompression ? null : await this.compressPayload(serialized);
|
|
901
|
-
const fetchOptions = {
|
|
902
|
-
method: 'POST',
|
|
903
|
-
headers: {
|
|
904
|
-
...this.getCustomHeaders(),
|
|
905
|
-
'Content-Type': 'application/json',
|
|
906
|
-
...null !== gzippedPayload && {
|
|
907
|
-
'Content-Encoding': 'gzip'
|
|
908
|
-
}
|
|
909
|
-
},
|
|
910
|
-
body: gzippedPayload || serialized
|
|
911
|
-
};
|
|
912
|
-
try {
|
|
913
|
-
await this.fetchWithRetry(url, fetchOptions, {
|
|
914
|
-
type: 'successful-write'
|
|
915
|
-
}, {
|
|
916
|
-
retryCheck: (err)=>{
|
|
917
|
-
if (isPostHogFetchContentTooLargeError(err)) return false;
|
|
918
|
-
return isPostHogFetchRetryableError(err);
|
|
919
|
-
}
|
|
920
|
-
});
|
|
921
|
-
return {
|
|
922
|
-
kind: 'ok'
|
|
923
|
-
};
|
|
924
|
-
} catch (err) {
|
|
925
|
-
if (isPostHogFetchContentTooLargeError(err)) return {
|
|
926
|
-
kind: 'too-large'
|
|
927
|
-
};
|
|
928
|
-
if (isPostHogFetchRetryableError(err)) return {
|
|
929
|
-
kind: 'retry-later',
|
|
930
|
-
error: err
|
|
931
|
-
};
|
|
932
|
-
return {
|
|
933
|
-
kind: 'fatal',
|
|
934
|
-
error: err
|
|
935
|
-
};
|
|
936
|
-
}
|
|
900
|
+
return this._sendOtlpBatch({
|
|
901
|
+
path: 'metrics',
|
|
902
|
+
payload
|
|
903
|
+
});
|
|
937
904
|
}
|
|
938
905
|
async fetchWithRetry(url, options, responseHandling, retryOptions, requestTimeout) {
|
|
939
906
|
const body = options.body ? options.body : '';
|
|
@@ -811,13 +811,13 @@ class PostHogCoreStateless {
|
|
|
811
811
|
sentFromRoute += batchMessages.length;
|
|
812
812
|
}
|
|
813
813
|
}
|
|
814
|
-
async
|
|
814
|
+
async _sendOtlpBatch({ path, payload }) {
|
|
815
815
|
if (this.disabled) return {
|
|
816
816
|
kind: 'fatal',
|
|
817
817
|
error: new Error('The client is disabled')
|
|
818
818
|
};
|
|
819
819
|
const serialized = JSON.stringify(payload);
|
|
820
|
-
const url = `${this.host}/i/v1
|
|
820
|
+
const url = `${this.host}/i/v1/${path}?token=${encodeURIComponent(this.apiKey)}`;
|
|
821
821
|
const gzippedPayload = this.disableCompression ? null : await this.compressPayload(serialized);
|
|
822
822
|
const fetchOptions = {
|
|
823
823
|
method: 'POST',
|
|
@@ -846,7 +846,7 @@ class PostHogCoreStateless {
|
|
|
846
846
|
if (isPostHogFetchContentTooLargeError(err)) return {
|
|
847
847
|
kind: 'too-large'
|
|
848
848
|
};
|
|
849
|
-
if (err
|
|
849
|
+
if (isPostHogFetchRetryableError(err)) return {
|
|
850
850
|
kind: 'retry-later',
|
|
851
851
|
error: err
|
|
852
852
|
};
|
|
@@ -856,50 +856,17 @@ class PostHogCoreStateless {
|
|
|
856
856
|
};
|
|
857
857
|
}
|
|
858
858
|
}
|
|
859
|
+
async _sendLogsBatch(payload) {
|
|
860
|
+
return this._sendOtlpBatch({
|
|
861
|
+
path: 'logs',
|
|
862
|
+
payload
|
|
863
|
+
});
|
|
864
|
+
}
|
|
859
865
|
async _sendMetricsBatch(payload) {
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
};
|
|
864
|
-
const serialized = JSON.stringify(payload);
|
|
865
|
-
const url = `${this.host}/i/v1/metrics?token=${encodeURIComponent(this.apiKey)}`;
|
|
866
|
-
const gzippedPayload = this.disableCompression ? null : await this.compressPayload(serialized);
|
|
867
|
-
const fetchOptions = {
|
|
868
|
-
method: 'POST',
|
|
869
|
-
headers: {
|
|
870
|
-
...this.getCustomHeaders(),
|
|
871
|
-
'Content-Type': 'application/json',
|
|
872
|
-
...null !== gzippedPayload && {
|
|
873
|
-
'Content-Encoding': 'gzip'
|
|
874
|
-
}
|
|
875
|
-
},
|
|
876
|
-
body: gzippedPayload || serialized
|
|
877
|
-
};
|
|
878
|
-
try {
|
|
879
|
-
await this.fetchWithRetry(url, fetchOptions, {
|
|
880
|
-
type: 'successful-write'
|
|
881
|
-
}, {
|
|
882
|
-
retryCheck: (err)=>{
|
|
883
|
-
if (isPostHogFetchContentTooLargeError(err)) return false;
|
|
884
|
-
return isPostHogFetchRetryableError(err);
|
|
885
|
-
}
|
|
886
|
-
});
|
|
887
|
-
return {
|
|
888
|
-
kind: 'ok'
|
|
889
|
-
};
|
|
890
|
-
} catch (err) {
|
|
891
|
-
if (isPostHogFetchContentTooLargeError(err)) return {
|
|
892
|
-
kind: 'too-large'
|
|
893
|
-
};
|
|
894
|
-
if (isPostHogFetchRetryableError(err)) return {
|
|
895
|
-
kind: 'retry-later',
|
|
896
|
-
error: err
|
|
897
|
-
};
|
|
898
|
-
return {
|
|
899
|
-
kind: 'fatal',
|
|
900
|
-
error: err
|
|
901
|
-
};
|
|
902
|
-
}
|
|
866
|
+
return this._sendOtlpBatch({
|
|
867
|
+
path: 'metrics',
|
|
868
|
+
payload
|
|
869
|
+
});
|
|
903
870
|
}
|
|
904
871
|
async fetchWithRetry(url, options, responseHandling, retryOptions, requestTimeout) {
|
|
905
872
|
const body = options.body ? options.body : '';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@posthog/core",
|
|
3
|
-
"version": "1.48.
|
|
3
|
+
"version": "1.48.10",
|
|
4
4
|
"bugs": {
|
|
5
5
|
"url": "https://github.com/PostHog/posthog-js/issues"
|
|
6
6
|
},
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
}
|
|
71
71
|
},
|
|
72
72
|
"dependencies": {
|
|
73
|
-
"@posthog/types": "^1.405.
|
|
73
|
+
"@posthog/types": "^1.405.2"
|
|
74
74
|
},
|
|
75
75
|
"devDependencies": {
|
|
76
76
|
"@rslib/core": "0.10.6",
|
package/src/logs/index.spec.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PostHogPersistedProperty } from '../types'
|
|
2
|
+
import { createTestClient, PostHogCoreTestClient } from '../testing'
|
|
2
3
|
import type { Logger } from '../types'
|
|
3
4
|
import { PostHogLogs } from './index'
|
|
4
5
|
import type { BufferedLogEntry, ResolvedPostHogLogsConfig } from './types'
|
|
@@ -80,6 +81,82 @@ const getContextFor = (instance: any) => (): { distinctId?: string; sessionId?:
|
|
|
80
81
|
sessionId: instance.getSessionId() || undefined,
|
|
81
82
|
})
|
|
82
83
|
|
|
84
|
+
// Drives a real core host rather than a stubbed `_sendLogsBatch`, so the sender's
|
|
85
|
+
// error classification and the queue bookkeeping are exercised together.
|
|
86
|
+
describe('PostHogLogs over the core sender', () => {
|
|
87
|
+
const createLogsOverCore = (status: number): { logs: PostHogLogs; client: PostHogCoreTestClient } => {
|
|
88
|
+
const [client, mocks] = createTestClient('TEST_API_KEY', {
|
|
89
|
+
fetchRetryCount: 0,
|
|
90
|
+
preloadFeatureFlags: false,
|
|
91
|
+
})
|
|
92
|
+
mocks.fetch.mockResolvedValue({
|
|
93
|
+
status,
|
|
94
|
+
text: () => Promise.resolve('err'),
|
|
95
|
+
json: () => Promise.resolve({ status: 'err' }),
|
|
96
|
+
})
|
|
97
|
+
const logs = new PostHogLogs(
|
|
98
|
+
client,
|
|
99
|
+
resolveForTest(),
|
|
100
|
+
createMockLogger(),
|
|
101
|
+
() => ({ distinctId: 'user-123' }),
|
|
102
|
+
immediateOnReady
|
|
103
|
+
)
|
|
104
|
+
return { logs, client }
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
const queueOf = (client: PostHogCoreTestClient): BufferedLogEntry[] =>
|
|
108
|
+
client.getPersistedProperty<BufferedLogEntry[]>(PostHogPersistedProperty.LogsQueue) ?? []
|
|
109
|
+
|
|
110
|
+
it.each([408, 429, 500, 503])('keeps records queued when the endpoint answers %i', async (status) => {
|
|
111
|
+
const { logs, client } = createLogsOverCore(status)
|
|
112
|
+
logs.captureLog({ body: 'keep me' })
|
|
113
|
+
|
|
114
|
+
await expect(logs.flush()).rejects.toHaveProperty('name', 'PostHogFetchHttpError')
|
|
115
|
+
|
|
116
|
+
expect(queueOf(client)).toHaveLength(1)
|
|
117
|
+
})
|
|
118
|
+
|
|
119
|
+
it('retains and resends records after transport retries are exhausted', async () => {
|
|
120
|
+
jest.useRealTimers()
|
|
121
|
+
const [client, mocks] = createTestClient('TEST_API_KEY', {
|
|
122
|
+
fetchRetryCount: 2,
|
|
123
|
+
fetchRetryDelay: 1,
|
|
124
|
+
preloadFeatureFlags: false,
|
|
125
|
+
})
|
|
126
|
+
const unavailableResponse = { status: 503, text: async () => 'unavailable', json: async () => ({}) }
|
|
127
|
+
mocks.fetch
|
|
128
|
+
.mockResolvedValueOnce(unavailableResponse)
|
|
129
|
+
.mockResolvedValueOnce(unavailableResponse)
|
|
130
|
+
.mockResolvedValueOnce(unavailableResponse)
|
|
131
|
+
.mockResolvedValueOnce({ status: 200, text: async () => 'ok', json: async () => ({}) })
|
|
132
|
+
const logs = new PostHogLogs(
|
|
133
|
+
client,
|
|
134
|
+
resolveForTest(),
|
|
135
|
+
createMockLogger(),
|
|
136
|
+
() => ({ distinctId: 'user-123' }),
|
|
137
|
+
immediateOnReady
|
|
138
|
+
)
|
|
139
|
+
|
|
140
|
+
logs.captureLog({ body: 'retry me' })
|
|
141
|
+
await expect(logs.flush()).rejects.toHaveProperty('name', 'PostHogFetchHttpError')
|
|
142
|
+
expect(mocks.fetch).toHaveBeenCalledTimes(3)
|
|
143
|
+
expect(queueOf(client)).toHaveLength(1)
|
|
144
|
+
|
|
145
|
+
await expect(logs.flush()).resolves.toBeUndefined()
|
|
146
|
+
expect(mocks.fetch).toHaveBeenCalledTimes(4)
|
|
147
|
+
expect(queueOf(client)).toHaveLength(0)
|
|
148
|
+
})
|
|
149
|
+
|
|
150
|
+
it('drops the batch when the endpoint answers 401', async () => {
|
|
151
|
+
const { logs, client } = createLogsOverCore(401)
|
|
152
|
+
logs.captureLog({ body: 'unauthorized' })
|
|
153
|
+
|
|
154
|
+
await expect(logs.flush()).rejects.toHaveProperty('name', 'PostHogFetchHttpError')
|
|
155
|
+
|
|
156
|
+
expect(queueOf(client)).toHaveLength(0)
|
|
157
|
+
})
|
|
158
|
+
})
|
|
159
|
+
|
|
83
160
|
describe('PostHogLogs', () => {
|
|
84
161
|
let mockInstance: any
|
|
85
162
|
let logger: Logger
|
package/src/logs/index.ts
CHANGED
|
@@ -262,7 +262,7 @@ export class PostHogLogs {
|
|
|
262
262
|
}
|
|
263
263
|
|
|
264
264
|
if (outcome.kind === 'retry-later') {
|
|
265
|
-
//
|
|
265
|
+
// Transient failure: keep records in the queue for the next flush cycle
|
|
266
266
|
// and surface the error so the caller can log/react.
|
|
267
267
|
throw outcome.error
|
|
268
268
|
}
|
|
@@ -222,13 +222,12 @@ function isPostHogEventProperties(value: JsonType | undefined): value is PostHog
|
|
|
222
222
|
}
|
|
223
223
|
|
|
224
224
|
/**
|
|
225
|
-
* Outcome of a logs batch send. Keeps HTTP error classification inside core
|
|
226
|
-
* (single source of truth — same policy events already use in `_flush()`) so
|
|
225
|
+
* Outcome of a logs batch send. Keeps HTTP error classification inside core so
|
|
227
226
|
* PostHogLogs doesn't need to know about specific error types.
|
|
228
227
|
*
|
|
229
228
|
* - ok → records are accepted; drop them from the queue
|
|
230
229
|
* - too-large → 413; caller should halve batch size and retry same records
|
|
231
|
-
* - retry-later → network error; caller keeps records and retries next cycle
|
|
230
|
+
* - retry-later → retryable network or HTTP error; caller keeps records and retries next cycle
|
|
232
231
|
* - fatal → anything else (auth, malformed, etc.); caller drops the
|
|
233
232
|
* batch and surfaces the error
|
|
234
233
|
*/
|
|
@@ -238,6 +237,17 @@ export type SendLogsBatchOutcome =
|
|
|
238
237
|
| { kind: 'retry-later'; error: unknown }
|
|
239
238
|
| { kind: 'fatal'; error: unknown }
|
|
240
239
|
|
|
240
|
+
/**
|
|
241
|
+
* Each signal keeps its own exported outcome type because each belongs to a
|
|
242
|
+
* separate host contract. The wrappers return this value directly, so one
|
|
243
|
+
* drifting out of shape fails to compile.
|
|
244
|
+
*/
|
|
245
|
+
type SendOtlpBatchOutcome =
|
|
246
|
+
| { kind: 'ok' }
|
|
247
|
+
| { kind: 'too-large' }
|
|
248
|
+
| { kind: 'retry-later'; error: unknown }
|
|
249
|
+
| { kind: 'fatal'; error: unknown }
|
|
250
|
+
|
|
241
251
|
export enum QuotaLimitedFeature {
|
|
242
252
|
FeatureFlags = 'feature_flags',
|
|
243
253
|
Recordings = 'recordings',
|
|
@@ -1633,22 +1643,28 @@ export abstract class PostHogCoreStateless {
|
|
|
1633
1643
|
}
|
|
1634
1644
|
|
|
1635
1645
|
/**
|
|
1636
|
-
*
|
|
1637
|
-
* outcome instead of throwing so
|
|
1638
|
-
* core's error class hierarchy.
|
|
1639
|
-
* source of truth, same policy the events `_flush()` uses for its own
|
|
1640
|
-
* 413 / network / fatal handling).
|
|
1646
|
+
* Shared implementation behind the OTLP senders, which differ only in path.
|
|
1647
|
+
* Returns a tagged outcome instead of throwing so the queue owners don't
|
|
1648
|
+
* have to know the core's error class hierarchy.
|
|
1641
1649
|
*
|
|
1642
|
-
*
|
|
1643
|
-
*
|
|
1650
|
+
* Exhausted 408/429/5xx stay `retry-later`, unlike the events `_flush()`
|
|
1651
|
+
* which drops anything that isn't a network error: every OTLP queue is
|
|
1652
|
+
* bounded and retried with backoff, so holding a batch through an outage can
|
|
1653
|
+
* neither grow without limit nor spin.
|
|
1644
1654
|
*/
|
|
1645
|
-
async
|
|
1655
|
+
private async _sendOtlpBatch({
|
|
1656
|
+
path,
|
|
1657
|
+
payload,
|
|
1658
|
+
}: {
|
|
1659
|
+
path: 'logs' | 'metrics'
|
|
1660
|
+
payload: OtlpLogsPayload | OtlpMetricsPayload
|
|
1661
|
+
}): Promise<SendOtlpBatchOutcome> {
|
|
1646
1662
|
if (this.disabled) {
|
|
1647
1663
|
return { kind: 'fatal', error: new Error('The client is disabled') }
|
|
1648
1664
|
}
|
|
1649
1665
|
|
|
1650
1666
|
const serialized = JSON.stringify(payload)
|
|
1651
|
-
const url = `${this.host}/i/v1
|
|
1667
|
+
const url = `${this.host}/i/v1/${path}?token=${encodeURIComponent(this.apiKey)}`
|
|
1652
1668
|
|
|
1653
1669
|
const gzippedPayload = !this.disableCompression ? await this.compressPayload(serialized) : null
|
|
1654
1670
|
const fetchOptions: PostHogFetchOptions = {
|
|
@@ -1680,65 +1696,19 @@ export abstract class PostHogCoreStateless {
|
|
|
1680
1696
|
if (isPostHogFetchContentTooLargeError(err)) {
|
|
1681
1697
|
return { kind: 'too-large' }
|
|
1682
1698
|
}
|
|
1683
|
-
if (err
|
|
1699
|
+
if (isPostHogFetchRetryableError(err)) {
|
|
1684
1700
|
return { kind: 'retry-later', error: err }
|
|
1685
1701
|
}
|
|
1686
1702
|
return { kind: 'fatal', error: err }
|
|
1687
1703
|
}
|
|
1688
1704
|
}
|
|
1689
1705
|
|
|
1690
|
-
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
* the `MetricsHost._sendMetricsBatch` implementation, so `PostHogMetrics`
|
|
1694
|
-
* can use any core-based SDK as its host.
|
|
1695
|
-
*/
|
|
1696
|
-
async _sendMetricsBatch(payload: OtlpMetricsPayload): Promise<SendMetricsBatchOutcome> {
|
|
1697
|
-
if (this.disabled) {
|
|
1698
|
-
return { kind: 'fatal', error: new Error('The client is disabled') }
|
|
1699
|
-
}
|
|
1700
|
-
|
|
1701
|
-
const serialized = JSON.stringify(payload)
|
|
1702
|
-
const url = `${this.host}/i/v1/metrics?token=${encodeURIComponent(this.apiKey)}`
|
|
1703
|
-
|
|
1704
|
-
const gzippedPayload = !this.disableCompression ? await this.compressPayload(serialized) : null
|
|
1705
|
-
const fetchOptions: PostHogFetchOptions = {
|
|
1706
|
-
method: 'POST',
|
|
1707
|
-
headers: {
|
|
1708
|
-
...this.getCustomHeaders(),
|
|
1709
|
-
'Content-Type': 'application/json',
|
|
1710
|
-
...(gzippedPayload !== null && { 'Content-Encoding': 'gzip' }),
|
|
1711
|
-
},
|
|
1712
|
-
body: gzippedPayload || serialized,
|
|
1713
|
-
}
|
|
1706
|
+
async _sendLogsBatch(payload: OtlpLogsPayload): Promise<SendLogsBatchOutcome> {
|
|
1707
|
+
return this._sendOtlpBatch({ path: 'logs', payload })
|
|
1708
|
+
}
|
|
1714
1709
|
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
url,
|
|
1718
|
-
fetchOptions,
|
|
1719
|
-
{ type: 'successful-write' },
|
|
1720
|
-
{
|
|
1721
|
-
retryCheck: (err) => {
|
|
1722
|
-
if (isPostHogFetchContentTooLargeError(err)) {
|
|
1723
|
-
return false
|
|
1724
|
-
}
|
|
1725
|
-
return isPostHogFetchRetryableError(err)
|
|
1726
|
-
},
|
|
1727
|
-
}
|
|
1728
|
-
)
|
|
1729
|
-
return { kind: 'ok' }
|
|
1730
|
-
} catch (err) {
|
|
1731
|
-
if (isPostHogFetchContentTooLargeError(err)) {
|
|
1732
|
-
return { kind: 'too-large' }
|
|
1733
|
-
}
|
|
1734
|
-
// Exhausted retries on a retryable failure (network error, 408/429/5xx)
|
|
1735
|
-
// still classify as retry-later so the window rides the next flush; only
|
|
1736
|
-
// non-retryable HTTP errors (and 413 above) drop the batch.
|
|
1737
|
-
if (isPostHogFetchRetryableError(err)) {
|
|
1738
|
-
return { kind: 'retry-later', error: err }
|
|
1739
|
-
}
|
|
1740
|
-
return { kind: 'fatal', error: err }
|
|
1741
|
-
}
|
|
1710
|
+
async _sendMetricsBatch(payload: OtlpMetricsPayload): Promise<SendMetricsBatchOutcome> {
|
|
1711
|
+
return this._sendOtlpBatch({ path: 'metrics', payload })
|
|
1742
1712
|
}
|
|
1743
1713
|
|
|
1744
1714
|
private fetchWithRetry<T>(
|