/// <summary> /// <para>Initialize a new named instance of the <see cref="CategoryFilterData"/> class.</para> /// </summary> /// <param name="name">The name.</param> /// <param name="categoryFilters">The collection of category names to filter.</param> /// <param name="categoryFilterMode">The mode of filtering.</param> public CategoryFilterData(string name, NamedElementCollection<CategoryFilterEntry> categoryFilters, CategoryFilterMode categoryFilterMode) : base(name, typeof(CategoryFilter)) { CategoryFilters = categoryFilters; CategoryFilterMode = categoryFilterMode; }
/// <summary> /// Test a log entry against the category filters. /// </summary> /// <param name="log">Log entry to test.</param> /// <returns>Returns true if the log entry passes through the category filter.</returns> public bool Filter(LogEntry log) { LoggingSettings settings = loggingConfigurationView.GetLoggingSettings(); bool passFilter = true; CategoryFilterData categoryFilterData = settings.CategoryFilters[log.Category]; string category = null; if (categoryFilterData != null) { category = categoryFilterData.Name; } CategoryFilterMode mode = settings.CategoryFilterMode; // if the category is not in the hashtable and the mode is allow - filter out the message if ((category == null) && (mode == CategoryFilterMode.DenyAllExceptAllowed)) { passFilter = false; } // if the category is in the hashtable and the mode is deny - filter out the message else if ((category != null) && (mode == CategoryFilterMode.AllowAllExceptDenied)) { passFilter = false; } return(passFilter); }
/// <summary> /// <para>Initialize a new named instance of the <see cref="CategoryFilterData"/> class.</para> /// </summary> /// <param name="name">The name.</param> /// <param name="categoryFilters">The collection of category names to filter.</param> /// <param name="categoryFilterMode">The mode of filtering.</param> public CategoryFilterData(string name, NamedElementCollection <CategoryFilterEntry> categoryFilters, CategoryFilterMode categoryFilterMode) : base(name, typeof(CategoryFilter)) { CategoryFilters = categoryFilters; CategoryFilterMode = categoryFilterMode; }
public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) { Debug.Assert(provider != null, "No service provider; we cannot edit the value"); if (provider != null) { IWindowsFormsEditorService edSvc = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService)); Debug.Assert(edSvc != null, "No editor service; we cannot edit the value"); if (edSvc != null) { IWindowsFormsEditorService service = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService)); CategoryFilterEditorUI dialog = new CategoryFilterEditorUI(); CategoryFilterNode currentSettings = (CategoryFilterNode)context.Instance; InitializeDialog(dialog, currentSettings); if (DialogResult.OK == service.ShowDialog(dialog)) { CategoryFilterMode categoryFilterMode = dialog.FilterMode; NamedElementCollection <CategoryFilterEntry> categoryFilters = new NamedElementCollection <CategoryFilterEntry>(); foreach (string category in dialog.SelectedCategoryNames) { CategoryFilterEntry categoryFilter = new CategoryFilterEntry(); categoryFilter.Name = category; categoryFilters.Add(categoryFilter); } return(new CategoryFilterSettings(categoryFilterMode, categoryFilters)); } } } return(value); }
/// <summary> /// /// </summary> /// <param key="msgTime"></param> /// <param key="msglvl"></param> /// <param key="threadid"></param> /// <param key="threadName"></param> /// <param key="msg"></param> private static void WriteLine(DateTime msgTime, CategoryFilterMode msglvl, int threadid, string threadName, string msg) { string message; //DateTime msgtime = DateTime.Now; //if (threadName == null) //{ // string messageId = string.Format("<{0}.{1}>{2}", m_ProcessId, threadid, Enum.Format(typeof(CategoryFilterMode), msglvl, "G")); // message = string.Format("{0}-{1}-{2}-{3}", messageId, msglvl, msgtime.ToString(), msg); //} //else //{ // string messageId = string.Format("<{0}.{1}.{2}>{3}", m_ProcessId, threadid, threadName, Enum.Format(typeof(CategoryFilterMode), msglvl, "G")); // message = string.Format("{0}-{1}-{2}", messageId, msgtime.ToString(), msg); //} string msgtime = DateTime.Now.ToString("yyyy.MM.dd HH:mm:ss.fff"); message = string.Format("{0} | {1} | {2} | {3} | {4}", msgtime, msglvl, GetMemoryLoad(), GetThreadPoolTaskNumber(), msg); //message = string.Format("{0} | {1} | {2} | {3}", msgtime, msglvl, GetThreadPoolTaskNumber(), msg); if (ShowLog != null) { lock (objKey1) { ShowLog(message); } //myListener.WriteLine(message); //myListener.Flush(); } }
/// <summary> /// Initialize a new instance of the <see cref="LoggingSettings"/> using the given values /// </summary> /// <param name="name">The name to use for this instance</param> /// <param name="tracingEnabled">Should tracing be enabled?</param> /// <param name="loggingEnabled">Should logging be enabled?</param> /// <param name="distributionStrategy">The distribution strategy to use.</param> /// <param name="minimumPriority">The minimum value for messages to be processed.</param> /// <param name="categoryFilterMode">The category filter mode to use.</param> public LoggingSettings(string name, bool tracingEnabled, bool loggingEnabled, string distributionStrategy, int minimumPriority, CategoryFilterMode categoryFilterMode) { this.categoryFilters = categoryFilters; this.distributionStrategies = distributionStrategies; this.name = name; this.tracingEnabled = tracingEnabled; this.loggingEnabled = loggingEnabled; this.distributionStrategy = distributionStrategy; this.minimumPriority = minimumPriority; this.categoryFilterMode = categoryFilterMode; categoryFilters = new CategoryFilterDataCollection(); distributionStrategies = new DistributionStrategyDataCollection(); }
public void CategoryFilterDataTest() { string name = "some name"; CategoryFilterMode filterMode = CategoryFilterMode.AllowAllExceptDenied; string filterName = "some filter"; CategoryFilterData data = new CategoryFilterData(); data.Name = name; data.CategoryFilterMode = filterMode; data.CategoryFilters.Add(new CategoryFilterEntry(filterName)); CategoryFilterNode node = new CategoryFilterNode(data); Assert.AreEqual(name, node.Name); Assert.AreEqual(filterMode, node.CategoryFilterExpression.CategoryFilterMode); Assert.AreEqual(1, node.CategoryFilterExpression.CategoryFilters.Count); Assert.AreEqual(filterName, node.CategoryFilterExpression.CategoryFilters.Get(0).Name); }
//寫入檔案 private static void WriteLineToFile(DateTime msgTime, CategoryFilterMode msglvl, int threadid, string threadName, string msg) { try { //換天時執行 if (DateTime.Today > _todayDateTime) { SetLogFile(m_FilePath, m_FileName, m_FileExp, m_ReserveDay); } string message; //DateTime msgtime = DateTime.Now; //if (threadName == null) //{ // string messageId = string.Format("<{0}.{1}>{2}", m_ProcessId, threadid, Enum.Format(typeof(CategoryFilterMode), msglvl, "G")); // message = string.Format("{0}-{1}-{2}-{3}", messageId, msglvl, msgtime.ToString(), msg); //} //else //{ // string messageId = string.Format("<{0}.{1}.{2}>{3}", m_ProcessId, threadid, threadName, Enum.Format(typeof(CategoryFilterMode), msglvl, "G")); // message = string.Format("{0}-{1}-{2}", messageId, msgtime.ToString(), msg); //} string msgtime = DateTime.Now.ToString("yyyy.MM.dd HH:mm:ss.fff"); message = string.Format("{0} | {1} | {2} | {3} | {4}", msgtime, msglvl, GetMemoryLoad(), GetThreadPoolTaskNumber(), msg); //message = string.Format("{0} | {1} | {2} | {3}", msgtime, msglvl, GetThreadPoolTaskNumber(), msg); lock (objKey2) { if (myListener == null) { SetLogFilePath(string.Format(@"{0}\{1}", Application.StartupPath, "DefaultLog.log")); } myListener.WriteLine(message); myListener.Flush(); } } catch (Exception ex) { Log.Exception(ex); } }
public void CategoryFilterNodeTest() { string name = "some name"; CategoryFilterMode filterMode = CategoryFilterMode.AllowAllExceptDenied; string filterName = "some filter"; CategoryFilterSettings filterSettings = new CategoryFilterSettings(filterMode, new NamedElementCollection <CategoryFilterEntry>()); filterSettings.CategoryFilters.Add(new CategoryFilterEntry(filterName)); CategoryFilterNode node = new CategoryFilterNode(); node.Name = name; node.CategoryFilterExpression = filterSettings; CategoryFilterData nodeData = (CategoryFilterData)node.LogFilterData; Assert.AreEqual(name, nodeData.Name); Assert.AreEqual(filterMode, nodeData.CategoryFilterMode); Assert.AreEqual(1, nodeData.CategoryFilters.Count); Assert.AreEqual(filterName, nodeData.CategoryFilters.Get(0).Name); }
/// <summary> /// <para>Initialize a new instance of the <see cref="CategoryFilterData"/> class.</para> /// </summary> /// <param name="categoryFilters">The collection of category names to filter.</param> /// <param name="categoryFilterMode">The mode of filtering.</param> public CategoryFilterData(NamedElementCollection <CategoryFilterEntry> categoryFilters, CategoryFilterMode categoryFilterMode) : this("category", categoryFilters, categoryFilterMode) { }
public CategoryFilter(string name, ICollection <string> categoryFilters, CategoryFilterMode categoryFilterMode) : base(name) { this.categoryFilters = categoryFilters; this.categoryFilterMode = categoryFilterMode; }
/// <summary> /// Creates a new <c>CategoryFilterSettings</c> object with initial settings. /// </summary> /// <param name="categoryFilterMode">The mode in which to filter.</param> /// <param name="categoryFilters">The collection of categories to filter.</param> public CategoryFilterSettings(CategoryFilterMode categoryFilterMode, CategoryFilterDataCollection categoryFilters) { this.categoryFilterMode = categoryFilterMode; this.categoryFilters = categoryFilters; }
/// <summary> /// <para>Initialize a new instance of the <see cref="CategoryFilterData"/> class.</para> /// </summary> /// <param name="categoryFilters">The collection of category names to filter.</param> /// <param name="categoryFilterMode">The mode of filtering.</param> public CategoryFilterData(NamedElementCollection<CategoryFilterEntry> categoryFilters, CategoryFilterMode categoryFilterMode) : this("category", categoryFilters, categoryFilterMode) { }
public CategoryFilterSettings(CategoryFilterMode categoryFilterMode, NamedElementCollection <CategoryFilterEntry> categoryFilters) { this.categoryFilterMode = categoryFilterMode; this.categoryFilters = categoryFilters; }
/// <summary> /// Initializes a new instance with configuration data. /// </summary> /// <param name="name">Name of this category filter.</param> /// <param name="categoryFilters">Categories to be included in the filter.</param> /// <param name="categoryFilterMode"><see cref="CategoryFilterMode"/> used to include or exclude category filters.</param> public CategoryFilter(string name, ICollection<string> categoryFilters, CategoryFilterMode categoryFilterMode) : base(name) { this.categoryFilters = categoryFilters; this.categoryFilterMode = categoryFilterMode; }
/// <summary> /// Creates a new <c>CategoryFilterSettings</c> object with initial section. /// </summary> /// <param name="categoryFilterMode">The mode in which to filter.</param> /// <param name="categoryFilters">The collection of categories to filter.</param> public CategoryFilterSettings(CategoryFilterMode categoryFilterMode, NamedElementCollection<CategoryFilterEntry> categoryFilters) { this.categoryFilterMode = categoryFilterMode; this.categoryFilters = categoryFilters; }