189 8069 5689

ASP.NETCore中如何使用Diagnostics中间件

ASP.NET Core 中如何使用Diagnostics中间件,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

成都创新互联公司服务项目包括定边网站建设、定边网站制作、定边网页制作以及定边网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,定边网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到定边省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

报告异常和错误信息

默认创建好的项目会自动在Startup中Configure 方法加上这一段

if (env.IsDevelopment())
 {
     app.UseDeveloperExceptionPage();
     app.UseBrowserLink();
}
else{     app.UseExceptionHandler("/Home/Error"); }

这就是异常信息的报告以及处理。

在开发环境下会显示详细的错误信息 app.UseDeveloperExceptionPage();,在非开发环境,跳转至 app.UseExceptionHandler("/Home/Error"); /Home/Error页。

如果你想一直展示错误信息就将app.UseDeveloperExceptionPage(); 放置在if 外面。或者在发布之后,将对应的系统环境调成Development 以显示错误信息。

项目中使用了EF Core 。可以添加 app.UseDatabaseErrorPage(); 以显示EF Core 相关信息。

欢迎页

在Startup.cs中的Configure 方法加入:app.UseWelcomePage();

启动程序就会显示如下页面。有扩展方法,可以指定对应的页面。

ASP.NET Core 中如何使用Diagnostics中间件

HTTP错误代码页

默认程序中404 或者500 等相关错误,并不会展示页面,只会返回对应的代码。

同样在Startup.cs中的Configure 方法加入:app.UseStatusCodePages();

访问不存在的页面会显示如下。

ASP.NET Core 中如何使用Diagnostics中间件

下面是简单的自定义错误信息

app.UseStatusCodePages("text/plain", "Error, status code: {0} \r LineZero");

ASP.NET Core 中如何使用Diagnostics中间件

还可以使用

app.UseStatusCodePagesWithRedirects("~/errors/{0}"); // 相对根路径

app.UseStatusCodePagesWithRedirects("/base/errors/{0}"); // 绝对路径

也可以使用

app.UseStatusCodePagesWithReExecute("/error/http{0}");

上面两者的区别一个是跳转,一个是执行。

日志查看Elm

日志查看,也是Diagnostics 中间件的一个功能。用起来也比较方便。

需要额外添加一个 Microsoft.AspNetCore.Diagnostics.Elm 包。

安装好包打开Startup.cs ,首先在 ConfigureServices 方法加入服务。

services.AddElm(elmOptions =>
            {
                elmOptions.Filter = (loggerName, loglevel) => loglevel == LogLevel.Debug;
            });

筛选日志级别为Debug

然后再Configure 方法加入

            app.UseElmPage();
            app.UseElmCapture();

app.UseElmPage(); 为指定日志显示页,app.UseElmCapture(); 记录日志。

运行程序访问 http://localhost:5000/Elm ,就可以查看一些信息记录。

ASP.NET Core 中如何使用Diagnostics中间件

看完上述内容,你们掌握ASP.NET Core 中如何使用Diagnostics中间件的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


名称栏目:ASP.NETCore中如何使用Diagnostics中间件
标题URL:http://cdxtjz.cn/article/ijjejh.html

其他资讯