Skip to content

Commit e1b1508

Browse files
committed
Support per-signal OTLP exporter endpoints in @hyperdx/browser
Add optional `tracesUrl` and `logsUrl` config options to allow independent configuration of trace and log export endpoints. When omitted, the existing `${url}/v1/traces` and `${url}/v1/logs` fallback behavior is preserved. Refs: hyperdxio/hyperdx#2076, hyperdxio/hyperdx#2098 Made-with: Cursor
1 parent b940c5c commit e1b1508

2 files changed

Lines changed: 13 additions & 2 deletions

File tree

.changeset/fifty-states-beam.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@hyperdx/browser': patch
3+
---
4+
5+
Support per-signal OTLP exporter endpoints in hyperdx/browser

packages/browser/src/index.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ type BrowserSDKConfig = {
3333
service: string;
3434
tracePropagationTargets?: (string | RegExp)[];
3535
url?: string;
36+
tracesUrl?: string;
37+
logsUrl?: string;
3638
otelResourceAttributes?: ResourceAttributes;
3739
};
3840

@@ -66,6 +68,8 @@ class Browser {
6668
service,
6769
tracePropagationTargets,
6870
url,
71+
tracesUrl,
72+
logsUrl,
6973
otelResourceAttributes,
7074
}: BrowserSDKConfig) {
7175
if (!hasWindow()) {
@@ -85,12 +89,14 @@ class Browser {
8589
}
8690

8791
const urlBase = url ?? URL_BASE;
92+
const resolvedTracesUrl = tracesUrl ?? `${urlBase}/v1/traces`;
93+
const resolvedLogsUrl = logsUrl ?? `${urlBase}/v1/logs`;
8894

8995
this._advancedNetworkCapture = advancedNetworkCapture;
9096

9197
Rum.init({
9298
debug,
93-
url: `${urlBase}/v1/traces`,
99+
url: resolvedTracesUrl,
94100
allowInsecureUrl: true,
95101
apiKey,
96102
applicationName: service,
@@ -130,7 +136,7 @@ class Browser {
130136
maskTextSelector: maskAllText ? '*' : undefined,
131137
recordCanvas,
132138
sampling,
133-
url: `${urlBase}/v1/logs`,
139+
url: resolvedLogsUrl,
134140
});
135141
}
136142

0 commit comments

Comments
 (0)