事件日志(事件日志可以删除吗)
事件日志(事件日志可以删除吗)
每当出现一些未捕获异常时,操作系统都会将异常信息写入到Windows 事件日志中,可以通过Windows 事件查看器查看,如下图:
这篇文章将会讨论如何使用编程的方式将日志记录到 Windows 事件日志 中。安装 EventLog
要想在 .NET Core 中记录数据到 Windows 事件日志中,可以用 Nuget 安装一下
Microsoft.Extensions.Logging.EventLog包,用 Visual Studio 中的NuGet Package Manager可视化面板 或者 使用NuGet Package Manager Console命令行界面都可以,输入命令如下:Install-PackageMicrosoft.Extensions.Logging.EventLog通过 EventLog 记录日志
要想将日志写入 Windows 事件日志中,可以使用如下代码:EventLogeventLog=newEventLog(); eventLog.Source="MyEventLogTarget"; eventLog.WriteEntry("Thisisatestmessage.",EventLogEntryType.Information);
通过 EventLog 清空日志
为了能够实现清空所有 windows 日志,可以使用如下代码:EventLogeventLog=newEventLog(); eventLog.Source="MyEventLogSource"; eventLog.Clear();
Clear 是清空所有的 windows 事件日志,那如何清除某一个类别的日志呢? 比如说:MyEventLogTarget,修改代码如下:if(EventLog.Exists("MyEventLogTarget")) {EventLog.Delete("MyEventLogTarget"); }读取 Windows 事件日志 记录
可以使用 foreach 迭代 Entries 来获取所有的日志记录。EventLogeventLog=newEventLog(); eventLog.Log="MyEventLogTarget";foreach(EventLogEntryentryineventLog.Entries) { //Writeyourcustomcodehere}使用 NLog 将日志记录到 Windows 事件日志 中
要想使用 NLog 将日志记录到 windows事件日志 中,你需要用 NuGet 安装一下NLog.WindowsEventLog,这个包封装了连接 EventLog 错综复杂的细节,所以你只需要像平时用 NLog 一样的操作即可。创建 ILogManager 接口
下面的接口方法用于记录不同级别的日志 (information, warning, debug, or error) publicinterfaceILogManager {voidLogInformation(stringmessage);voidLogWarning(stringmessage);voidLogDebug(stringmessage);voidLogError(stringmessage); }创建 NLogManager 类
接下来,从 ILogManager 接口上派生一个 NLogManager 类,代码如下: publicclassNLogManager:ILogManager {privatestaticNLog.ILoggerlogger=LogManager.GetCurrentClassLogger();publicvoidLogDebug(stringmessage) {thrownewNotImplementedException(); }publicvoidLogError(stringmessage) { logger.Error(message); }publicvoidLogInformation(stringmessage) {thrownewNotImplementedException(); }publicvoidLogWarning(stringmessage) {thrownewNotImplementedException(); } }使用 LogError 方法
为了简单起见,我就仅实现 LogError 方法,其他的三个方法大家可以自行实现,为了能够了解如何通过 NLog 记录日志到 Windows事件日志 中,修改代码如下: publicvoidLogError(stringmessage) { Loggerlogger=LogManager.GetLogger("EventLogTarget");varlogEventInfo=newLogEventInfo(LogLevel.Error,logger.Name,message); logger.Log(logEventInfo); }
请注意,上面我创建了一个名为EventLogTarget的 EventLog,然后在 LogEventInfo 的构造函数中传递 log级别,logger的名字 以及 需要记录的 log 信息。配置 Nlog 将日志记录到 Windows事件日志 中
为了能够配置 Nlog 以编程的方式 通过 EventLog 记录日志,可以使用如下代码。varconfig=newNLog.Config.LoggingConfiguration();varlogEventLog=newNLog.Targets.EventLogTarget("EventLogTarget"); config.AddRule(NLog.LogLevel.Info,NLog.LogLevel.Error,logEventLog); NLog.LogManager.Configuration=config;完整的 NLogManager 例子
以下是 NLogManager 的完整代码实例,可供大家参考。 publicclassNLogManager:ILogManager {privatestaticNLog.ILoggerlogger=LogManager.GetCurrentClassLogger();publicvoidLogDebug(stringmessage) { logger.Debug(message); }publicvoidLogError(stringmessage) { Loggerlogger=LogManager.GetLogger("EventLogTarget");varlogEventInfo=newLogEventInfo(LogLevel.Error,logger.Name,message); logger.Log(logEventInfo); }publicvoidLogInformation(stringmessage) { logger.Info(message); }publicvoidLogWarning(stringmessage) { logger.Warn(message); } }
为了能够在 Controller 中使用 NLogManager,还需要在 Startup 下的 ConfigureServices 方法中进行注入,代码如下:services.AddSingleton<ILogManager,NLogManager>();
当你打开 Windows 事件查看器,就会看到错误信息已成功记录到这里了,参考如下截图:
Windows事件日志 通常用于记录 系统事件,网络流量和诸如安全,性能相关的信息 等等,你也可以将应用程序的日志记录到 Windows事件日志中,通常来说,如果你的程序仅仅是跑在 windows 上,那么将应用程序信息记录到 Windows事件日志 中是一个非常不错的选择。
译文链接:
https://www.infoworld.com/article/3598750/how-to-log-data-to-the-windows-event-log-in-csharp.html
敲胆经的副作用(敲胆经觉得口苦怎么回事)敲胆经的副作用(敲胆经觉得口苦怎么回事)素朴育儿莎莎姐201908130954近年来,随着中医经络等理论的逐渐普及,流行起一种时髦的健身方式敲胆经。门诊上也经常见到这样的患者,在给
薏米红豆粥的做法(熬红豆薏米粥的方法)薏米红豆粥的做法(熬红豆薏米粥的方法)豆果美食20150324014916红豆薏米能当茶喝,能当饭吃,而且能解决身体湿气不需按什么比例,每次一样抓两三把,洗干净后放在锅里加水煮,就
支付宝蚂蚁庄园小鸡问答感冒药的主要作用是消灭病毒治好感冒吗相信现在大家对于小鸡庄园每日问答都是非常关心的吧,并且近期发现很多小伙伴都很想知道感冒药的主要作用是消灭病毒治好感冒吗这个问题,那么既然现在小伙伴们对于感冒药的主要作用是消灭病毒治
数码知识抖音开直播怎么关闭声音关麦教程如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道抖音开直播怎么关闭
数码知识腾讯微视可以直播吗怎么开通直播权限如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道腾讯微视可以直播吗
数码知识微信也可以开直播吗微信开直播怎么开如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道微信也可以开直播吗
数码知识华为nova5pro悬浮窗怎么打开如何开小窗口如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道华为nova5pr
数码知识小米11怎么开小窗口如何开小窗口如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道小米11怎么开小窗
数码知识抖音直播怎么分享怎么分享给别人如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道抖音直播怎么分享怎
数码知识抖音怎么申请卖货抖音在哪申请商品分享功能如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道抖音怎么申请卖货抖
数码知识抖音在哪里关掉转发怎么设置禁止转发如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道抖音在哪里关掉转发
食不厌精(食不厌精脍不厌细全文翻译)食不厌精(食不厌精脍不厌细全文翻译)大家都喜欢吃鱼吗?反正小编我是一直喜欢的,虽说从小在湖边长大,各种鱼虾真是没少吃,但怎么都是吃不够。相比鱼虾,那些猪牛羊肉反而不是太喜欢,或许这
雅马哈电子琴(雅马哈电子琴价格大全)雅马哈电子琴(雅马哈电子琴价格大全)关于双排键电子琴常用的弹奏方法有哪些?针对这样的问题,小编整理收集了一些相关的资料可以跟大家分享下,希望可以帮助到有需要的人。关于双排键电子琴常
位置与方向(小学二年级方向坐标图)位置与方向(小学二年级方向坐标图)位置与方向这一单元一共有4个例题,虽然难度不大,但是有些孩子在账务知识点方面还是存在欠缺的。例题一主要讲解认识东南西北四个方向例题二主要讲解认识地
数码知识华为手环丢了如何找回找回教程如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道华为手环丢了如何找
数码知识华为mate30pro如何开启OLED开启OLED教程如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道华为mate30p
李庚希抽烟(李庚希怀孕)李庚希抽烟(李庚希怀孕)近期,有网友扒出mandarin的鼓手安雨和李庚希疑似恋爱,两人在演出会场里一前一后走过,随后就有人爆料,安雨在杭州演出完连夜去苏州,李庚希在苏州拍戏。随后
台湾网站(台湾SWAG官方网站进入方法)台湾网站(台湾SWAG官方网站进入方法)1yam蕃薯藤天空传媒(蕃薯藤),1997年成立,目前是台湾最大影音视频网站第二大入口网站拥有天空部落新闻财金小蕃薯揪团购购物中心等多元频道
turkey是什么意思(turkeys是什么意思)turkey是什么意思(turkeys是什么意思)原创小枪锐评20210528113820土耳其共和国是一个横跨欧亚两洲的国家,北临黑海,南临地中海,东南与叙利亚伊拉克接壤,西临爱
优胜美地(优山美地别墅)优胜美地(优山美地别墅)优胜美地其实算是美国人很喜欢的户外和攀岩的国家公园,徒步线路有深入谷中和爬山两种类型,而攀岩是更加难度高的体验了。像我们这种普通观光者就不选难度太高的项目了
ROG幻14黑色星空版上架文章来源科技讯近日有消息称ROG幻14黑色星空版现已上架R74800HSRTX2060MQ到手价12969元6月18日开卖ROG幻14黑色星空版笔记本1。7Kg重薄至19。9mm屏
就爱上电子书(爱下电子书app)就爱上电子书(爱下电子书app)小张in北京20200517080100话不多话,直接进入正题1。资源整合书享家httpshuxiangjia。cn整合上百个相关网站里面包含书籍搜