fix(tracker): 3.4.12: send-interval restart; reset timeout & beaconSize adjustment

This commit is contained in:
ShiKhu 2021-12-06 17:42:16 +01:00
parent f83168ce00
commit da6e60c241
2 changed files with 10 additions and 7 deletions

View file

@ -1,7 +1,7 @@
{
"name": "@openreplay/tracker",
"description": "The OpenReplay tracker main package",
"version": "3.4.9",
"version": "3.4.12",
"keywords": [
"logging",
"replay"

View file

@ -5,9 +5,9 @@ import Writer from "../messages/writer.js";
import type { WorkerMessageData } from "../messages/webworker.js";
const SEND_INTERVAL = 20 * 1000;
const SEND_INTERVAL = 10 * 1000;
let BEACON_SIZE_LIMIT = 1e6 // Limit is set in the backend/services/http
let beaconSize = 4 * 1e5; // Default 400kB
let beaconSize = 2 * 1e5; // Default 400kB
let writer: Writer = new Writer(beaconSize);
@ -26,7 +26,7 @@ function writeBatchMeta(): boolean { // TODO: move to encoder
return new BatchMeta(pageNo, nextIndex, timestamp).encode(writer)
}
let sendIntervalID: ReturnType<typeof setInterval>;
let sendIntervalID: ReturnType<typeof setInterval> | null = null;
const sendQueue: Array<Uint8Array> = [];
let busy = false;
@ -96,7 +96,10 @@ function send(): void {
function reset() {
ingestPoint = ""
token = ""
clearInterval(sendIntervalID);
if (sendIntervalID !== null) {
clearInterval(sendIntervalID);
sendIntervalID = null;
}
writer.reset();
}
@ -129,7 +132,7 @@ self.onmessage = ({ data }: MessageEvent<WorkerMessageData>) => {
if (writer.isEmpty()) {
writeBatchMeta();
}
if (sendIntervalID == null) {
if (sendIntervalID === null) {
sendIntervalID = setInterval(send, SEND_INTERVAL);
}
return;
@ -142,7 +145,7 @@ self.onmessage = ({ data }: MessageEvent<WorkerMessageData>) => {
timestamp = (<any>message).timestamp;
} else if (message instanceof SetPageVisibility) {
if ( (<any>message).hidden) {
restartTimeoutID = setTimeout(() => self.postMessage("restart"), 5*60*1000);
restartTimeoutID = setTimeout(() => self.postMessage("restart"), 30*60*1000);
} else {
clearTimeout(restartTimeoutID);
}