private static void FillInLoggingEventWithExtendedProperties(ExtendedLogInfo info, LoggingEvent loggingEvent) { // todo: add caching or fast reflection to improve performances a bit foreach (var pi in info.GetType().GetProperties()) { loggingEvent.Properties[pi.Name] = pi.GetValue(info, null); } }