You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
82 lines
3.3 KiB
C#
82 lines
3.3 KiB
C#
using System.Diagnostics;
|
|
|
|
namespace LogStudy.TraceLog.Next
|
|
{
|
|
internal class Program
|
|
{
|
|
static void Main(string[] args)
|
|
{
|
|
Console.WriteLine("跟踪日志学习-进阶项目");
|
|
|
|
DefaultTraceSource();
|
|
DefaultTraceSourceWithLog();
|
|
DefaultTraceSourceWithoutSourceLevels();
|
|
|
|
Console.WriteLine("按回车键,退出程序!");
|
|
Console.ReadLine();
|
|
}
|
|
|
|
static void Test()
|
|
{
|
|
WeakReference s = new WeakReference(null);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 使用默认 SourceLevels 参数的 TraceSource
|
|
/// 因为 SourceLevels 默认为Off,所以使用默认不传SourceLevels参数的构建函数生成的 TraceSource 是不会输出任何跟踪信息的。
|
|
/// </summary>
|
|
static void DefaultTraceSourceWithoutSourceLevels()
|
|
{
|
|
TraceSource defaultTraceSource = new TraceSource("Andy-DefaultTraceSourceWithoutSourceLevels");
|
|
|
|
var preMessaage = defaultTraceSource.Name + ": ";
|
|
|
|
defaultTraceSource.TraceData(TraceEventType.Verbose, 1, $"{preMessaage}================");
|
|
defaultTraceSource.TraceEvent(TraceEventType.Error, 1, $"{preMessaage}---------------");
|
|
defaultTraceSource.TraceInformation($"{preMessaage}++++++++++++++++++++++++++++++++++++++++++++++");
|
|
defaultTraceSource.TraceTransfer(2, $"{preMessaage}************", Guid.NewGuid());
|
|
|
|
//强制输出
|
|
defaultTraceSource.Flush();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 默认 TraceSource
|
|
/// </summary>
|
|
static void DefaultTraceSource()
|
|
{
|
|
TraceSource defaultTraceSource = new TraceSource("Andy-DefaultTraceSource", SourceLevels.All);
|
|
|
|
var preMessaage = defaultTraceSource.Name + ": ";
|
|
|
|
defaultTraceSource.TraceData(TraceEventType.Verbose, 1, $"{preMessaage}================");
|
|
defaultTraceSource.TraceEvent(TraceEventType.Error, 1, $"{preMessaage}---------------");
|
|
defaultTraceSource.TraceInformation($"{preMessaage}++++++++++++++++++++++++++++++++++++++++++++++");
|
|
defaultTraceSource.TraceTransfer(2, $"{preMessaage}************", Guid.NewGuid());
|
|
|
|
//强制输出
|
|
defaultTraceSource.Flush();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 默认跟踪源:内容输出到日志文件
|
|
/// </summary>
|
|
static void DefaultTraceSourceWithLog()
|
|
{
|
|
TraceSource defaultTraceSource = new TraceSource("Andy-DefaultTraceSourceWithLog", SourceLevels.All);
|
|
defaultTraceSource.Listeners.Clear();
|
|
|
|
defaultTraceSource.Listeners.Add(new DefaultTraceListener() { LogFileName = "DefaultTraceListener.log" });
|
|
|
|
var preMessaage = defaultTraceSource.Name+": ";
|
|
|
|
defaultTraceSource.TraceData(TraceEventType.Verbose, 1, $"{ preMessaage }================");
|
|
defaultTraceSource.TraceEvent(TraceEventType.Error, 1, $"{ preMessaage }---------------");
|
|
defaultTraceSource.TraceInformation($"{ preMessaage }++++++++++++++++++++++++++++++++++++++++++++++");
|
|
defaultTraceSource.TraceTransfer(2, $"{ preMessaage }************", Guid.NewGuid());
|
|
|
|
//强制输出
|
|
defaultTraceSource.Flush();
|
|
}
|
|
}
|
|
} |