C#简易日志输出

精简版:

        public static void WriteLog(string message, string group = "")
        {
            var logPath = System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "error-log");
            if (!System.IO.Directory.Exists(logPath)) { System.IO.Directory.CreateDirectory(logPath); }
            if (System.IO.File.Exists(logPath + "off.log")) { return; }
            var fileName = System.DateTime.Now.ToString("yyyy-MM-dd") + ".log";
            if (string.IsNullOrEmpty(group)) { group = "default"; } else { fileName = string.Concat(group, "-", fileName); }
            fileName = System.IO.Path.Combine(logPath, fileName);
            var sw = new System.IO.StreamWriter(fileName, true) { AutoFlush = true };
            var head = "[START]======[Group:" + group + "]======[Time:" + System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.FFF") + "]======" + "\r\n\r\n";
            var content = "[LOG]:" + message + "\r\n\r\n";
            var foot = "[END]======[Group:" + group + "]======\r\n\r\n";
            var msg = head + content + foot;
            sw.Write(msg);
            sw.Close();
        }
  • message - 日志信息;
  • group -(可选参数)对日志进行分组,默认分组是以当前的日志命名的日志文件,如果此参数有值,则会在文件名前面加上group值,比如,group = "group" , 默认:2017-07-24.log , 含有组名:group-2017-07-24.log

另外,在调试完成后,如果不想删除以前的日志代码,然后不想新增日志,在error-log文件夹里面添加名称为 off.log 的文件即可

posted @   DHclly  阅读(364)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示