C#中使用打印日志
在日常的工作中经常需要日志,这样能够很容易定位到代码中的一些错误,.Net中有自带的日志接口。并没有仔细去研究,这里是我自己写的日志接口,记录下来以便以后用到,根据时间打印相关的日志文件,代码如下:
namespace InspectionQueue.CommonHelper
{
public class LogInfoHelp
{
/// <summary>
/// 日志类型
/// </summary>
private enum LOG_TYPE
{
LOG_FAIL = , //致命错误
LOG_ERROR, //一般错误
LOG_EXCEPTION, //异常
LOG_WARN, //警告
LOG_INFO, //一般信息
} private StreamWriter LogFile = null;
private static LogInfoHelp _instance = null;
private string LogFilePath = null; public static LogInfoHelp GetInstance()
{
if(null == _instance)
{
_instance = new LogInfoHelp();
} return _instance;
}
private LogInfoHelp() { } /// <summary>
/// 创建日志文件
/// </summary>
public void CreateLogFile()
{
//获取运行程序的路径
string logFilePath = AppDomain.CurrentDomain.BaseDirectory;
string logFileName = (DateTime.Now.Year).ToString() + '-'
+ (DateTime.Now.Month).ToString() + '-' + (DateTime.Now.Day).ToString() + "_Log.log";
logFilePath += "logFile\\";
if (!Directory.Exists(logFilePath))
{
Directory.CreateDirectory(logFilePath);
}
this.LogFilePath = logFilePath + logFileName;
} /// <summary>
/// 信息写入日志
/// </summary>
/// <param name="strMsg"></param>
public void WriteInfoToLogFile(string strLogInfo, ConstValues.LOG_TYPE logType)
{
LogFile = new StreamWriter(LogFilePath, true);//文件保存位置
string strlogInfo = null;
switch(logType)
{
case ConstValues.LOG_TYPE.LOG_FAIL:
{
strlogInfo = String.Format("[{0}] 致命错误:{1}", DateTime.Now.ToString(), strLogInfo);
}
break; case ConstValues.LOG_TYPE.LOG_ERROR:
{
strlogInfo = String.Format("[{0}] 一般错误:{1}", DateTime.Now.ToString(), strLogInfo);
}
break; case ConstValues.LOG_TYPE.LOG_EXCEPTION:
{
strLogInfo = String.Format("[{0}] 异常:{1}", DateTime.Now.ToString(), strLogInfo);
}
break; case ConstValues.LOG_TYPE.LOG_WARN:
{
strLogInfo = String.Format("[{0}] 警告:{1}", DateTime.Now.ToString(), strLogInfo);
}
break; case ConstValues.LOG_TYPE.LOG_INFO:
{
strLogInfo = String.Format("[{0}] 一般信息:{1}", DateTime.Now.ToString(), strLogInfo);
}
break;
}
LogFile.WriteLine(strLogInfo);
LogFile.Close();
}
}
}
C#中使用打印日志的更多相关文章
- Xcode8中处理打印日志的配置
Xcode8中处理打印日志的配置
- springboot中logback打印日志(转)
springboot对logback的支持是非常好的,不需要任何配置,只需要在resource下加logback.xml就可以实现功能 直接贴代码: <?xml version="1. ...
- springboot 项目中控制台打印日志以及每天生成日志文件
1.控制台打印sql语句 只要在application.properties 中加入<configuration scan="true" scanPeriod=" ...
- springboot中logback打印日志
http://blog.csdn.net/fan510988896/article/details/54409790
- ruby脚本打印日志到rspec的报告文件中
在通过ruby+webdriver+rspec做自动化测试的时候,为了便于观察用例执行情况,我基本上都会用 rspec XX.rb --format doc -o result.log 如果遇到失败的 ...
- Android中logcat和日志打印
一.logcat对日志过滤 1.# logcat --help # logcat --help Usage: logcat [options] [filterspecs] options inclu ...
- java IDE 中安装 lombok plugin 插件,并使用 @Slf4j 注解打印日志初体验
lombok 插件介绍: IntelliJ IDEA官方插件页面:https://plugins.jetbrains.com/plugin/6317-lombok-plugin 使用lombok之后, ...
- 大数据项目中js中代码和java中代码(解决Tomcat打印日志中文乱码)
Idea2018中集成Tomcat9导致OutPut乱码找到tomcat的安装目录,打开logging.properties文件,增加一行代码,覆盖默认设置,将日志编码格式修改为GBK.java.ut ...
- Java中打印日志,这4点很重要!
目录 一.预先判断日志级别 二.避免无效日志打印 三.区别对待错误日志 四.保证记录完整内容 打印日志,要注意下面4点. 一.预先判断日志级别 对DEBUG.INFO级别的日志,必须使用条件输出或者使 ...
随机推荐
- JavaScript数据类型之文本类型
引言 字符串(string)是一组由16位值组成的不可变的有序序列,每个字符通常来自于Unicode字符集.JavaScript通过字符串类型来表示文本.字符串的长度(length)是其所含16位值的 ...
- 监听器的配置,绑定HttpSessionListener监听器的使用
监听器的配置,绑定 <listener> <listener-class>监听器的全路径</listener-class> </listener> Se ...
- JavaScript如何计算两个日期间的时间差
<script type="text/javascript"> /* * 获得时间差,时间格式为 年-月-日 小时:分钟:秒 或者 年/月/日 小时:分钟:秒 * 其中 ...
- Python requests模块解析XML
检查QQ是否在线(api感觉不准) import requests from xml.etree import ElementTree qq_str = input('please input the ...
- SICP 习题 (1.43)解题总结
SICP 习题 1.43 是前面两道题的延续,习题要求我们定义一个过程(repeat f n) .当中f是一个单參数过程.题目要求我们通过repeat过程将过程f调用n次,注意是嵌套调用n次,不是连续 ...
- mysql创建索引的原则
在mysql中使用索引的原则有以下几点: 1. 对于查询频率高的字段创建索引: 2. 对排序.分组.联合查询频率高的字段创建索引: 3. 索引的数目不宜太多 原因:a.每创建一个索引都会占用相应的物理 ...
- glance系列一:glance基础
一 什么是glance glance即image service,是为虚拟机的创建提供镜像的服务 二 为何要有glance 我们基于openstack是构建基本的Iaas平台对外提供虚拟机,而虚拟机在 ...
- jenkins+svn安装
参考资料: http://blog.csdn.net/wuxuehong0306/article/details/50016547 https://www.ibm.com/developerworks ...
- console 命令进行 JS 调试的灵活用法
1.console.log() 占位符 console.log 支持的占位符包括:字符(%s).整数(%d或%i).浮点数(%f)和对象(%o): console.log('字符串: %s, 整数: ...
- SCOI2019d1t1平台跳跃[高精]
分析 首先考虑相邻柱子之间没有浮台. 记前 \(m-1\) 个盘子为 x, 第 \(m\) 个盘子为 y,有如下过程:\(x\rightarrow C, y\rightarrow B, x\right ...