Поделиться через


Use Procdump to troubleshoot white screen issue of Bonobo git server

Bonobo git server is a handy open source project to setup self hosted git server easily in IIS for Windows platform, while in some machines, the home page could be white screen without displaying correctly. This is a common situation when we are working on 3rd or open source project because not familiar with the source code and troubleshoot could take long time.

As this is a C# website hosted in w3wp, in most condition, rich .net exception could help us narrow down the issue. Here let's use procdump from https://technet.microsoft.com/en-sg/sysinternals/dd996900.aspx. Procdump is a great tool to capture crash dump for post analysis; furthermore, it can generat exception log as well. Now, let's open cmd and type "procdump -e 1 f "" w3wp.exe", this will monitor w3wp.exe and write out all the exception experienced.

prcdump1

 

Refresh the git server page in web browser, you will see multiple exceptions shown below, and indicated Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll (managing the generation and compilation of .net source code) is missing.

 

prcdump2

 

The easiest way to get Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll is create one empty C# project such as MVC and compile it, you will be able to find it in the bin folder. Copy it to c:\inetpub\wwwroot\git\bin and try again. Wow, looks like we got progress because the exception is changed to something different. Apparently, csc.exe is our C# compiler and it is missing.

 

prcdump3

 

Find the roslyn folder in the empty C# project bin folder and copy to c:\inetpub\wwwroot\git\bin. Now, Bonobo git server will work.

git