最近在学习张善友老师的 https://github.com/geffzhang/NanoFabric 框架的时了解到 Exceptionless : https://exceptionless.com/ ! 因此学习了一下这个开源框架! 下面对 Exceptionless 的学习做下笔记!
Exceptionless 是什么? 能做什么呢?
"Exceptionless" 这个词的定义是: 没有异常. Exceptionless 可以为您的 ASP.NET,web API,WebFrm,WPF, 控制台和 MVC 应用程序提供实时错误, 特性和日志报告. 它将收集的信息组织成简单的可操作的数据, 这些数据将帮助你很方便的查看异常信息. 还有最重要的是, 它是开源的!
Exceptionless 的使用方式有哪些?
1. 官网创建帐号, 并新建应用程序以及项目, 然后生成 apikey(数据存储在 Exceptionless)
2. 自己搭建 Exceptionless 的环境, 部署在本地 (数据存储在本地)
Exceptionless 的运行环境有哪些要求? 需要安装哪些软件, 进行什么配置呢?
.NET 4.6.1 (安装了. net core 或者 vs2017 的话环境应该都没问题, 不需要额外安装)
Java JDK 1.8+(如果使用 windows 系统的话需要配置环境变量, 这个使用过 java 的人应该都知道吧! 相信对于你来说应该不是难事). 下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
- IIS Express 8+(win 7 以上环境应该都没问题, 不需要额外安装)
- PowerShell 3+(win 7 以上环境应该都没问题, 不需要额外安装)
这里分 win7(管理员身份运行 cmd , 然后复制下面这条命令, 按回车就行了
powershell Set-ExecutionPolicy Unrestricted
) 以及 win10(管理员身份运行 powershell, 然后执行
- powershell Set-ExecutionPolicy Unrestricted
- )
Elasticsearch 5.6 官方推荐这个版本,(当然你也可以不进行安装, 因为后面会教你如何自动安装这个软件) 需要在历史版本中找 , 下载地址: https://www.elastic.co/downloads/past-releases
Exceptionless 下载以及配置
1. 打包下载地址: https://github.com/exceptionless/Exceptionless/releases 如下图所示进行下载就可以了!, 别看只有 15M 有的人下载可能需要半个小时, 别问为什么, 因为~~~~~
2. 下载完成之后, 右键解压
3. 看到如下的文件目录结构, 有几点需要说明, 如果你比较懒, 嫌部署到 iis 比较麻烦, 安装 Elasticsearch 也比较麻烦, 那么, 你可以双击 "Start.bat" 这个脚本, 它会自动帮你安装 Elasticsearch, 以及 (当然, 生产环境, 还是建议自己搭建 Elasticsearch 的好)
4. 如果出现下图所示, 那么你就耐心的等等就行了, 运行结束后会自动为您打开 Exceptionless 的管理页面
, 如果不幸, cmd 里面出现红色字体, 而且一闪就自动退出的话, 那就执行下 powershell Set-ExecutionPolicy Unrestricted 这个命令, 然后再双击 "Start.bat" 这个脚本运行吧!
这里分 win7(管理员身份运行 cmd , 然后复制下面这条命令, 按回车就行了
powershell Set-ExecutionPolicy Unrestricted
) 以及 win10(管理员身份运行 powershell, 然后执行
- powershell Set-ExecutionPolicy Unrestricted
- )
5. 如果全部安装成功后, 会自动为你打开几个页面. 还是先来看下目录结构吧, 如下图所示, 默认安装 Elasticsearch 是 5.5.2 同时安装了 kibana 版本也是 5.5.2
6. 打开的几个页面如下图所示, 然后在 Exceptionless 的页面, 点击注册按钮注册一个账号, 然后进行登录
7. 注册成功后, 进入如下的界面, 在两个文本框输入, 组织机构名称以及项目名称, 用来对我们的项目的异常进行分类吧
8. 下面进入项目类型配置界面, 在 1.select your project type 下拉框选择 asp.net core
9. 出现下面的界面, 说明配置完成, 并且给出使用说明. 到此 Exceptionless 的安装配置已经完成.
接下来我们通过一个实例项目进行使用说明吧
1. 新建一个 netcore api 项目, 这一步应该难不倒你吧, 我就不上图了.
2. 在程序包管理器中, 选中你的项目, 然后输入 "Install-Package Exceptionless.AspNetCore" 安装 nuget 包吧, 当然也可以通过其他方式安装, 就不介绍了
3. 在 startup.cs 中添加 引用
using Exceptionless;
然后在 Configure 方法中添加 Exceptionless 管道信息
- ExceptionlessClient.Default.Configuration.ApiKey = Configuration.GetSection("Exceptionless:ApiKey").Value;
- ExceptionlessClient.Default.Configuration.ServerUrl = Configuration.GetSection("Exceptionless:ServerUrl").Value;
- app.UseExceptionless();
然后在 appsettings.json 中添加 apikey 以及 serverurl 的配置
- "Exceptionless": {
- "ApiKey": "OvzcKg8V7bPcWU8yAYBVe6uCEKIAQm3xfEzW5yxp",
- "ServerUrl": "http://localhost:50000"
- }
好了, exceptionless 的配置以及完成, 接下来就是代码中使用了!
4. 代码中使用异常, 直接上代码吧! 就是在 ValuesController 中修改下 get 方法进行下测试, 代码很简单
- // GET api/values
- [HttpGet]
- public ActionResult Get()
- {
- try
- {
- throw new Exception("ExceptionDemo 的异常");
- }
- catch (Exception ex)
- {
- ex.ToExceptionless().Submit();
- }
- return Ok();
- }
5. 运行起来吧. 然后浏览器切换到 exceptionless 的面板进行查看吧, 会自动刷新出现异常信息, 如下图 http://localhost:50000/#!/project/5b2663e4e6c0b51dd015bdab/dashboard
6. 点击进入可以查看详细信息
总结:
本文从 Exceptionless 是什么入手, 然后介绍了 Exceptionless 的安装环境以及要求, 接下来通过图文详细的介绍了 Exceptionless 的安装以及配置. 最后通过一个 Demo 演示了如何在代码中使用 Exceptionless, 当然只是简单地一些使用! 今天的关于 asp.Net Core 免费开源分布式异常日志收集框架 Exceptionless 安装配置以及简单使用图文教程的介绍就到这里了!
来源: https://www.cnblogs.com/yilezhu/p/9193723.html