Thursday, November 6, 2014

New ULS Viewer (August 2014 release)

In August, a new AND IMPROVED version of ULS Viewer was released!
Naturally I was very excited since it is an invaluable troubleshooting tool I use quite frequently. 

My favorite NEW ULS Viewer Feature

You can monitor multiple servers simultaneously. You can add servers from multiple farms as well and have them show up all in one log (workspace)! 



Errors

A few days after successfully using it on a couple of environments, I ran into some errors when trying to use it on a couple other environments.

When running the application I received the following error:


System.TypeInitializationException: The type initializer for 'UlsGump.AboutForm' threw an exception. ---> System.TypeLoadException: Could not load type 'System.Reflection.CustomAttributeExtensions' from assembly 'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.
   at UlsGump.AboutForm..cctor()
   --- End of inner exception stack trace ---
   at UlsGump.MainForm.MainForm_Load(Object sender, EventArgs e)
   at System.Windows.Forms.Form.OnLoad(EventArgs e)
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl()
   at System.Windows.Forms.Control.WmShowWindow(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


I gave opening logs a try even after getting this error but still ran into another error:

The logs being received from 'Uls RealTime' were interrupted due to an error.
The error was: System.MissingMethodException: Method not found: 'Int32 System.Environment.get_CurrentManagedThreadId()'.
   at UlsGump.UlsRealtimePump.<GetPartialList>d__0..ctor(Int32 <>1__state)
   at UlsGump.UlsRealtimePump.ReadUls()

Thankfully, in only a few days the cause was known. 

"The problem lies in that the ULS Viewer (well mscorlib) is looking for the .NET 4 version of mscorlib.  Installing Microsoft .NET Framework Version 4.5 should resolve the issue.
SharePoint 2010 installs Microsoft .NET Framework Version 3.5 SP1 whereas SharePoint 2013 installs Microsoft .NET Framework Version 4.5."


So there we are, Uls version 16.0.x will work if you at least have Microsoft .Net Framework Version 4.5.


Happy digital logging!