Skip to content

Commit

Permalink
[RUM] enable request with batch time by default (#297)
Browse files Browse the repository at this point in the history
* [RUM] enable request with batch time by default

* ♻️ allow endpoint url without query params

* ✅ enable experimental features by default
  • Loading branch information
bcaudan authored Mar 12, 2020
1 parent 6744714 commit f8ff8fb
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 3 deletions.
7 changes: 5 additions & 2 deletions packages/core/src/transport.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,7 @@ export class HttpRequest {
constructor(private endpointUrl: string, private bytesLimit: number, private withBatchTime: boolean = false) {}

send(data: string, size: number) {
const batchTime = new Date().getTime()
const url = this.withBatchTime ? `${this.endpointUrl}&batch_time=${batchTime}` : this.endpointUrl
const url = this.withBatchTime ? addBatchTime(this.endpointUrl) : this.endpointUrl
if (navigator.sendBeacon && size < this.bytesLimit) {
const isQueued = navigator.sendBeacon(url, data)
if (isQueued) {
Expand All @@ -29,6 +28,10 @@ export class HttpRequest {
}
}

function addBatchTime(url: string) {
return `${url}${url.indexOf('?') === -1 ? '?' : '&'}batch_time=${new Date().getTime()}`
}

export class Batch<T> {
private beforeFlushOnUnloadHandlers: Array<() => void> = []
private pushOnlyBuffer: string[] = []
Expand Down
2 changes: 1 addition & 1 deletion packages/rum/src/rum.ts
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,7 @@ function startRumBatch(
globalContextProvider: () => Context
) {
const batch = new Batch<Context>(
new HttpRequest(configuration.rumEndpoint, configuration.batchBytesLimit, configuration.enableExperimentalFeatures),
new HttpRequest(configuration.rumEndpoint, configuration.batchBytesLimit, true),
configuration.maxBatchSize,
configuration.batchBytesLimit,
configuration.maxMessageSize,
Expand Down
2 changes: 2 additions & 0 deletions test/app/app.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ const intakeOrigin = `http://${hostname}:4000`

datadogLogs.init({
clientToken: 'key',
enableExperimentalFeatures: true,
forwardErrorsToLogs: true,
internalMonitoringEndpoint: `${intakeOrigin}/monitoring`,
logsEndpoint: `${intakeOrigin}/logs`,
Expand All @@ -16,6 +17,7 @@ datadogLogs.init({
datadogRum.init({
applicationId: 'rum',
clientToken: 'key',
enableExperimentalFeatures: true,
internalMonitoringEndpoint: `${intakeOrigin}/monitoring`,
logsEndpoint: `${intakeOrigin}/logs`,
rumEndpoint: `${intakeOrigin}/rum`,
Expand Down
2 changes: 2 additions & 0 deletions test/static/async-e2e-page.html
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
window.DD_LOGS &&
window.DD_LOGS.init({
clientToken: 'key',
enableExperimentalFeatures: true,
internalMonitoringEndpoint: `${intakeOrigin}/monitoring`,
logsEndpoint: `${intakeOrigin}/logs`,
rumEndpoint: `${intakeOrigin}/rum`,
Expand All @@ -32,6 +33,7 @@
window.DD_RUM.init({
applicationId: 'rum',
clientToken: 'key',
enableExperimentalFeatures: true,
internalMonitoringEndpoint: `${intakeOrigin}/monitoring`,
logsEndpoint: `${intakeOrigin}/logs`,
rumEndpoint: `${intakeOrigin}/rum`,
Expand Down
2 changes: 2 additions & 0 deletions test/static/bundle-e2e-page.html
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
window.DD_LOGS &&
window.DD_LOGS.init({
clientToken: 'key',
enableExperimentalFeatures: true,
internalMonitoringEndpoint: `${intakeOrigin}/monitoring`,
logsEndpoint: `${intakeOrigin}/logs`,
rumEndpoint: `${intakeOrigin}/rum`,
Expand All @@ -23,6 +24,7 @@
window.DD_RUM.init({
applicationId: 'rum',
clientToken: 'key',
enableExperimentalFeatures: true,
internalMonitoringEndpoint: `${intakeOrigin}/monitoring`,
logsEndpoint: `${intakeOrigin}/logs`,
rumEndpoint: `${intakeOrigin}/rum`,
Expand Down

0 comments on commit f8ff8fb

Please sign in to comment.