LogHelper 日志记录帮助类
2024-09-04 05:02:10
1、LogHelper 日志记录帮助类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; namespace Weixin.Utils { public enum LogType { Overall, } public class LogHelper { public static string LogPath { get { return AppDomain.CurrentDomain.BaseDirectory+@"\log"; } } public enum LogLevel { Info, Error } public static void Info(string message, LogType logType = LogType.Overall) { if (string.IsNullOrEmpty(message)) return; var path = string.Format(@"\{0}\", logType.ToString()); WriteLog(path, "", message); } public static void Error(string message, LogType logType = LogType.Overall) { if (string.IsNullOrEmpty(message)) return; var path = string.Format(@"\{0}\", logType.ToString()); WriteLog(path, "Error ", message); } public static void Error(Exception e, LogType logType = LogType.Overall) { if (e == null) return; var path = string.Format(@"\{0}\", logType.ToString()); WriteLog(path, "Error ", e.Message); } private static void WriteLog(string path, string prefix, string message) { path = LogPath + path; var fileName = string.Format("{0}{1}.log", prefix, DateTime.Now.ToString("yyyyMMdd")); if (!Directory.Exists(path)) Directory.CreateDirectory(path); using (FileStream fs = new FileStream(path + fileName, FileMode.Append, FileAccess.Write, FileShare.Write, 1024, FileOptions.Asynchronous)) { byte[] buffer = System.Text.Encoding.UTF8.GetBytes(DateTime.Now.ToString("HH:mm:ss") + " " + message + "\r\n"); IAsyncResult writeResult = fs.BeginWrite(buffer, 0, buffer.Length, (asyncResult) => { var fStream = (FileStream)asyncResult.AsyncState; fStream.EndWrite(asyncResult); }, fs); fs.Close(); } } } }
2、帮助类使用
var msg = "日志文本信息"; LogHelper.Info(msg);
最新文章
- react+redux教程(八)连接数据库的redux程序
- UVA11021 Tribles[离散概率 DP]
- Django用已有的数据库
- sql语句中----删除表数据drop、truncate和delete的用法
- Unity3d 换装Avatar系统
- [HDOJ1232]畅通工程
- 关于div 浮动在select,或table控件之上
- 制作qtopia-2.2.0和qt4文件系统
- SimpleDateFormat使用简析
- (转)DevExpress GridView属性设置
- Linq to sql介绍及增、删、改、查
- 支付宝支付-tp5
- 跨专业学习编程的苦逼生活 QWQ嘤嘤嘤
- Pandas与Matplotlib基础
- (NO.00001)iOS游戏SpeedBoy Lite成形记(十三)
- 获取list,有内容就赋值,根据ID显现NAME,没有显现list
- Oracle 重建控制文件一例
- js 2017 - 2
- 深入理解Java的堆内存和线程内存
- python之celery使用详解一