Net Core集成Exceptionless分布式日志功能以及全局异常过滤 (3)

哈哈,没什么说的了,代码都已经写好了,剩下的就是上代码测试结果了。我这里只是简单地api测试下,万能的ValuesController登场:

// GET api/values/5 [HttpGet("{id}")] public ActionResult<string> Get(int id) { //try //{ throw new Exception($"测试抛出的异常{id}"); //} //catch (Exception ex) //{ // ex.ToExceptionless().Submit(); //} //return "Unknown Error!"; }

这里是直接抛出异常,不进行trycatch,这时候异常会被全局过滤器捕获,然后放到Exceptionless的Log里面,别问我为什么会在log里面,因为我全局过滤器代码里面已经写明了,不明白的回去看代码,然后看接口调用的实现方法。下面上结果:

1532012181451

点进去,看看详细信息:

1532012249948

再测试下使用try catch捕获的异常处理,这时候异常信息会被提交到Exception这个里面。直接上代码吧

// GET api/values/5 [HttpGet("{id}")] public ActionResult<string> Get(int id) { try { throw new Exception($"测试抛出的异常{id}"); } catch (Exception ex) { ex.ToExceptionless().Submit(); } return "Unknown Error!"; }

到exceptionless里面看看不活的异常吧。打字很累直接上图吧

1532012444443

点进去看看详细信息,有三个tab,下面之粘贴一个图片了:

1532012508157

最后,源码就不上了,因为上面代码很清楚了 总结

本文没有对Exceptionless进行过多地介绍,因为博主的[上篇文章][https://www.cnblogs.com/yilezhu/p/9193723.html] 已经进行了详细的介绍。直接切入正题,先对官方高级用法进行了简单地翻译。然后对Exceptionless Log这个eventtype进行了简单地封装,让你可以像使用NLog一样很爽的使用Exceptionless。最后通过一个asp.net core web api的项目进行了演示,在全局过滤器中利用封装的Log方法进行全局异常的捕获。希望对大家使用Exceptionless有所帮助。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyyjwx.html