首页 > 编程语言 >ASP.NET CORE下日志NLOG使用

ASP.NET CORE下日志NLOG使用

时间:2023-08-01 11:34:07浏览次数:39  
标签:CORE ASP StackTrace NLOG ex Error NET

ASP.NET CORE下日志NLOG使用 摘自《深入浅出ASP.NET CORE》 NUGET:NLog.Web.AspNetCore 4.9.0 根目录下nlog.config

<?xml version="1.0" encoding="utf-8"?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <targets>
        <target name="allfile" xsi:type="File" fileName="Logs/${shortdate}.log"></target>
    </targets>
    <rules>
        <logger name="*" minlevel="Trace" writeTo="allfile"></logger>
    </rules>
</nlog>
.net core 3.1项目中的program
public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
             .ConfigureLogging((hostingContext, logging) =>
             {
                 logging.AddNLog(); //加入nlog
             })
            .ConfigureWebHostDefaults(webBuilder =>
            {
                webBuilder.UseStartup<Startup>();
            });
net7项目中的program 只需要加一句:builder.Logging.AddNLog(); 就行,如果要测试把下面的 if (!app.Environment.IsDevelopment())注释掉就行 /home/error方法里的代码:
    private readonly ILogger<HomeController> _logger;

[ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
public IActionResult Error()
{
        var ex = HttpContext.Features.Get<IExceptionHandlerPathFeature>();
        ViewBag.ExceptionPath = ex.Path;
        ViewBag.ExceptionMessage = ex.Error.Message;
        ViewBag.StackTrace = ex.Error.StackTrace;
        _logger.LogError($"异常路径:{ex.Path}\r\n异常信息:{ex.Error.Message}\r\n堆栈跟踪:{ex.Error.StackTrace}\r\n\r\n\r\n");
        return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
}

 

标签:CORE,ASP,StackTrace,NLOG,ex,Error,NET
From: https://www.cnblogs.com/niunan/p/17596024.html

相关文章

  • asp.net core之日志
    日志记录在应用程序开发中起着至关重要的作用,它可以帮助开发人员诊断和调试问题,同时也是监控和性能优化的重要工具。ASP.NETCore提供了强大且灵活的日志记录功能,本文将详细介绍ASP.NETCore中的日志记录,包括日志配置、日志类别级别、使用场景以及日志记录提供程序。日志配置......
  • 7种方法!教你如何使用Telerik UI for ASP.NET定制编辑器
    TelerikUIforASP.NETCore是用于跨平台响应式Web和云开发的最完整的UI工具集,拥有超过60个由KendoUI支持的ASP.NET核心组件。它的响应式和自适应的HTML5网格,提供从过滤、排序数据到分页和分层数据分组等100多项高级功能。TelerikUIforASP.NETCore的编辑器是一个多功能的所......
  • [回馈]ASP.NET Core MVC开发实战之商城系统(四)
    经过一段时间的准备,新的一期【ASP.NETCoreMVC开发实战之商城系统】已经开始,在之前的文章中,讲解了商城系统的整体功能设计,页面布局设计,环境搭建,系统配置,及首页【商品类型,banner条,友情链接,降价促销,新品爆款】,商品列表页面等功能的开发,今天继续讲解商品详情功能开发,仅供学习分享使......
  • asp.net上传文件到服务器指定文件夹问题
    ​ IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头。 一. 两个必要响应头Accept-Ranges、ETag        客户端每次提交下载请求时,服务端都要添加这两个响应头,以保证客户端和服务端将此下载识别为可以断点续......
  • 简简单单学docker在群晖nas中构建docker版aspnetcore网站
    琢磨了n天,掉了好多头发,终于可以了,踩坑无数!终于行了!先来了解下:1.net运行时runtime和sdk,简单来说就是sdk开发用的,runtime是用来运行的,所以构建dockerfile只用runtime就够了!2.docker运行不需要打包操作系统如ubuntu等进入包内!特殊需要的可以!这个问题都必须了解!正式开始1.用vs202......
  • MySQL DML 闪回之 binlog2sql
    一直以来,由于DBA的误操作或者业务bug,导致误删数据的情况都时有发生。当出现误删数据的情况时,从线上操作日志构造误删除的数据,或者DBA使用binlog和备份的方式恢复数据,不管哪种,都非常费时费力,并且容易出错。可能有的同学会说从从库恢复,但实时主从备份只能防止硬件问题,比如主库的......
  • mysql根据mysqlbinlog恢复找回被删除的数据库
    年初和朋友一起做了个项目,到现在还没收到钱呢,今天中午时候突然听说之前的数据库被攻击了,业务数据库全部被删除。看有没有什么办法恢复,要是恢复不了,肯定也别想拿钱了吧?READMEFORRECOVERYDATAAllyourdatabaseswasbackedup.Youneedtoemailusatxednydy@fexbox......
  • asp.net repeater控件
    1、ASP.NET数据控件解析2、在asp.net中怎么使用repeater控件动态绑定数据.绑成table形式的...3、c#asp.net里面的Repeater控件绑定数据具体怎么用啊?4、在asp.net中,关于Repeater控件的错误说法是?5、asp.net中怎样获取repeater中的数据ASP.NET数据控件解析1、ASP.Net......
  • CoaXPress 2.0 FPGA HOST IP Core Linux Demo
      目录Hello-FPGACoaXPress2.0HostFPGAIPCoreLinuxDemo41说明42设备连接73VIVADOFPGA工程74调试说明10图1‑1资料目录4图1‑2VIVADO工程目录结构5图1‑3SDK工程目录结构5图1‑4设备树信息6图1‑5petalinux应用程序6图2‑1ZCU10......
  • reactor.core.Exceptions$ErrorCallbackNotImplemented: java.lang.IndexOutOfBoundsE
    生产环境好好的,突然前端请求全部跨域,请求500。gateway报错。reactor.core.Exceptions$ErrorCallbackNotImplemented:java.lang.IndexOutOfBoundsException:Index:0,Size:0。所有的接口都报。原因由于gateway也集成了springboot-admin,开启了应用程序的actuator端点,导致......