address comment
This commit is contained in:
parent
e6ee1d0419
commit
d03c7d4547
|
|
@ -170,10 +170,16 @@ export class Tracing extends SdkObject implements InstrumentationListener, Snaps
|
||||||
this._state.recording = true;
|
this._state.recording = true;
|
||||||
this._state.callIds.clear();
|
this._state.callIds.clear();
|
||||||
|
|
||||||
|
// - Browser context network trace is shared across chunks as it contains resources
|
||||||
|
// used to serve page snapshots, so make a copy with the new name.
|
||||||
|
// - APIRequestContext network traces are chunk-specific, always start from scratch.
|
||||||
|
const preserveNetworkResources = this._context instanceof BrowserContext;
|
||||||
if (options.name && options.name !== this._state.traceName)
|
if (options.name && options.name !== this._state.traceName)
|
||||||
this._changeTraceName(this._state, options.name);
|
this._changeTraceName(this._state, options.name, preserveNetworkResources);
|
||||||
else
|
else
|
||||||
this._allocateNewTraceFile(this._state);
|
this._allocateNewTraceFile(this._state);
|
||||||
|
if (!preserveNetworkResources)
|
||||||
|
this._fs.writeFile(this._state.networkFile, '');
|
||||||
|
|
||||||
this._fs.mkdir(path.dirname(this._state.traceFile));
|
this._fs.mkdir(path.dirname(this._state.traceFile));
|
||||||
const event: trace.TraceEvent = {
|
const event: trace.TraceEvent = {
|
||||||
|
|
@ -267,19 +273,14 @@ export class Tracing extends SdkObject implements InstrumentationListener, Snaps
|
||||||
state.traceFile = path.join(state.tracesDir, `${state.traceName}${suffix}.trace`);
|
state.traceFile = path.join(state.tracesDir, `${state.traceName}${suffix}.trace`);
|
||||||
}
|
}
|
||||||
|
|
||||||
private _changeTraceName(state: RecordingState, name: string) {
|
private _changeTraceName(state: RecordingState, name: string, preserveNetworkResources: boolean) {
|
||||||
state.traceName = name;
|
state.traceName = name;
|
||||||
state.chunkOrdinal = 0; // Reset ordinal for the new name.
|
state.chunkOrdinal = 0; // Reset ordinal for the new name.
|
||||||
this._allocateNewTraceFile(state);
|
this._allocateNewTraceFile(state);
|
||||||
|
|
||||||
// - Browser context network trace is shared across chunks as it contains resources
|
|
||||||
// used to serve page snapshots, so make a copy with the new name.
|
|
||||||
// - APIRequestContext network traces are chunk-specific, always start from scratch.
|
|
||||||
const newNetworkFile = path.join(state.tracesDir, name + '.network');
|
const newNetworkFile = path.join(state.tracesDir, name + '.network');
|
||||||
if (this._context instanceof BrowserContext)
|
if (preserveNetworkResources)
|
||||||
this._fs.copyFile(state.networkFile, newNetworkFile);
|
this._fs.copyFile(state.networkFile, newNetworkFile);
|
||||||
else
|
|
||||||
this._fs.writeFile(state.networkFile, '');
|
|
||||||
state.networkFile = newNetworkFile;
|
state.networkFile = newNetworkFile;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue