Are there any alternative Fusion Log Viewer programs, other than Fuslogvw.exe, or directing the Fusion log output to your own directory and then examining the tons of HTM files by hand?
My two main gripes are:
I'd like an overview that showed which assembly loads succeeded and which failed.
I'm unsure of the resolution of the timestamps on the logging files, so I'm unsure of which entry comes before another entry. For example, my program is apparently trying to load an assembly with both culture=da and culture=da-dk. It should only be trying to load da-dk, and in fact that load is successful. So why is it also (unsuccessfully) trying to load culture=da? It might help if I at least was sure of the order in which it is trying to do these loads, but Fuslogvw.exe displays the two entries randomly, and logging to a private directory isn't much better.
FusionLog folder is not part of SolarWinds and is a folder created by Microsoft. The way this works is Microsoft has its libraries and we use them as a client. Fusion logging is extra logging that we can sometimes use to see underlying issues that our logs might have not caught.
Open Fusion Log Viewer as administrator. Click settings. Check the Enable custom log path checkbox. Enter the location you want logs to get written to, for example, c:\FusionLogs (Important: make sure that you have actually created this folder in the file system.)
ASP.NET Framework has fusion Assembly Binding logging (aka Fusion Logging) which allows you to debug assembly load failures in your . NET applications. Fusion logging comes handy when your application is referencing assemblies or external nuget packages and you are encountering assembly binding failures.
Might be late to the party but I think Fusion++ is a pretty good match for your question.
It takes everything away from you - no more file hunting: Just click "Record" to capture assembly logs. If you are done, click "Stop" again and Fusion++ will parse all the log files for you.
All the Fusion Log Viewer does is flip some registry settings and examine the log files.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion
Add:
DWORD ForceLog set value to 1
DWORD LogFailures set value to 1
DWORD LogResourceBinds set value to 1
String LogPath set value to folder for logs (e.g. C:\FusionLog\)
It might not be possible to determine exactly when each assembly is loaded based on the fusion loader's output. The fusion loader is somewhat of a black box in that respect.
Your best bet might be to step directly into your application with the debugger and watch the Modules window in Visual Studio. If you step carefully through the application, you should be able to see at which point each assembly gets loaded into memory.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With