memory inspector surveille l'utilisation/le comportement de la mémoire d'une application Web. Actuellement, il fonctionne sur Puppeteer, qui est une API permettant de contrôler Chrome ou Chromium sans tête via le protocole 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 vers laquelle accéder à la page. L'URL doit inclure le schéma, par exemple https://
<boolean>
Définissez si les octets seront formatés en tailles, comme : 2190000000
à 2.19 GB
. Par défaut c'est true
.
<number>
Ralentit le rapport du nombre de millisecondes spécifié.
<number>
Définit la limite de mémoire maximale qui peut être utilisée par l'application, cela se reflétera dans le rapport exceededMemoryMaximum
.
<number>
Définit le seuil de pourcentage de mémoire maximum sur l'application, cela se reflétera dans le rapport exceededMemoryUsagePercent
.
<string|array<string>>
Quand considérer que la navigation a réussi. Étant donné un tableau de chaînes d'événements, la navigation est considérée comme réussie une fois que tous les événements ont été déclenchés.
Un merci au Marionnettiste.
Réalisé par Raphael Amorim, sous licence du MIT