我的第一个开源项目-logger4Net
学会学习,学会分享,学会创造。
这我的第一个开源项目。以前总觉得开源离自己很远,但通过不断学习发现,其实自己已经走在这条路上。思想就在那,只要懂得学习,懂得分享,就会懂享受创造的快乐感与殷实感。
没做过系统运营,是不会体会到日志的重要性。特别是做支付方面的系统,如果没有log,一旦系统或网络出现故障,要找出问题的根源,那简直是个悲剧。这个我深有体会,很外隐藏的bug,都是通过log分析出来的。鉴于打log的重要性,其实已经有很多方法可以方便的记录日志。如.NET 方面的有Entlib,Log4Net。当然,也可以自定义写log的方法,但这样写出来的日志通常比较凌乱,不方便管理。
Log4Net 是一相相当完善的日志管理组件,但真正应用到项目开发中,需要开发人员去了解里面的一些配置和机制。在项目紧张的时候,开发人员是没什么时间去研究这东西的,而是把更多精力放在功能业务开发上。
所以,此小开源项目目的在于让开发人员不需要太多理会log4net 内部配置。同时通过配置工具轻松管理log4net配置。程序员创建好相关业务的logger后,
(如酒店业务需要记日志) 程序员只需要调用以下代码即:
Logger.Info(LoggerName.Hotel, "my info testmsg ");
Logger.Debug(LoggerName.Hotel, "my debug testmsg ");
Logger.Debug(LoggerName.Hotel, "my debug ", new Exception("a debug exception"));
Logger.Error(LoggerName.Hotel, "my test msg ");
Logger.Error(LoggerName.Hotel, "my test msg ", new Exception("an excetiopn comming"));
Logger.Warn(LoggerName.Hotel, "my Warn", new FieldAccessException("can't be found file!"));
以上日志执行后,会在配置文件对应的保存目录下生成一个Hotel文件, 在Hotel文件生成 Debug_当天日期.log 为格式的日志文件。 如果配置了数据库的话,也会将日志保存到数据库表中。
详细配置请参考
我的第一个开源项目-logger4Net的更多相关文章
- 聊聊第一个开源项目(内网穿透) - CProxy
文章首发:聊聊第一个开源项目 - CProxy 作者:会玩code 初衷 最近在学C++,想写个项目练练手.对网络比较感兴趣,之前使用过ngrok(GO版本的内网穿透项目),看了部分源码,想把自己的一 ...
- 我的第一个开源项目 Kiwis2 Mockserver
我的第一个开源作品Kiwis2 Mock Server,目前公测中,欢迎大家提供宝贵意见. 代码:https://github.com/kiwis2/mockserver 主页:https://kiw ...
- [COCOS2DX]第一个开源项目的部署和运行<win32版本>
1.无法加载项目: 1.1 按照之前的方法创建一个名为FirstDemo的项目,并将下载到的源代码包全部拷贝到FirstDemo中 1.2 点击demo.sln启动项目: 修改属性: 2.无法打开“g ...
- lemon OA 我长时间经历的第一个开源项目
对于原作者来说, 他长时间运营了一个项目,lemon OA .目前,八百多star.在运营这个项目的过程中,我想说,他成了activiti 目前国内比较牛逼的几个人.还有 spring securit ...
- 【原】Android热更新开源项目Tinker源码解析系列之一:Dex热更新
[原]Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Tinker是微信的第一个开源项目,主要用于安卓应用bug的热修复和功能的迭代. Tinker github地址:http ...
- .NET平台开源项目速览(5)深入使用与扩展SharpConfig组件
上个月在文章:这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧 和 .NET平台开源项目速览(1)SharpConfig配置文件读写组件 中都提到了SharpConfig组件,简单轻量级 ...
- 滴滴出行开源项目doraemonkit食用指南
版权声明:本文为xing_star原创文章,转载请注明出处! 本文同步自http://javaexception.com/archives/94 doraemonkit 功能介绍 一两周前在地铁上刷任 ...
- 【Java经验分享篇01】小白如何开始学会看开源项目?
目录 前言 1.理解开源 1.1.什么是开源? 1.2.开源的定义 1.2.1.开源软件优点 1.2.2.经典开源软件案例 1.3.关于开源协议 1.3.1.如何选择开源协议 2.如何查找开源项目 2 ...
- Android开源项目第一篇——个性化控件(View)篇
本文为那些不错的Android开源项目第一篇——个性化控件(View)篇,主要介绍Android上那些不错个性化的View,包括ListView.ActionBar.Menu.ViewPager.Ga ...
随机推荐
- java.lang.NoSuchMethodError:
Servlet.service() for servlet [springMVC] in context with path [/mobile] threw exception [Handler pr ...
- freecodecamp记录
来源:https://www.freecodecamp.cn 如果需要填充文本来检查排版效果,网上有自动生成器,乱文生成器:此外Microoft Word中有一个函数能够自动生成每段20句的6段填充文 ...
- Winform TextBox中只能输入数字的几种常用方法(C#)
方法一: private void tBox_KeyPress(object sender, KeyPressEventArgs e) { ; //禁止空格键 )) return; //处理负数 if ...
- shell 套用expect
先用if 判断expect有没有安装 没有就yum install expect #!/bin/bash passwd='123456' /usr/bin/expect <<-EOF se ...
- springboot+dubbo
使用springboot搭建dubbo服务,首先封装出springboot-dubbo的项目,引入在服务上加直接@Service直接使用,方便于拆封统一管理. package hello.dubbo. ...
- Linux分区方案 (转)
以下是我的centOS6.2系统分区方案,做个记录,方便后续的参考. 根分区: >= 3G /boot (启动分区): 100M即可. /swap : 网上说是物理内存的两倍,实际随便你,看自己 ...
- 贪吃蛇的java代码分析(一)
自我审视 最近自己学习java已经有了一个多月的时间,从一开始对变量常量的概念一无所知,到现在能勉强写几个小程序玩玩,已经有了长足的进步.今天没有去学习,学校里要进行毕业答辩和拍毕业照了,于是请了几天 ...
- RDLC 设置标题每页显示
- BasicDataSource的配置参数
参数 描述 username 传递给JDBC驱动的用于建立连接的用户名 password 传递给JDBC驱动的用于建立连接的密码 url 传递给JDBC驱动的用于建立连接的URL driverClas ...
- Git实用命令手册
下载代码 git clone <git地址> 用户配置 git config —-global user.name <name> git config —-global use ...