Logging with NLog

相比较log4net, 我更喜欢NLog, 因为NLog 更简单, 而且配置选项也更加的清楚,可能是因为log4net 是从log4j 移植过来的一个原因吧,总感觉有很多的java 成分在。

要使用NLog 首先也需要安装NLog Package。

安装好之后,添加一个NLog.config 文件,代码如下:

<?xml version="1.0" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<targets>
<target name="csv" xsi:type="File" fileName="${basedir}/file.csv">
            <layout xsi:type="CSVLayout">
                <column name="time" layout="${longdate}" />
                <column name="message" layout="${message}" />
                <column name="logger" layout="${logger}"/>
                <column name="level" layout="${level}"/>
            </layout>
        </target>
</targets>
<rules>
<logger name="*" minlevel="Debug" writeTo="csv" />
</rules>
</nlog>

target 是日志记录的目标位置,然后rules 是将哪些 logger 记录到哪些target 里面。

NLog.config 同样需要配置成Copy always.

使用方式也比较简单:

namespace NLog

{

class Program

{

static void Main(string[] args)

{

var logger = LogManager.GetCurrentClassLogger();

logger.Log(LogLevel.Info, "Hello World");

Console.ReadLine();

}

}

}

然后记录的内容如下:

在这里推荐使用EasyLogViewer 来查看日志:

http://www.codeproject.com/Tips/996927/EasyLogViewer-Yet-another-log-viewer-tool-but-Easi

时间: 2024-10-12 16:57:12

Logging with NLog的相关文章

Core 开发-Logging 使用NLog

ASP.NET Core 开发-Logging 使用NLog 写日志文件 ASP.NET Core 开发-Logging 使用NLog 写日志文件. NLog 可以适用于 .NET Core 和 ASP.NET Core . ASP.NET Core已经内置了日志支持,可以轻松输出到控制台. 学习Logging 组件的相关使用,使用NLog 将日志写入到文件记录. Logging 使用 新建一个 ASP.NET Core 项目,为了方便,我选择Web 应用程序,改身份验证 改为 不进行身份验证.

ASP.NET Core 开发-Logging 使用NLog 写日志文件

ASP.NET Core 开发-Logging 使用NLog 写日志文件. NLog 可以适用于 .NET Core 和 ASP.NET Core . ASP.NET Core已经内置了日志支持,可以轻松输出到控制台. 学习Logging 组件的相关使用,使用NLog 将日志写入到文件记录. Logging 使用 新建一个 ASP.NET Core 项目,为了方便,我选择Web 应用程序,改身份验证 改为 不进行身份验证. 新建好以后,会自动引用好对应的 类库.这样我们就可以直接使用 Logge

NLog在asp.net core中的应用

Asp.net core中,自带的Log是在当selfhost运行时,在控制台中输出,不便于查阅,如果用一个log架框,把日志持久化,便于查询. NLog是一个免费的日志记录框架,专门为.net平台下的框架提供日志功能,本文主要说明asp.net core下怎么使用NLog. 首先用Nuget安装NLog.Extensions.Logging和NLog.Web.AspNetCore两个类库. 修改project.json,在publishOptions中添加"nlog.config节点"

Nlog 配置总结

Writes log messages to one or more files. Since NLog 4.3 the ${basedir} isn't needed anymore for relative paths. Supported in .NET, Silverlight, Compact Framework and Mono. Configuration Syntax <targets> <target xsi:type="File" name=&qu

EF6 SQL Logging – Part 3: Interception building blocks | One Unicorn

In parts 1 and 2 of this series we looked at how to use DbContext.Database.Log to log the SQL generated by EF. But this code is actually a relatively thin fa?ade over some low-level building blocks for interception in general and, in this case, DbCom

DotNet Core Console 程序使用NLog

参考:https://github.com/NLog/NLog/wiki/Tutorial 步骤: 1. 使用Nuget安装NLog.Extensions.Logging Install-Package NLog.Extensions.Logging 2.编写代码(到这步运行代码,不报错,但是也不会有log输出,因为没有设置配置文件) 3. 编写配置文件 在项目下新增加NLog.config 文件,并设置其能copy到运行目录.将一下内容粘到里面,重新运行程序就可以看到输出到file.txt的l

Logging and Intercepting Database Operations (EF6 Onwards)

Logging and Intercepting Database Operations Starting with Entity Framework 6, anytime Entity Framework sends a command to the database this command can be intercepted by application code. This is most commonly used for logging SQL, but can also be u

.NET CORE2.0后台管理系统(一)配置API

一:引用关系图 要写一个项目首先离不开的就是一个清晰的流程图,当然我这里很简单. 上诉完成后打开api下的Startup.cs文件,因为我是配置好了所在我直接上传代码然后介绍一下: using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore

.net core 杂记:日记记录

ASP.NET Core 有内置的log组件,遗憾的是看了微软官方文档,貌似无法直接将日志存于文件或数据库,只能由自己实现或引用第三方日志组件. 以下为Nlog和log4net的使用记录 Nlog使用 搜索添加Nuget包 Nlog Nlog.Web.AspNetCore 新建一个xml文件,并改名为nlog.config XML内容如下(可配置日志目录名称.输出格式): <?xml version="1.0" encoding="utf-8" ?> &