写在前面:最近一段时间项目比较紧,所以这篇随笔出来的晚一些。今天写的是在日志里面包含名-值对的字典,跟踪活动并记录上下文信息,过滤事件,定制日志消息的格式,自定义Sink,自定义Formatter等。
一.在日志里面包含名-值对的字典:
在日志消息里面,我们可以包含名-值对这样的字典。这时首先需要创建一个Hashtable,通过Key-Value的方式把要记录的内容传入。示例代码如下:
1/**////创建一个日志项
2 LogEntry log = new LogEntry();
3
4 /**////创建名-值对
5 Hashtable logtable = new Hashtable();
6 logtable["key1"] = "value1";
7 logtable["key2"] = "value2";
8 logtable["key3"] = "value3";
9
10 log.Message = this.txt_LogMessage.Text;
11 log.Category = Category.General;
12 log.Priority = Priority.Normal;
13
14 /**////写入日志
15 Logger.Write(log,logtable);
输出后的文本:在这里我们用了Text Formatter
二.跟踪活动并记录上下文信息:
跟踪应用系统的活动是一项常见的功能,我们需要把活动的起始时间和结束时间以及活动的其他的信息记录下来。日志和监测应用程序块支持通过活动ID来跟踪一项活动,活动ID可以在代码中指定,也可以通过程序块来自动生成,程序块自动记录活动的起始时间和结束时间。活动跟踪由Tracer类来提供。示例代码如下:
1using(new Tracer("UI Events"))
2 {
3 Logger.Write("Troubleshooting message");
4 }
输出后的文本:同样我们用了Text Formatter