首页 > 其他分享 >WPF项目使用日志

WPF项目使用日志

时间:2024-04-19 13:35:02浏览次数:15  
标签:log4net resource Log 项目 dictionaries WPF public 日志

提问

WPF项目如何使用日志

回答

  1. 引入nuget log4net

  2. 加入配置特性

[assembly: ThemeInfo(
ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
//(used if a resource is not found in the page,
// or application resource dictionaries)
ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
//(used if a resource is not found in the page,
// app, or any theme specific resource dictionaries)
)]
[assembly: log4net.Config.XmlConfigurator(Watch = true)]

  1. 添加配置文件
    app.config
<configuration>
    <configSections>
        <!--log4net配置-->
        <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>
    </configSections>
    <!--log4net配置-->
    <log4net>
        <!--定义输出到文件中-->
        <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
            <!--定义文件存放位置-->
            <!--file可以指定具体的路径 D://logfile.txt。-->
            <file value="C://ProgramData//NbApi//configlogfile.txt"/>
            <!--如果放在Debug下,当然名字你可以改 -->
            <!--<file value="log//logfile.txt"/>-->
            <appendToFile value="true"/>
            <rollingStyle value="Date"/>
            <!--备份log文件的个数最多10个-->
            <maxSizeRollBackups value="10" />
            <!--每个log文件最大是2M,如果超过2M将重新创建一个新的log文件,并将原来的log文件备份。-->
            <maximumFileSize value="2MB" />
            <datePattern value="yyyyMMdd-HH:mm:ss"/>
            <layout type="log4net.Layout.PatternLayout">
                <!--输出格式-->
                <!--样例:2008-03-26 13:42:32,111 [10] INFO  Log4NetDemo.MainClass [(null)] - info-->
                <conversionPattern value="[%date] [%-5level] %message%newline"/>
            </layout>
        </appender>
        <!--定义日志的输出媒介-->
        <root>
            <!--指定将此级别及以上的log打印到log文件中-->
            <level value="DEBUG"/>
            <!--文件形式记录日志-->
            <appender-ref ref="LogFileAppender"/>
        </root>
    </log4net>
</configuration>
  1. 帮助类
using log4net;

namespace NBApi.Configurator;

public class LogObject
{
    public static ILog Log(string LoggerName)
    {   
        return LogManager.GetLogger(LoggerName); } 
}
  1. 使用
public static readonly ILog Log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod()?.DeclaringType);
。。。
Log.Info( $"执行时间:{DateTime.Now:yyyy-MM-dd HH:mm:ss}:清除SyncedTags.log");

参考

https://www.cnblogs.com/likui-bookHouse/p/11052053.html

标签:log4net,resource,Log,项目,dictionaries,WPF,public,日志
From: https://www.cnblogs.com/wuhailong/p/18145700

相关文章

  • ioS 的ADB tidevice 同步某个应用的日志
    要使用tidevice工具实时同步某个应用的日志,可以按照以下步骤进行操作:安装tidevice(如果尚未安装)在命令行终端中,运行以下命令来安装tidevice:pip3install-Utidevice连接你的iOS设备使用USB线连接你的iOS设备到电脑上。配对设备(如果尚未配对)打开终端(在Wind......
  • Codes 重新定义 SaaS 模式的研发项目管理平台开源版 4.5.3 发布
    一:简介   Codes重新定义SaaS模式= 云端认证+程序及数据本地安装+不限功能+30人免费    Codes 是一个 高效、简洁、轻量的一站式研发项目管理平台。包含需求管理,任务管理,测试管理,缺陷管理,自动化测试,cicd 等功能;Codes帮助企业加速融合研发、测试、运......
  • 【Docker】临时起意用docker在阿里云ECS上部署项目遇到的坑
    我的小项目用到了两个springboot搭建的模块,还有mysql,redis,rabbitmq。因为不了解docker中网络协议栈的隔离而导致一个简单的部署花了我一天时间。关于容器之间端口的映射,可以运行如下命令来查看:[root@iZwz9337zr98g77j7a141hZ~]#dockerps-aCONTAINERIDIMAGE......
  • Java项目调用 WebService
    Java项目调用WebService序言:原本接触和二开的Java项目都是使用Spring框架,并且使用的接口都是RestFul风格,今天有一个Kingdee项目是使用WSDL文件提供接口通过WebService的方式来进行接口方式的相互通讯;因为是第一次使用WebService方式,所以写下这篇文档留作参考记......
  • NL2SQL技术方案系列(1):NL2API、NL2SQL技术路径选择;LLM选型与Prompt工程技巧,揭秘项目落
    NL2SQL技术方案系列(1):NL2API、NL2SQL技术路径选择;LLM选型与Prompt工程技巧,揭秘项目落地优化之道NL2SQL基础系列(1):业界顶尖排行榜、权威测评数据集及LLM大模型(SpidervsBIRD)全面对比优劣分析[Text2SQL、Text2DSL]NL2SQL基础系列(2):主流大模型与微调方法精选集,Text2SQL经典算法......
  • WPF/C#:让绘制的图形可以被选中并将信息显示在ListBox中
    实现的效果如果你对此感兴趣,可以接着往下阅读。实现过程绘制矩形比如说我想绘制一个3行4列的表格:privatevoidButton_Click_DrawRect(objectsender,RoutedEventArgse){intRow=3;intCol=4;for(inti=0;i<Row;i++){......
  • 界面组件库DevExpress Office File API(WinForms & WPF)v24.1新功能预览
    本文描述了界面组件库DevExpress的OfficeFileAPI(WinForms&WPF)和受Office启发的控件在v24.1中发布的一些功能,并详细介绍了我们当前的抢先体验预览版本v24.1中的内容。DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress......
  • 如何在 Netlify 上手动部署 React 和 TypeScript 项目
    在本教程中,我将教你如何使用Vite在Netlify上手动部署React和TypeScript项目。我将向你展示一些快速简单的步骤,让你的项目能够立即运行。要跟着本教程操作,有几个先决条件:一个现有的React和TypeScript项目,使用Vite构建,并且你想要部署它。VisualStudioCode(VSCode......
  • pytest多线程运行控制台日志输出异常
    开启多线程后控制台日志显示错误,但是日志文件输出正确百度了一个晚上也没有解决,AI也问不出来解决办法,希望有大佬看到。开启多线程运行用例单独运行只有一个线程【gw1】输出日志信息。【gw2,gw0,gw3】都不能输出日志信息通过main()方式运行,控制台日志信息乱码......
  • 如何将 Python 项目打包成 exe,另带卸载功能!
    Python项目打包成exe前言虽然我是做web的,但是对Python的众多开源项目一直都很关注。像以前的stablediffusion的AI绘画,和so-vits-svc音色替换等源码的部署文档都很完善了。尽管如此,但对于刚入门的和本地环境搭建各种踩坑的同学,急于一试就显得不太友好了。针对这一现......