Skip to content

Commit e1d6823

Browse files
Enable samplingRate argument for server side telemetry events
1 parent 0f0f72d commit e1d6823

File tree

3 files changed

+6
-3
lines changed

3 files changed

+6
-3
lines changed

.changeset/fine-weeks-give.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
'@clerk/nextjs': patch
33
---
44

5-
Fix keyless drift logic to support client components and ensure only apps on development are included.
5+
Fix keyless drift logic to support client components and ensure only apps on development are included. Change createClerkClient to accept an argument for samplingRate in telemetry options and update the ClerkOptions type.

packages/backend/src/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ export type ClerkOptions = Omit<CreateBackendApiOptions, 'skipApiVersionInUrl' |
1717
CreateAuthenticateRequestOptions['options'],
1818
'audience' | 'jwtKey' | 'proxyUrl' | 'secretKey' | 'publishableKey' | 'domain' | 'isSatellite'
1919
>
20-
> & { sdkMetadata?: SDKMetadata; telemetry?: Pick<TelemetryCollectorOptions, 'disabled' | 'debug'> };
20+
> & { sdkMetadata?: SDKMetadata; telemetry?: Pick<TelemetryCollectorOptions, 'disabled' | 'debug' | 'samplingRate'> };
2121

2222
// The current exported type resolves the following issue in packages importing createClerkClient
2323
// TS4023: Exported variable 'clerkClient' has or is using name 'AuthErrorReason' from external module "/packages/backend/dist/index" but cannot be named.
@@ -31,11 +31,11 @@ export function createClerkClient(options: ClerkOptions): ClerkClient {
3131
const apiClient = createBackendApiClient(opts);
3232
const requestState = createAuthenticateRequest({ options: opts, apiClient });
3333
const telemetry = new TelemetryCollector({
34-
...options.telemetry,
3534
publishableKey: opts.publishableKey,
3635
secretKey: opts.secretKey,
3736
samplingRate: 0.1,
3837
...(opts.sdkMetadata ? { sdk: opts.sdkMetadata.name, sdkVersion: opts.sdkMetadata.version } : {}),
38+
...(opts.telemetry || {}),
3939
});
4040

4141
return {

packages/nextjs/src/server/keyless-telemetry.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,9 @@ export async function detectKeylessEnvDrift(): Promise<void> {
167167
const clerkClient = createClerkClientWithOptions({
168168
publishableKey: keylessFile.publishableKey,
169169
secretKey: keylessFile.secretKey,
170+
telemetry: {
171+
samplingRate: 1,
172+
},
170173
});
171174

172175
const shouldFireEvent = await tryMarkTelemetryEventAsFired();

0 commit comments

Comments
 (0)