Writing to ULS From Within C#
Event Receivers and Feature Receivers are notoriously hard to debug. Here’s a little gem to ease your debugging migraines:
Here’s the function I use, just to simplify subsequent calls:
private void LogOut(TraceSeverity Level, string OutStr) { SPDiagnosticsService.Local.WriteTrace(0, new SPDiagnosticsCategory("SuperRouter Updated", Level, EventSeverity.Error), TraceSeverity.Unexpected, OutStr, null); } |
Here’s what the call looks like. Note you can set the severity level. I sprinkle these throughout the code and dump data etc throughout
LogOut(TraceSeverity.High, "Item Updated Event Trapped!"); |
Here’s the reference to use in the code:
using Microsoft.SharePoint.Utilities; using Microsoft.SharePoint.Administration; |
If you’d like a class to reuse, here it is:
public class MyLogger { public static void LogOut(TraceSeverity Level, string OutStr) { SPDiagnosticsService.Local.WriteTrace(0, new SPDiagnosticsCategory("JoelER", Level, EventSeverity.Error), TraceSeverity.Unexpected, OutStr, null); } } |
Want to talk?
Drop us a line. We are here to answer your questions 24*7.