In dit artikel wordt een overzicht gegeven van de te verzamelen outputs in het geval van een mogelijk geheugenlek.
Geheugenlekkage is meestal een zeer traag proces en in dergelijke gevallen is uitgebreide logboekanalyse vereist.
We hebben mogelijk meerdere voorbeelden van de outputs nodig voor onze analyse en om te kunnen zien welk deel van het geheugen is aangetast.
Geheugencontrole-tool
Een geheugencontrole-tool maakt deel uit van de releases S4810, MXL en Z9000 9.1 (0.0P6+). Met deze tool wordt het gedetailleerde gebruik van datatoewijzing vastgelegd wat van pas komt bij het oplossen van mogelijke geheugenlekken. De geheugencontrole-tool kan worden geopend via een console of Telnet-sessie.
1: Geheugencontrole-tool inschakelen
De geheugencontrole-tool inschakelen.
Gebruik, bijv.:
remote-exec cp f10mc -i 0x87
Voorbeeld:
Opdracht:
Z9000#remote-exec cp f10mc -i 0x87
Systeemrespons:
f10mc -i 0x87
f10mc: geïnitialiseerd voor malloc, pool, pool_cache, met filter voor F10-toewijzingen
SStk-0 #
2: Data verzamelen
2a: Periodieke algemene geheugendata verzamelen
Verzamel de data periodiek (4 tot 6 uur), dagelijks gedurende enkele dagen. Voer de volgende opdracht uit om de output te verzamelen. Met de volgende opdracht worden de algemene geheugendetails van het systeem weergegeven. Elke keer dat de output wordt verzameld, wordt het cyclusnummer in de output met één verhoogd.
Gebruik, bijv.:
remote-exec cp f10mc -r 0
Voorbeeld:
Opdracht:
Z9000#remote-exec cp f10mc –r 0
Systeemrespons:
f10mc -r 0
{
----------------------
#### Deze cyclus: 46176 bytes gehouden via 56 toewijzingen ####
M: 1888(16); +2329280(18371), -2329280(18371)
P: 0(0); +0(0), -0(0)
PC: 44288(40); +3053056(11226), -3053056(11226)
#### Sinds MCInit: 708902 bytes gehouden via 2112 toewijzingen ####
M: 52006(1338); +110122134(928732), -110070128(927394)
P: 0(0); +0(0), -0(0)
PC: 656896(774); +148369408(548411), -147712512(547637)
}
SStk-0 #
De volgende output kan worden aangevraagd naast de output van de geheugencontrole-tool.
Gerelateerde opdrachten:
remote-exec cp top -b -o res all
remote-exec cp netstat –m
remote-exec cp vmstat –s
show process memory
show process memory management
show memory
show clock
2b: Gedetailleerde geheugendata verzamelen
Nadat de verzamelingsperiode voor de opdracht “remote-exec cp f10mc –r 0” is voltooid, wordt de output van de volgende opdracht aangevraagd. De volgende opdracht geeft nauwkeurige geheugendetails van het systeem.
Gebruik, bijv.:
remote-exec cp f10mc -r 1
Voorbeeld:
Opdracht:
Z9000#remote-exec cp f10mc -r 1
Systeemrespons:
f10mc -r 1
{
PC:mbpl:0xC71F5200:256:3
PC:mclpl:0xD7C24800:2048:3
PC:mbpl:0xC71F3500:256:3
{output truncated}
PC:mbpl:0xCAFC7F00:256:2
PC:mclpl:0xD7C4D000:2048:2
----------------------
#### Deze cyclus: 286144 bytes gehouden via 266 toewijzingen ####
M: 3520(16); +21362(417), -20514(415)
P: 0(0); +0(0), -0(0)
PC: 282624(250); +1129472(2200), -1126912(2197)
#### Sinds MCInit: 599392 bytes gehouden via 542 toewijzingen ####
M: 5216(20); +67838(1335), -62622(1315)
P: 0(0); +0(0), -0(0)
PC: 594176(522); +3513088(6660), -2918912(6138)
}
SStk-0 #
Engineering evalueert de verzamelde data en verstrekt informatie over hoe u meer informatie kunt verzamelen die u helpt bij het identificeren van de bron van het geheugenlek. De output wordt aangevraagd voor verdachte geheugentoewijzingen:
Gebruik, bijv.:
remote-exec cp f10mc –c 0x
Voorbeeld:
Opdracht:
Z9000# remote-exec cp f10mc –c 0xCE0DDD00
Systeemrespons:
f10mc -c 0xCE0DDD00
PC:mbpl:0xCE0DDD00:256:2> 0xC0100EAD 0xC033DA54 0xC0137ADE 0xC0136DD0 0xC0142682 0xC013FA17 0xC0148C38 0xC037C808 0xC037BE3F 0xC09B805A
call trace:
0xC0100EAD in Xsoftintr
0xC033DA54 in softint_dispatch
0xC0137ADE in ipintr
0xC0136DD0 in ip_input
0xC0142682 in tcp_input
0xC013FA17 in syn_cache_get
0xC0148C38 in tcp_template
0xC037C808 in m_gethdr
0xC037BE3F in m_get
0xC09B805A in f10MC_pool_cache_get_paddr
SStk-0 #
3: Geheugencontrole uitschakelen
De geheugencontrole-tool uitschakelen nadat de datacontrole is voltooid..
Gebruik, bijv.:
remote-exec cp f10mc -i 0x0
Voorbeeld:
Opdracht:
Z9000#remote-exec cp f10mc -i 0x0
Systeemrespons:
f10mc -i 0x0
f10mc: gedeïnitialiseerd
SStk-0 #