Guard against no pages in the HAR (#4430)
This commit is contained in:
parent
5abff0c5ae
commit
65e3751a9f
|
|
@ -80,40 +80,45 @@ export class DomainsAggregator {
|
||||||
if (this.groups[mainDomain] === undefined) {
|
if (this.groups[mainDomain] === undefined) {
|
||||||
this.groups[mainDomain] = {};
|
this.groups[mainDomain] = {};
|
||||||
}
|
}
|
||||||
const firstPageId = har.log.pages[0].id;
|
|
||||||
|
|
||||||
for (const entry of har.log.entries) {
|
if (har.log.pages.length > 0) {
|
||||||
if (entry.pageref !== firstPageId) {
|
const firstPageId = har.log.pages[0].id;
|
||||||
// Only pick the first request out of multiple runs.
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
const domainName = parseDomainName(entry.request.url),
|
for (const entry of har.log.entries) {
|
||||||
domain = this.domains[domainName] || getDomain(domainName),
|
if (entry.pageref !== firstPageId) {
|
||||||
groupDomain =
|
// Only pick the first request out of multiple runs.
|
||||||
this.groups[mainDomain][domainName] || getDomain(domainName),
|
continue;
|
||||||
totalTime = entry.time;
|
|
||||||
|
|
||||||
domain.requestCount++;
|
|
||||||
groupDomain.requestCount++;
|
|
||||||
|
|
||||||
if (isValidTiming(totalTime)) {
|
|
||||||
domain.totalTime.push(totalTime);
|
|
||||||
groupDomain.totalTime.push(totalTime);
|
|
||||||
} else {
|
|
||||||
log.debug('Missing time from har entry for url: ' + entry.request.url);
|
|
||||||
}
|
|
||||||
|
|
||||||
for (const name of timingNames) {
|
|
||||||
const timing = entry.timings[name];
|
|
||||||
|
|
||||||
if (isValidTiming(timing)) {
|
|
||||||
domain[name].push(timing);
|
|
||||||
groupDomain[name].push(timing);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const domainName = parseDomainName(entry.request.url),
|
||||||
|
domain = this.domains[domainName] || getDomain(domainName),
|
||||||
|
groupDomain =
|
||||||
|
this.groups[mainDomain][domainName] || getDomain(domainName),
|
||||||
|
totalTime = entry.time;
|
||||||
|
|
||||||
|
domain.requestCount++;
|
||||||
|
groupDomain.requestCount++;
|
||||||
|
|
||||||
|
if (isValidTiming(totalTime)) {
|
||||||
|
domain.totalTime.push(totalTime);
|
||||||
|
groupDomain.totalTime.push(totalTime);
|
||||||
|
} else {
|
||||||
|
log.debug(
|
||||||
|
'Missing time from har entry for url: ' + entry.request.url
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (const name of timingNames) {
|
||||||
|
const timing = entry.timings[name];
|
||||||
|
|
||||||
|
if (isValidTiming(timing)) {
|
||||||
|
domain[name].push(timing);
|
||||||
|
groupDomain[name].push(timing);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.domains[domainName] = domain;
|
||||||
|
this.groups[mainDomain][domainName] = groupDomain;
|
||||||
}
|
}
|
||||||
this.domains[domainName] = domain;
|
|
||||||
this.groups[mainDomain][domainName] = groupDomain;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
summarize() {
|
summarize() {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue