首页 > 其他分享 >.net 6 中使用Log4Net 方式 winform

.net 6 中使用Log4Net 方式 winform

时间:2022-08-18 09:33:35浏览次数:63  
标签:Log4Net Log4NetHelper System public static using net message winform

1.直接添加一个帮助类

using log4net;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//文件里添加下面代码,让程序启动时是找到Log4net.config配置文件
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = false)]
namespace DDD.WinForm
{
    public static class Log4NetHelper
    {
        static readonly ILog _logger = LogManager.GetLogger("loginfo");
        public static void Info(string message)
        {
            _logger.Info(message);
        }

        public static void Debug(string message)
        {
            _logger.Debug(message);
        }

        public static void Warn(string message)
        {
            _logger.Warn(message);
        }

        public static void Error(string message)
        {
            _logger.Error(message);
        }
    }
}

 2.根目录新建一个log4net.config 配置为使用复制

<?xml version="1.0" encoding="utf-8" ?>
<log4net>
	<logger name="logerror">
		<!--日志类的名字-->
		<level value="ALL" />
		<!--定义记录的日志级别-->
		<appender-ref ref="ErrorAppender" />
		<!--记录到哪个介质中去-->
	</logger>
	<!--信息日志类-->
	<logger name="loginfo">
		<level value="ALL" />
		<appender-ref ref="InfoAppender" />
	</logger>
	<appender name="DebugAppender" type="log4net.Appender.DebugAppender" >
		<layout type="log4net.Layout.PatternLayout">
			<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
		</layout>
	</appender>
	<!--指定日记记录方式,以滚动文件的方式(文件记录)-->
	<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
		<!--日志路径-->
		<file value="log/" />
		<!--是否是向文件中追加日志-->
		<appendToFile value="true" />
		<!--log保留天数-->
		<param name= "MaxSizeRollBackups" value= "10"/>
		<!--每个文件最大1M-->
		<param name="maximumFileSize" value="1MB" />
		<!--日志根据日期滚动-->
		<param name="RollingStyle" value="Date" />
		<!--日志文件名格式为:logs_20080831.log-->
		<param name="DatePattern" value=""logs_"yyyyMMdd".log"" />
		<!--日志文件名是否是固定不变的-->
		<param name="StaticLogFileName" value="false" />
		<!--布局-->
		<layout type="log4net.Layout.PatternLayout">
			<conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />
		</layout>
	</appender>
	<root>
		<level value="ALL"/>
		<appender-ref ref="DebugAppender" />
		<appender-ref ref="RollingFile" />
	</root>
</log4net>

3.使用方法

            Log4NetHelper.Info("info");
            Log4NetHelper.Warn("warn");
            Log4NetHelper.Debug("debug");
            Log4NetHelper.Error("error");

4.效果

 

标签:Log4Net,Log4NetHelper,System,public,static,using,net,message,winform
From: https://www.cnblogs.com/request/p/16597585.html

相关文章

  • winform开启线程实时输出日志到控件
    1、声明委托 publicdelegatevoidShowMessage2Form(stringmessage);2、声明事件staticpubliceventShowMessage2FormShowMessage;3、事件绑定LogHelper.ShowM......
  • Kubernetes学习笔记(十一):Node Selectors & Affinity
    NodeSelectorspod-definition.ymlspec:nodeSelector:size:Large##生效前需要先标记nodekubectllabelnodes<node-name><label-key>=<label-value>:......
  • Kubernetes-概述
    Kubernetes概述Kubernetes概述Kubernetes是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。Kubernetes拥有一个庞大且快速......
  • Kubernetes学习笔记(十):Taints and Tolerations
    Taints-Node:kubectltaintnodesnode-namekey=value:taint-effecttaint-effect:NoSchedule|PreferNoSchedule|NoExecuteNoExecute:新Pod不会部署,已存在的......
  • .net pkcs#7/12 sign detached
    publicstaticstringSign(stringmyString){X509Certificate2cert=newX509Certificate2(@"xxxxx.pfx","123456");CmsSignersigner=newCmsSi......
  • 【.Net力扣刷题】第1302题:层数最深叶子节点的和
    题目描述来源:力扣(LeetCode)链接:https://leetcode.cn/problems/deepest-leaves-sum/给你一棵二叉树的根节点root,请你返回层数最深的叶子节点的和。题目分析本题需......
  • 【CV源码项目实现】darknet中network的实现过程
     darknet的网络结构使用network结构体进行保存,network的构建过程主要包括以下几个函数:load_network(src/networks.c)----->parse_network_cfg(src/parser.c) --->ma......
  • Winform下拉框使用拼音首字母查询
    项目需要一个搜索所在单位的选项,因为选项众多需要用下拉框来进行选择。众多选择为了更好的使用,采用了拼音首字母进行查询。显示的效果如果下:在输入框输入X出现X相关的单......
  • .NET Framework 4 安装
    因公司需要在虚拟机上进行开发所以安装运行某些软件的时候需要用到.NETFramework4环境,所以进行大量的百度安装方法方法一:使用官方下载的程序包安装下载地址:h......
  • kubernetes网络模型
    Overview本文将探讨Kubernetes中的网络模型,以及对各种网络模型进行分析。UnderlayNetworkModel什么是UnderlayNetwork底层网络UnderlayNetwork顾名思义是指网络......