本文Log4Net介绍了基础的方式,大数据量生产环境不能使用,中等日志量请日志单库。 希望爱技术的你不要错过exceptionless和ELK
第四节开始简单配置大牛们推荐的了ExceptionLess, 一款开源分布式日志系统。
日志系统对于任何项目都是必不可少的,无论对于测试阶段的debug,性能测试,执行时间,操作记录还是线上的问题排查,访问记录等,日志系统都扮演着重要的角色。本篇分享的目的是能帮助需要的人快速搭建自己的LogSystem.,仅供参考。 先上个图呗,自认为页面还算清爽吧:
我的LogSystem使用Log4net入库的方式,网上特别多的分享,但是能完整运行下来的真是很少,所以现在需要和以后用得上的小伙伴抓紧收藏咯。
二. Log4Net自定义内容入库
Log4Net存日志的方式,给人的感觉实在是不实用,IT行业不都求一个自动化吗?废话不说了,先上Log4net入库系统的代码。
LogSystem数据库结构,我的建议是一个项目一个表。
在Log组件中,你需要这样几个类。下面分别给出代码:
LogContent.cs,这里定义了Log实体,在实体化实体的时候,通过给构造函数传参创建好这个对象。注释很详细了
1 using System;
2
3 namespace LogComponent
4 {
5 public class LogContent
6 {
7
8 public LogContent(string logLevel, string logMsg, string logModule, string description, string userName)
9 {
10 LogLevel = logLevel;
11 UserName = userName;
12 Description = description;
13 LogMsg = logMsg;
14 LogModule = logModule;
15 }
16
17 /// <summary>
18 /// 日志级别
19 /// </summary>
20 public string LogLevel { get; set; }
21
22 /// <summary>
23 /// 日志消息
24 /// </summary>
25 public string LogMsg { get; set; }
26
27 /// <summary>
28 /// 系统登陆用户
29 /// </summary>
30 public string UserName { get; set; }
31
32 /// <summary>
33 /// 日志描述信息
34 /// </summary>
35 public string Description { get; set; }
36
37 /// <summary>
38 /// 记录时间
39 /// </summary>
40 public DateTime LogDate { get; set; }
41
42 /// <summary>
43 /// 模块名称
44 /// </summary>
45 public string LogModule { get; set; }
46 }
47 }