Zum Debugging möchte ich den Sysinternals Process Explorer von Mark Russinovich nicht mehr missen. Deshalb habe ich diesen überall, auch in meinen Windows Azure Rollen, im Einsatz.
In diesem Blog Post möchte ich deshalb zeigen, wie man den den Process Explorer, als Ersatz für den Task Manager der Windows Azure Rollen, einbindet.
Startup Task Skript für den Process Explorer
Um den Process Explorer in einer in einer Azure Rolle verwenden zu können, habe ich als Erstes folgendes Skript erstellt …
REM Kopiere den Process Explorer an einen bekannten Ort auf der System Festplatte copy "%~dp0procexp.exe" "%systemroot%system32." >> log.txt 2>> err.txt REM Process Explorer als Ersatz für den Task Manager verwenden reg add "HKLMSOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Optionstaskmgr.exe" /v Debugger /t REG_SZ /d %systemroot%System32procexp.exe /f
Das Skript kopiert den Process Explorer aus dem Startup Verzeichnis auf die Festplatte des Betriebssystems, da der Festplattenbuchstabe des Startup Verzeichnisses variieren kann.
Anschließend wird noch ein Registry Eintrag gesetzt, der den Task Manager durch den Process Explorer ersetzt.
Zu guter Letzt muss noch das Skript in der ServiceDefinition.csdef als Startup Task registriert werden.
<ServiceDefinition name="MyService" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition"> <WebRole name="WebRole1"> <Startup> <Task commandLine="StartupInstallProcExp.cmd" executionContext="elevated" taskType="simple" /> </Startup> <Sites> <Site name="Web"> <Bindings> <Binding name="Endpoint1" endpointName="Endpoint1" /> </Bindings> </Site> </Sites> </WebRole> </ServiceDefinition>
Anschließend kann in den so veränderten Rolleninstanzen der Process Explorer eingesetzt werden
Weitere Informationen unter: