NLog使用方法

摘要:
targetname=“console”xsi;loggername=“*”minlevel=“debug”writeTo=“console”>&书信电报;loggername=“*”minlevel=“debug”writeTo=“file”>使用System.ComponentModel;}}三、 WebForm;配置>

一、软件网站:http://www.nlog-project.org/
下载:http://sourceforge.net/project/showfiles.php?group_id=116456
说明:如果是.Net 2.0使用, 请下载nlog-1.0-net-2.0.zip
      里面的bin目录下有多个,c# 使用nlog.dll
文件:nlog.dll 
大小:248K
版本:1.0.0.505

二、 WinForm下使用

添加nlog.dll的引用,然后在nlog.dll的文件夹下创建nlog.dll.nlog
内容如下:

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >

<targets>
    <target name="console" xsi:type="ColoredConsole" 
           layout="${date:format=HH\:mm\:ss}|${level}|${stacktrace}|${message}"/>
    <target name="file" xsi:type="File" fileName="${basedir}/log.txt" 
            layout="[${date:format=yyyy-MM-dd HH\:mm\:ss}][${level}] ${message} ${exception}"/>
</targets>
<rules>
    <logger name="*" minlevel="debug" writeTo="console"></logger>
    <logger name="*" minlevel="debug" writeTo="file"></logger>
</rules>
</nlog>

在你要写日志的类中如下使用:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace nlogDemo
{
    public partial class Form1 : Form
    {
        NLog.Logger log = NLog.LogManager.GetCurrentClassLogger();
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            log.Info("hi");
        }
    }
}

三、WebForm,Asp.net下的使用方法

同样添加nlog.dll,不过这次的配置文件放到web.config中
如下:

<?xml version="1.0"?>
<configuration>
<configSections>
      <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog"/>
</configSections>

<appSettings/>
    <connectionStrings/>
    <system.web>
        <compilation debug="false">
        </compilation>
        <authentication mode="Windows"/>
    </system.web>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <targets>
      <target name="file" xsi:type="File" fileName="${basedir}/App_Data/log.txt"
            layout="[${date:format=yyyy-MM-dd HH\:mm\:ss}][${level}] ${message} ${exception}" />
    </targets>
    <rules>
      <logger name="*" minlevel="Debug" writeTo="file" />
    </rules>
</nlog>
</configuration>
注意:我把日志文件放到了App_Data下面了。这里的话不能下载的。

使用方法如下,default.aspx.cs

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DevExpress.XtraCharts;

public partial class _Default : System.Web.UI.Page 
{
    NLog.Logger log = NLog.LogManager.GetCurrentClassLogger();
    protected void Page_Load(object sender, EventArgs e)
    {
        log.Info("hi");
    }   
}


更加详细的使用可以参考:

NLog Doc http://www.nlog-project.org/
NLog文章系列 http://www.cnblogs.com/dflying/archive/2006/12/15/593158.html


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/greenerycn/archive/2008/10/25/3142806.aspx

免责声明:文章转载自《NLog使用方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇在.net中实现压缩多个文件为.zip文件 【转】web前端学习笔记(CSS固定宽度布局)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android -- TypedArray

当我们自定义View的时候,在给View赋值一些长度宽度的时候,一般都是在layout布局文件中进行的。,比如android:layout_height="wrap_content",除此之外,我们也可以自己定义属性,这样在使用的时候我们就可以使用形如 myapp:myTextSize="20sp"的方式了。 values/attrs.xml 首先要创建变...

下载文件夹的解决方案

ASP.NET批量下载文件的方法 这篇文章主要介绍了ASP.NET批量下载文件的方法,实例汇总了常见的asp.net实现批量下载的方法,具有一定的实用价值,需要的朋友可以参考下 本文实例讲述了ASP.NET批量下载文件的方法。分享给大家供大家参考。具体方法如下: 一、实现步骤 在用户操作界面,由用户选择需要下载的文件,系统根据所选文件,在服务器上创建用于存...

WPF利用Image实现图片按钮

  之前有一篇文章也是采用了Image实现的图片按钮,不过时间太久远了,忘记了地址。好吧,这里我进行了进一步的改进,原来的文章中需要设置4张图片,分别为可用时,鼠标悬浮时,按钮按下时,按钮不可用时的图片,这里我只用了一张图片,利用C#的图片灰度处理自动获得不可用时的图片,利用图片的间距实现悬浮及按下效果。先上效果:(正常 悬浮 按下 不可用)   代码其...

maven pom 属性介绍

maven pom属性 内置属性(预定义,可直接使用) ${basedir} 表示项目根目录,即包含pom.xml文件的目录; ${version} 表示项目版本; ${project.basedir}同${basedir}; ${maven.build.timestamp} 表示项目构件开始时间; ${maven.build.timestamp.for...

jumpserver开源堡垒机部署安装

0x01.前言 Jumpserver 是全球首款完全开源的堡垒机,使用 GNU GPL v2.0 开源协议,是符合 4A 的专业运维审计系统。 Jumpserver 使用 Python / Django 进行开发,遵循 Web 2.0 规范,配备了业界领先的 Web Terminal 解决方案,交互界面美观、用户体验好。 Jumpserver 采纳分布式架...

VB用windows API激活子窗体

http://files.cnblogs.com/files/liuzhaoyzz/%E6%BF%80%E6%B4%BB%E5%AD%90%E7%AA%97%E4%BD%93.rar setforegroundwindow只能激活桌面级的父窗体,即使后面跟的hwnd是子窗体的hwnd也不行! 激活子窗体,可以先用setforegroundwindow把父...