/// <summary> /// Adds the <see cref="LoggingSettingsNode"/> and adds the default nodes. /// </summary> /// <param name="node">The <see cref="LoggingSettingsNode"/> added.</param> protected override void ExecuteCore(ConfigurationNode node) { base.ExecuteCore(node); LoggingSettingsNode loggingNode = ChildNode as LoggingSettingsNode; if (loggingNode == null) { return; } TextFormatterNode defaultTextFormatterNode = new TextFormatterNode(); FormattedEventLogTraceListenerNode defaultTraceListenerNode = new FormattedEventLogTraceListenerNode(); CategoryTraceSourceNode generalCategoryNode = new CategoryTraceSourceNode(new TraceSourceData(Resources.TraceSourceCategoryGeneral, SourceLevels.All)); loggingNode.AddNode(new LogFilterCollectionNode()); CategoryTraceSourceCollectionNode categoryTraceSourcesNode = new CategoryTraceSourceCollectionNode(); TraceListenerReferenceNode generalCategoryListenerRef = new TraceListenerReferenceNode(new TraceListenerReferenceData(defaultTraceListenerNode.Name)); categoryTraceSourcesNode.AddNode(generalCategoryNode); generalCategoryNode.AddNode(generalCategoryListenerRef); generalCategoryListenerRef.ReferencedTraceListener = defaultTraceListenerNode; loggingNode.AddNode(categoryTraceSourcesNode); SpecialTraceSourcesNode specialTraceSourcesNode = new SpecialTraceSourcesNode(); ErrorsTraceSourceNode errorsTraceSourcesNode = new ErrorsTraceSourceNode(new TraceSourceData()); TraceListenerReferenceNode errorsTraceListenerReferenceNode = new TraceListenerReferenceNode(); errorsTraceSourcesNode.AddNode(errorsTraceListenerReferenceNode); errorsTraceListenerReferenceNode.ReferencedTraceListener = defaultTraceListenerNode; specialTraceSourcesNode.AddNode(errorsTraceSourcesNode); specialTraceSourcesNode.AddNode(new NotProcessedTraceSourceNode(new TraceSourceData())); specialTraceSourcesNode.AddNode(new AllTraceSourceNode(new TraceSourceData())); loggingNode.AddNode(specialTraceSourcesNode); TraceListenerCollectionNode traceListenerCollectionNode = new TraceListenerCollectionNode(); traceListenerCollectionNode.AddNode(defaultTraceListenerNode); defaultTraceListenerNode.Formatter = defaultTextFormatterNode; loggingNode.AddNode(traceListenerCollectionNode); FormatterCollectionNode formattersNode = new FormatterCollectionNode(); formattersNode.AddNode(defaultTextFormatterNode); loggingNode.AddNode(formattersNode); loggingNode.DefaultCategory = generalCategoryNode; loggingNode.LogWarningWhenNoCategoriesMatch = true; loggingNode.TracingEnabled = true; ServiceHelper.GetUIService(serviceProvider).RefreshPropertyGrid(); }
public SpecialTraceSourcesNode Build() { specialTraceSourcesNode = new SpecialTraceSourcesNode(); if (specialTraceSourcesData.AllEventsTraceSource != null) { AllTraceSourceNode allNode = new AllTraceSourceNode(specialTraceSourcesData.AllEventsTraceSource); AddTraceListeners(allNode, specialTraceSourcesData.AllEventsTraceSource); specialTraceSourcesNode.AddNode(allNode); } if (specialTraceSourcesData.ErrorsTraceSource != null) { ErrorsTraceSourceNode errorsNode = new ErrorsTraceSourceNode(specialTraceSourcesData.ErrorsTraceSource); AddTraceListeners(errorsNode, specialTraceSourcesData.ErrorsTraceSource); specialTraceSourcesNode.AddNode(errorsNode); } if (specialTraceSourcesData.NotProcessedTraceSource != null) { NotProcessedTraceSourceNode notProcessedNode = new NotProcessedTraceSourceNode(specialTraceSourcesData.NotProcessedTraceSource); AddTraceListeners(notProcessedNode, specialTraceSourcesData.NotProcessedTraceSource); specialTraceSourcesNode.AddNode(notProcessedNode); } return(specialTraceSourcesNode); }