.Net Core Nlog日志记录到MySql
前段时间想要实现这个功能网上找了很多资料,现在整理一下发布出来,希望给大家一点帮助。 首先是依赖项的选择:

关于NLog版本不是最新是因为最新版本有点问题我试了试不支持,所以选了这几个版本,MySql的版本是因为Nlog的配置默认是不支持MySql直连的。这是准备工作。
然后是Nlog.config的配置:
<target xsi:type="Null" name="blackhole" />
<target
xsi:type="Database" name="database"
dbProvider="MySql.Data.MySqlClient.MySqlConnection,Mysql.Data"
connectionstring="server=;user id=;password=;Database=testing;"
commandText="insert into access_log(app_key,access_ip,access_time,msg)
values (@app_key,@access_ip,@access_time,@msg)" >
<parameter name="app_key" layout="${event-context:item=app_key}" />
<parameter name="access_ip" layout="${event-context:item=access_ip}" />
<parameter name="access_time" layout="${event-context:item=access_time}" />
<parameter name="msg" layout="${event-context:item=msg}" />
</target>
这个parameter的属性是选择性上次必要的,Log日志内容需要自己定义格式和它一样就可以了,不需要的日志他是不会记录的
<rules>
<logger name="*" writeTo="database"/>
</rules>
这是规则。
//LogEventInfo ei = new LogEventInfo();
//ei.Level = LogLevel.Info;
//ei.Properties["app_key"] = param["appKey"].ToString();
//ei.Properties["access_ip"] = accessIp;
//ei.Properties["access_time"] =accessDate;
//ei.Properties["msg"] = log;
//_logger.Log(ei);
这是日志格式。其他问题其实网上都有解答,最主要的问题就是dbProvider属性是不能直接写MySql的。
有什么不足和建议可以和我提,共同进步!
.Net Core Nlog日志记录到MySql的更多相关文章
- .NET Core 使用NLog日志记录
前言 每个项目都会需要使用到日志功能,这对于项目上线后 出现的bug异常,能及时定位和便于后期错误分析.那我们今天来看看在.NET Core中如何使用NLog日志. NLog 什么是NLog呢? NL ...
- 日志记录:MySQL系列之十一
一.SQL命令历史 ~/.mysql_history 记录了在mysql中执行的命令历史 二.事务日志 transaction log:事务型存储引擎自行管理和使用 在一个事务提交后还没有存到磁盘的情 ...
- 使用log4net无法将日志记录插入mysql数据库解决办法
写在前面 今天没事研究了下,将日志文件写入mysql数据库,因为新公司用的数据库也是mysql,项目中需要将日志信息写入数据库,没办法,就研究了下.在使用过程中遇到一个很蛋疼的问题.最后解决了,郁闷了 ...
- winform 应用log4net做日志记录到mysql
1.nuget装log4net 2.nuget控件台装 mysql.data Install-Package mysql.data -version 6.8.3 (太高的版本用不了,切记) 3.修改a ...
- NLog日志记录
配置NLog NLog支持 .Net 4.5 以及以上版本! 首先去下载NLog的DLL下载地址:http://nlog-project.org/downlo ...
- .NET Core开发日志——Dapper与MySQL
Dapper作为.NET生态中广为人知的轻量级ORM类库在.NET Core里仍能被有效利用,并且其不但可以连通SQL Server数据库还提供对其它数据库,比如MySQL的支持.这里试验了一下通过D ...
- 使用独立的log4net.config文件配置log4net,将日志记录到Mysql数据库【原创】
开发环境: VS2013, Asp.Net MVC 4.0, .Net Framework 4.0, Log4net 1.2.13.0, Mysql.Data.dll,6.8.3.0 设置步骤: 1. ...
- 实现将rsyslog将日志记录与MySQL中
准备两个节点 node3: rsyslog node2: 数据库 准备相应的包 [root@node3 php-fpm.d]#yum install rsyslog-mysql 将数据拷贝到数据 ...
- 使用 .NET Core 的日志记录
如何使用 Microsoft.Extensions.Logging public static void Main(string[] args = null) { ILoggerFactory ...
随机推荐
- Jquery ajax传递xml方式在ie8下兼容问题
主要问题就是ie8把xml格式在打开的时候转换成了string,我们只用把其转换回xml就可以了. $.ajax({ type:’GET’, url:’list.php?pagenow=’+count ...
- git修改用户名、邮箱
在windows使用git命令方法如下(以win7为例):1.msysgit 是 Windows 版的 Git可以百度搜索Git下载.2.安装完成后,开始菜单里找到“Git”->“Git Bas ...
- jenkins结合svn检测版本变化执行shell脚本实现项目部署
工具: centos 7 jenkins-2.138.2-1.1.noarch.rpm,2018年10月10号最新版(简单rpm包安装见https://www.cnblogs.com/dannylin ...
- html5 表單屬性
新的 form 属性: autocomplete novalidate 新的 input 属性: autocomplete autofocus form form overrides (formact ...
- 二、core abp 数据库迁移
一.数据库迁移-ABP(库) 1.配置链接数据库: 贴以下代码: { "ConnectionStrings": { "Default": "Serv ...
- Mvc校验用户没有登录就跳转的实现
看字面意思很简单,就是判断用户是否登录了,如果没有登录就跳转到登陆页面. 没错,主要代码如下(这里就不写判断登录了,直接跳转) 首先在控制器中新建一个BaseController public cla ...
- How to install Arch Linux
fdisk -l mkfs.ext4 /dev/sdaX mount /dev/sdaX /mnt mkdir -p /mnt/boot/ mount /dev/sdaY /mnt/boot/ arc ...
- solrcloud编辑zookeeper上的配置文件的方法
solrcloud的配置文件是上传在zookeeper文件系统上的.这样就面临一个问题,每次需要修改配置文件,就没有只有之前本地单机solr那么简单,需要上传. 搭建solrcloud时候提交配置文件 ...
- caffe网络中屏蔽某一层的输出Silence层
屏蔽label输出 layer { name: "silence0" type: "Silence" bottom: "label" pha ...
- luogu3391
P3391 [模板]文艺平衡树(Splay) 题目背景 这是一道经典的Splay模板题——文艺平衡树. 题目描述 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:翻转 ...