memory inspector наблюдает за использованием/поведением памяти веб-приложения. В настоящее время он работает через Puppeteer, API для управления Chrome или Chromium без интерфейса через протокол DevTools.
yarn add --dev memory-inspector
const memoryInspector = require ( 'memory-inspector' )
const config = {
url : 'http://localhost:3000' ,
maxMemoryLimit : 20 * 1048576 , // should not pass of 20MB
maxMemoryPercentThreshold : 90 , // should not pass 90% of total memory
}
memoryInspector ( config ) . then ( ( info ) => console . log ( info ) )
/*
{ "exceededMemoryMaximum": 1528951424,
"exceededMemoryUsagePercent": true,
"jsHeapSizeLimit": "2.19 GB",
"memoryUsagePercent": 21900000,
"totalJSHeapSize": "1.53 GB",
"usedJSHeapSize": "1.53 GB" }
*/
const memoryInspector = require ( 'memory-inspector' )
const config = {
url : 'http://127.0.0.1:8080' ,
delay : 300 ,
formatted : false , // default is true
maxMemoryLimit : 20 * 1048576 , // should not pass of 20MB
maxMemoryPercentThreshold : 90 , // should not pass 90% of total memory
waitUntil : [ 'domContentLoaded' ] , // wait for browser events
}
memoryInspector ( config ) . then ( ( info ) => console . log ( info ) )
/*
{ usedJSHeapSize: 10000000,
totalJSHeapSize: 11900000,
jsHeapSizeLimit: 2190000000,
memoryUsagePercent: 438000000,
exceededMemoryMaximum: -10971520,
exceededMemoryUsagePercent: false }
*/
<string>
URL-адрес для перехода на страницу. URL-адрес должен включать схему, например https://
<boolean>
Определите, будут ли байты форматироваться по размерам, например: 2190000000
до 2.19 GB
. По умолчанию это true
.
<number>
Замедляет отчет на указанное количество миллисекунд.
<number>
Устанавливает максимальный предел памяти, который может использоваться приложением. Это будет отражено в отчете exceededMemoryMaximum
.
<number>
Устанавливает максимальное пороговое значение процента памяти для приложения. Это будет отражено в отчете exceededMemoryUsagePercent
.
<string|array<string>>
Когда считать, что навигация прошла успешно. Учитывая массив строк событий, навигация считается успешной после того, как были запущены все события.
Спасибо Кукольнику.
Сделано Рафаэлем Аморимом, лицензия MIT