Vítejte na blog.vyvojar.cz Přihlásit | Registrovat | Pomoc
Titulní Blogy Fotky Soubory

Petr Lazecký

Chorobovýplody

RAID aneb hrátky s čerty (9) - Z jakého důvodu byl ASP.NET proces recyklován?

Při procházení pošty z minulého týdne jsem narazil na zajímavý dotaz (či spíše povzdech :-)) na EMWACu. “Jak mohu zjistit příčinu, která vedla k recyklaci ASP.NET procesu?”. Povedlo se mi na to přijít poměrně snadno. Vlastně ani nevím přesně jak :-). Napadlo mě podívat se do metadat IIS, zda tam nenajdu nějakou nápovědu. V IIS 6.0 jsou metadata uložena v obyčejném textovém souboru v adresáři %SYSTEMROOT%\system32\inetsrv. Otevřel jsem soubor MBSchema.xml a hledal výraz „recycle“.

A ejhle! Našel jsem jakýsi attribut LogEventOnRecycle! Mrnu do dokumentace a zdá se, že je to ono! Super, pak už stačilo pouze toto:

cscript adsutil.vbs Set w3svc/AppPools/DefaultAppPool/LogEventOnRecycle 255

Tento příkaz aktivuje záznam do „Event Logu“ při následujících událostech:

AppPoolRecycleTime

A worker process with process id "XXXX" serving application pool "DefaultAppPool" has requested a recycle because the worker process reached its allowable processing limit

AppPoolRecycleRequests

A worker process with process id "XXXX" serving application pool "DefaultAppPool" has requested a recycle because it reached its request limit

AppPoolRecycleSchedule

A worker process with process id "XXXX" serving application pool "DefaultAppPool" has requested a recycle because it reached its scheduled recycle time

AppPoolRecycleMemory

A worker process with process id "XXXX" serving application pool "DefaultAppPool" has requested a recycle because it reached its virtual memory limit

AppPoolRecycleIsapiUnhealthy

A worker process with process id "XXXX" serving application pool "DefaultAppPool" has requested a recycle because an ISAPI it loaded reported unhealthy and requested a recycle

AppPoolRecycleOnDemand

An administrator has requested a recycle of all worker processes in application pool „DefaultAppPool“

AppPoolRecycleConfigChange

The worker processes serving application pool "DefaultAppPool" are being recycled due to 1 or more configuration changes in the application pool properties which necessitate a restart of the processes

AppPoolRecyclePrivateMemory

A worker process with process id "XXXX" serving application pool "DefaultAppPool" has requested a recycle because it reached its private bytes memory limit

Zveřejněno Sunday, January 29, 2006 12:58 PM by lazo

Upozornění na nové komentáře

Pokud chčeš dostávat upozornění emailem na změny u toho příspěvku,tak se zaregistruj zde.zde

Odebírat komentáře k tomuto příspěvku pomocí RSS

Komentář

 

krumpo napsal:

Zdravim,

Na najdenie tychto atributov metabase netreba ani liezt do metabase, dost to trci z google ;-)

http://support.microsoft.com/?id=332088

Jediny problem je, ze podla mojich skusenosti to nefunguje (skusalo to viacero ludi na viacerych w2k3 serveroch) a druhy problem je, ze to neriesi moj (vyssie spominany) problem, kedze nejde o recyklovanie worker procesu app poolu (w3wp.exe), ale ASP.NET app domain.

Ale dakujem za snahu ...

Martin
January 30, 2006 7:58 AM
 

MaD napsal:

Pekny clanek o tom jak detekovat duvody restartu app domain je na webu Scotta Guthrieho... http://weblogs.asp.net/scottgu/archive/2005/12/14/433194.aspx
January 30, 2006 12:05 PM
 

krumpo napsal:

Dakujem za tip, ale bohuzial prilis daleko ma neposunul -> http://list.emwac.cz/wa.exe?A2=ind0601&L=vsnet-l&P=74407 ...
January 31, 2006 12:34 PM
 

krumpo napsal:

March 2, 2006 7:26 AM

Vytvoření nového komentáře

(povinný) 
(nepovinný)
(povinný) 
Opiš čísla, která vidíš na obrázku:
Odeslat
Powered by Community Server (Personal Edition), by Telligent Systems