C#跟踪日志

跟踪由四部份组成。

1.跟踪源 TraceSource;

2.开关。用于打开或关闭跟踪事件。有三种开关。BooleanSwitch,TraceSwitch,SourceSwitch.boolean开关比较简单。后两种可以增加Level参数。可把开关的Level值定义为error,info,warring,verbose,off等。

3.侦听器

4.筛选器。

最简单的跟踪是只使用跟踪源和开关两个。代码如下:

测试代码:

 class Program
    {
        static void Main(string[] args)
        {
            TraceSource tranceSource = new TraceSource("sample");
            SourceSwitch SourceSwitch = new SourceSwitch("sample") { Level = SourceLevels.Error};
            tranceSource.Switch = SourceSwitch;
            tranceSource.TraceEvent(TraceEventType.Information, 0, DateTime.Now.ToString()+ "开始执行!");
            people p = new people();
            try
            {
                 p.run();
            }
            catch (Exception ex)
            {
                tranceSource.TraceEvent(TraceEventType.Error, 0, ex.Message);
            }
        }
    }
    class people
    {
        public void run()
        {
            throw new Exception("is gone!");
        }
    }

跟踪输出:

sample Error: 0 : is gone!

通常把程序写入配置文件是最好的。因为可以不用重新编译程序就可以改变配置。从而可以实时查看程序运行中出现的问题。但由于.net程序是安装在很深的文档中。因此建议在程序界面对config进行更改。

在config配置文件如下:

 <system.diagnostics>
    <sources>
      <source name="sample" switchName="sampleSwitch" switchType="System.Diagnostics.SourceSwitch">
      </source>
    </sources>
    <switches>
      <add name="sampleSwitch" value="Information"/>
    </switches>
  </system.diagnostics>

由上可知,定义简单的跟踪事件。需要两个类。一个跟踪源(traceSource),一个开关(SourceSwich)就可以了。但是它们的输出是在output中。当程序正式部署时,最好是要写一个文本文件中。因此需要使用侦听器。

将下面的配置加入到<source>元素中就可以输出到指定文件。

<listeners>
          <add name="listence" type="System.Diagnostics.TextWriterTraceListener"  traceOutputOptions="DateTime" initializeData="D:/d.txt"/>
        </listeners>

注意在输出文本的方法中,写入information等要调用flush方法或者tranceSource.Close();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Unity脚本C#是一种用于编写Unity游戏引擎中逻辑和功能的脚本语言。它是一种C家族语言的变体,结合了C++的面向对象特性和C的简洁性。下面我将详细介绍Unity脚本C#的几个重要特性。 首先,Unity脚本C#具有强大的面向对象编程能力。它支持类、对象、继承、多态等常见的面向对象概念,使得开发者可以更加方便地组织和管理代码。通过定义类和对象,我们可以创建游戏场景中的各种物体,为它们添加属性和方法,并实现各种交互和逻辑。 其次,Unity脚本C#提供了丰富的Unity API,使得开发者可以轻松地访问和操作Unity引擎中的功能和资源。我们可以通过API获取游戏对象的位置、旋转和缩放等信息,控制游戏对象的移动、旋转和动画等操作,还可以加载和管理游戏资源,如场景、贴图和音频等。 此外,Unity脚本C#还支持事件驱动编程。开发者可以使用事件来响应用户的输入或者游戏中的某些特定条件。例如,我们可以为按钮添加点击事件,当用户点击按钮时,触发指定的方法,实现相应的逻辑。这种事件驱动的编程方式使得游戏的交互性更好,用户可以通过交互体验到更加直观和响应的操作。 最后,Unity脚本C#还提供了强大的调试功能。我们可以在代码中添加断点,通过调试器来跟踪代码的执行流程,并查看变量的值。这对于排查和解决代码中的bug非常有帮助。此外,Unity脚本C#还支持日志输出,我们可以在代码中使用日志函数打印信息,便于在开发过程中调试和分析代码。 综上所述,Unity脚本C#是开发Unity游戏的一种强大的脚本语言,具有丰富的面向对象编程能力、强大的Unity API支持、事件驱动编程和调试功能,为开发者提供了便捷和高效的开发体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值