.netCore .net5,6,7 存日志文件

如果你使用 .netCore及以上版本(.net5,.net6,.net7)...  系统默认自带日志中间件(log4net)

对,就是上次java 日志大漏洞的兄弟.......

控制台自动打印日志就是它的功劳

现在我们想存日志文件,怎么办  很简单.

1.在项目中添加日志配置文件   文件名 :  log4net.config  不能随意文件名

<?xml version="1.0" encoding="utf-8"?>
<log4net><!-- 文件存储日志配置 --><!--Type 表示用那种类型记录日志--><appender name="rollingAppender" type="log4net.Appender.RollingFileAppender"><!--表示用文本来记录日志--><!--<file value="log\log.txt" />--><file value="D:\APP\SG.ISS.GateSentry.Server\bin\Release\log.txt" /><!--追加日志内容--><!--<appendToFile value="false" />--><appendToFile value="true" /><!--防止多线程时不能写Log,官方说线程非安全--><lockingModel type="log4net.Appender.FileAppender+MinimalLock" /><!--最小锁--><!--配置Unicode编码--><Encoding value="UTF-8" /><!--是否只写到一个文件里--><param name="StaticLogFileName" value="false" /><!--当备份文件时,为文件名加的后缀,这里可以作为每一天的日志分别存储不同的文件--><datePattern value="yyyyMMdd&quot;.txt&quot;" /><!--可以为:Once|Size|Date|Composite--><!--Composite为Size和Date的组合--><!--<rollingStyle value="Composite" />--><rollingStyle value="Size" /><!--日志最大个数,都是最新的--><!--rollingStyle节点为Size时,只能有value个日志文件--><!--rollingStyle节点为Composite时,每天有value个日志--><maxSizeRollBackups value="7" /><!--可用的单位:KB|MB|GB--><maximumFileSize value="5MB" /><!--置为true,当前最新日志文件名永远为file节中的名字--><staticLogFileName value="true" /><!--过滤器--><!--阻止所有事件被记录--><!--<filter type="log4net.Filter.DenyAllFilter"> </filter>--><!--只有指定等级的日志事件才被记录--><!--<filter type="log4net.Filter.LevelMatchFilter"><param value="FATAL" /></filter>--><!--日志等级在指定范围内的事件才被记录--><!--<filter type="log4net.Filter.LevelRangeFilter"><param name="LevelMin" value="ERROR" /><param name="LevelMax" value="FATAL" /></filter>--><!-- 日志输出格式 --><!--<layout type="log4net.Layout.PatternLayout"><conversionPattern value="%level %thread %logger - %message%newline" /></layout>--><layout type="log4net.Layout.PatternLayout"><!--日志输出格式:时间  日志类型  日志内容--><conversionPattern value="%date [%thread] %-5level %logger - %message%newline"/></layout></appender><!-- levels: OFF > FATAL > ERROR > WARN > INFO > DEBUG  > ALL --><root><priority value="ALL"/><level value="ALL"/><appender-ref ref="rollingAppender" /></root>
</log4net>

2.在 program.cs  里面

        public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureLogging((context,loggingBuilder)=> {//通过中间件的方式使用Log4Net
                    // 因为系统日志会很多
                    loggingBuilder.AddFilter("System", LogLevel.Warning);
                    loggingBuilder.AddFilter("Microsoft", LogLevel.Warning);//过滤掉系统默认的一些日志
                    loggingBuilder.AddLog4Net(); //注册Log4Net 到.Net Core
                })
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });
3. NuGet : Microsoft.Extensions.Logging.Log4Net.AspNetCore

它会自动带出安装  log4net

注意对比版本,尽量少的更新已有包

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/152658.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PSN 两步验证解除2023.10.9经验贴

背景 本人10月1号收到Sony邮件&#xff0c;说是不规律登录&#xff0c;需修改密码后登录&#xff0c;然后我10月8日登录PS4的时候&#xff0c;提示两步验证。当时就想坏了&#xff0c;然后找B站相关经验贴&#xff0c;10月9号电话香港客服&#xff0c;解除了两步验证&#xff0…

Windows10打开应用总是会弹出提示窗口的解决方法

用户们在Windows10电脑中打开应用程序&#xff0c;遇到了总是会弹出提示窗口的烦人问题。这样的情况会干扰到用户的正常操作&#xff0c;给用户带来不好的操作体验&#xff0c;接下来小编给大家详细介绍关闭这个提示窗口的方法&#xff0c;让大家可以在Windows10电脑中舒心操作…

计算机网络八股

1、请你说说TCP和UDP的区别 TCP提供面向连接的可靠传输&#xff0c;UDP提供面向无连接的不可靠传输。UDP在很多实时性要求高的场景有很好的表现&#xff0c;而TCP在要求数据准确、对速度没有硬件要求的场景有很好的表现。TCP和UDP都是传输层协议&#xff0c;都是为应用层程序服…

大数据——Spark Streaming

是什么 Spark Streaming是一个可扩展、高吞吐、具有容错性的流式计算框架。 之前我们接触的spark-core和spark-sql都是离线批处理任务&#xff0c;每天定时处理数据&#xff0c;对于数据的实时性要求不高&#xff0c;一般都是T1的。但在企业任务中存在很多的实时性的任务需求&…

超大视频如何优雅切片

背景 有一次录屏产生了一个大小为33G的文件, 我想把他上传到B站, 但是B站最大只支持4G. 无法上传, 因此做了一个简单的探索. 质疑与思考 a. 有没有一个工具或一个程序协助我做分片呢? 尝试 a. 必剪 > 有大小限制, 添加素材加不进去(而且报错信息也提示的不对) b. PR &…

C++设计模式_07_Bridge 桥模式

文章目录 1. 动机&#xff08;Motivation&#xff09;2. 代码演示Bridge 桥模式2.1 基于继承的常规思维处理2.2 基于组合关系的重构优化2.3 采用Bridge 桥模式的实现 3. 模式定义4. 结构&#xff08;Structure&#xff09;5. 要点总结 与上篇介绍的Decorator 装饰模式一样&…

从零开始读懂相对论:探索爱因斯坦的科学奇迹

&#x1f482; 个人网站:【工具大全】【游戏大全】【神级源码资源网】&#x1f91f; 前端学习课程&#xff1a;&#x1f449;【28个案例趣学前端】【400个JS面试题】&#x1f485; 寻找学习交流、摸鱼划水的小伙伴&#xff0c;请点击【摸鱼学习交流群】 引言 阿尔伯特爱因斯坦…

竞赛 机器视觉 opencv 深度学习 驾驶人脸疲劳检测系统 -python

文章目录 0 前言1 课题背景2 Dlib人脸识别2.1 简介2.2 Dlib优点2.3 相关代码2.4 人脸数据库2.5 人脸录入加识别效果 3 疲劳检测算法3.1 眼睛检测算法3.2 打哈欠检测算法3.3 点头检测算法 4 PyQt54.1 简介4.2相关界面代码 5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#x…

Transformer预测 | Pytorch实现基于Transformer 的锂电池寿命预测(CALCE数据集)

文章目录 效果一览文章概述模型描述程序设计参考资料效果一览 文章概述 Pytorch实现基于Transformer 的锂电池寿命预测,环境为pytorch 1.8.0,pandas 0.24.2 随着充放电次数的增加,锂电池的性能逐渐下降。电池的性能可以用容量来表示,故寿命预测 (RUL) 可以定义如下: SOH(t…

flutter开发实战-video_player插件播放抖音直播实现(仅限Android端)

flutter开发实战-video_player插件播放抖音直播实现&#xff08;仅限Android端&#xff09; 在之前的开发过程中&#xff0c;遇到video_player播放视频&#xff0c;通过查看video_player插件描述&#xff0c;可以看到video_player在Android端使用exoplayer&#xff0c;在iOS端…

workerman的基本用法(示例详解)

workerman是什么&#xff1f; Workerman是一个异步事件驱动的PHP框架&#xff0c;具有高性能&#xff0c;可轻松构建快速&#xff0c;可扩展的网络应用程序。支持HTTP&#xff0c;Websocket&#xff0c;SSL和其他自定义协议。支持libevent&#xff0c;HHVM&#xff0c;ReactPH…

el-table 设置最大高度且能刚好撑满

max-height"calc(90vh - 120px)"90vh视口高度的90%自行调整即可

解决: 使用html2canvas和print-js打印组件时, 超出高度出现空白页

如果所示&#xff1a;当我利用html2canvas转换成图片后, 然后使用print-js打印多张图片, 第一张会出现空白页 打印组件可参考这个: Vue-使用html2canvas和print-js打印组件 解决: 因为是使用html2canvas转换成图片后才打印的, 而图片是行内块级元素, 会有间隙, 所以被挤下去了…

真香!Jenkins 主从模式解决问题So Easy~

01.Jenkins 能干什么 Jenkins 是一个开源软件项目&#xff0c;是基于 Java 开发的一种持续集成工具&#xff0c;用于监控持续重复的工作&#xff0c;旨在提供一个开放易用的软件平台&#xff0c;使软件项目可以进行持续集成。 中文官网&#xff1a;https://jenkins.io/zh/ 0…

Docker基础(CentOS 7)

参考资料 hub.docker.com 查看docker官方仓库&#xff0c;需要梯子 Docker命令大全 黑马程序员docker实操教程 &#xff08;黑马讲的真的不错 容器与虚拟机 安装 yum install -y docker Docker服务命令 启动服务 systemctl start docker停止服务 systemctl stop docker重启…

Redis AOF重写原原理

重写aof之前 appendonly.aof.1.base.aof appendonly.aof.1.incr.aof appendonly.aof.manifest 重写aof 一次 appendonly.aof.2.base.aof 大小变化 appendonly.aof.2.incr.aof 大小o appendonly.aof.manifest 大小不变 AOF文件重写并不是对原文件进行重新整理&#xff0c;而是直…

Docker搭建MySQL8.0主从复制(一主一从)

0. 配置说明 宿主机使用的版本为19045的win10专业版&#xff0c;MySQL使用的是8.0&#xff0c;Docker容器使用Linux。 1. 安装Docker Desktop 略 修改Docker默认安装路径 安装包自己就提供了修改安装路径的功能&#xff0c;CMD中运行&#xff1a; “Docker Desktop Installe…

财务明细一目了然,颜色标记记录轻松掌握个人账目!

无论您是想更好地理清个人收支&#xff0c;还是希望在财务管理中更加高效&#xff0c;我们为您推荐一款绝佳的财政管理神器&#xff1a;颜色标记记录&#xff01; 第一步&#xff0c;首先&#xff0c;我们要先进入【晨曦记账本】主页面&#xff0c;并点击上方功能栏里的“添加…

[开源]MIT协议,开源论坛程序,拥有友好的用户界面和操作体验

一、开源项目简介 尤得一物是一个开源论坛程序&#xff0c;提供丰富的功能&#xff0c;可以作为管理或分享文章的论坛博客&#xff0c;也可以在此基础上进行自定义开发。 二、开源协议 使用MIT开源协议 三、界面展示 四、功能概述 尤得一物是一个开源论坛程序&#xff0c;…

如何使用Docker轻松构建和管理应用程序(一)

如今Docker的使用已经非常普遍&#xff0c;特别在一线互联网公司。使用Docker技术可以帮助企业快速水平扩展服务&#xff0c;从而到达弹性部署业务的能力。在云服务概念兴起之后&#xff0c;Docker的使用场景和范围进一步发展&#xff0c;如今在微服务架构越来越流行的情况下&a…