Voici ma propre expérience avec tamiser dans le env. 24 heures depuis que j'ai posé cette question. Il fournit de nombreuses données visuelles, bien que non-interactives, par ex. "lecture seulement". Il fournit un moyen de "copier" les données qu'il affiche dans ses différentes grilles "Show", dans mon cas "Show In Use". Cependant, la quantité de données obtenue lors du collage dans un document texte va bien au-delà de ce qui s'affiche réellement dans la grille et est carrément copieuse. Laissez-moi élaborer mon cas d'utilisation. Sieve n'indiquait pas de «fuites» en soi mais plutôt des «orphelins». Pour voir ce que cela signifie dans le langage SIEVE voir this page. Une fois que j'ai utilisé le navigateur sIEve pour accéder à la page qui m'intéressait, j'ai utilisé la fonctionnalité «Afficher en cours d'utilisation» pour afficher une grille avec environ 10 ou 12 champs. Les données de la colonne sont triables en cliquant sur l'en-tête, donc j'ai pu trier sur la colonne "Orphelin" puis sélectionner la rangée de lignes qui indiquait "Oui" puis cliquer sur "Copier"
Cependant j'ai posé cette question en premier lieu parce que Copy ne semblait pas fonctionner, ou s'est écrasé sIEve. J'ai continué à rencontrer ces problèmes environ un tiers ou la moitié du temps mais je suis resté persistant et j'ai finalement réussi à coller des données brutes dans un document.
Comme je l'ai mentionné la quantité de données brutes est copieuse. Donc, la seule chose que j'ai développée jusqu'à présent est une expression régulière pour compter les "records". Chaque enregistrement commence par une ligne telle que:
http://localhost:8086/yms_web/yardmanager.do (1 reference)
Il sera toujours indiquer le nombre de références, c'est donc l'expression régulière, j'ai développé pour trouver ces lignes dans les données brutes; Je constate avec Cygwin pour cela:
$ egrep '\([0-9]+ reference[s]?\)' before_trailer_adjust_clicks.txt
http://localhost:8086/yms_web/yardmanager.do (5 references)
http://localhost:8086/yms_web/yardmanager.do (1 reference)
http://localhost:8086/yms_web/yardmanager.do (2 references)
Comme vous pouvez le voir le regex gère correctement la possibilité de références plurielles; Je ne l'ai pas vu gérer des cas où il y a des références à deux chiffres, mais je crois que c'est le cas.Dans tous les cas, en redirigeant la sortie ci-dessus vers wc -l, vous trouvez rapidement combien de lignes vous avez, donc dans mon cas, en capturant les données de la grille où "Orphan" égalait "Oui", et en faisant ce sur les requêtes HTTP successives, j'ai pu voir comment le nombre d'orphelins augmente, par exemple:
$ egrep '\([0-9]+ reference[s]?\)' before_trailer_adjust_clicks.txt | wc -l
3
$ egrep '\([0-9]+ reference[s]?\)' after_trailer_adjust_click.txt | wc -l
4
$ egrep '\([0-9]+ reference[s]?\)' after_create_rftask_click.txt | wc -l
4
$ egrep '\([0-9]+ reference[s]?\)' after_create_rftask_close.txt | wc -l
66
$ egrep '\([0-9]+ reference[s]?\)' after_trailer_adjust_close.txt | wc -l
163
Bien sûr, la commande egrep pourrait être appelé dans une boucle script bash sur les fichiers qui sont d'intérêt mais je Je ne suis pas encore allé si loin. En passant, c'est pour une application ExtJS et j'ai demandé sur leur forum et obtenu de bons conseils et a été en mesure de réduire considérablement le nombre d'orphelins!
Espérons que cela aidera les autres sur SO et je ne sais pas pourquoi cette question a été votée à être fermé
Merci. Je peux très bien «répondre» à ma propre question avec quelques commandes cygwin/ligne de commande que j'ai développées aujourd'hui pour analyser également les données de sIEve. –
Cool! Oui, s'il vous plaît les poster. –
J'ai essayé cet outil de détection de fuite de mémoire Javascript maintenant et j'ai conclu que sIEve est l'outil le plus utile pour moi au moins. Le premier contrairement à sIEve ne signifie pas A) les orphelins qui semblent définitivement être la cause de l'augmentation de la mémoire car une fois que je les ai atténués, la mémoire n'a pas augmenté comme auparavant, ou B) fournir la capacité de télécharger et de manipuler les données , au moins aussi loin que je peux voir –