异常日志框架Exceptionless结合.NET Core(本地部署)
一、前言
1、分布式异常日志收集框架Exceptionless是开源的工具,根据官方给出的说明: Exceptionless可以为您的ASP.NET、Web API、WebFrm、WPF、控制台和MVC应用程序提供实时错误、特性和日志报告。它将收集的信息组织成简单的可操作的数据,这些数据将帮助你很方便的查看异常信息。
2、Exceptionless提供两种使用方式,一种是 官网创建账号;一种是自己搭建本地项目。官网上创建账号的操作方式可以参考github上的官方wiki。此处主要介绍本地部署。
阅读目录
- 前言
- 环境要求
- 部署Exceptionless
- .NET Core结合Exceptionless
- 总结
二、环境要求
根据Exceptionless 给出的环境要求如下:
测试环境:
- 操作系统windows
- .NET 4.6.1
- JAVA JDK1.8+
- IIS Express 7.5+(win7以上系统都没有问题)
- Elasticsearch 5.x
生产环境:
- 操作系统windows或Linux
- .NET 4.7
- JAVA JDK1.8+
- IIS Express 7.5+(win7以上系统都没有问题)
- Elasticsearch 5.x(部署在Linux上(强烈建议),并且是多节点运行)
- Redis 3.0+(可选,部署在Linux上(强烈建议))
三、部署Exceptionless
1、配置JAVA JDK 1.8
说明:为什么需要安装JAVA JDK呢?由于es需要依赖此环境。
第一步:从官网上下载JDK windows 包
地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
第二步:安装JDK后配置windows环境变量
设置系统变量添加java jdk的安装目录。

在用户变量中添加 JAVA_HOME的系统变量路径。

配置结束。查看JAVA是否安装成功。提示如下:即代表安装成功。

2、部署Exceptionless
Exceptionless 下载地址:https://github.com/exceptionless/Exceptionless/releases
下载后解压出来:把wwwroot部署在IIS上

此处项目的端口可自己配置,默认是50000。
如需自己配置需要修改一下几个地方:
第一:修改web.config 中的BaseURL 中的端口。
第二:修改app.config.*.js文件中的 BASE_URL 端口。
第三:IIS上端口需要设置为自己的端口。
3、一键安装 es
双击打开 Start.bat,这将自动启动Elasticsearch,IIS Express和默认浏览器到Exceptionless登录页面。
注:如果出现错误,请确保java 环境安装完成。

安装结束当前目录下会出现es和kibana,以及自动打开 Exceptionless 项目

4、注册本地账号Exceptionless
第一步:注册账号


第二步:注册完后即可进入到主页面。创建一个组织和项目名(每个项目都有对应唯一的apikey)

第三步:选择项目多对应的类型。选择完后会出现对应的安装提示。


四、.NET Core结合Exceptionless
1、新建一个.NET Core项目
引入nuget包:

2、配置appsettings.json
此处的ApiKey在 Exceptionless中所创建项目获取,正是根据这个我们才能把项目匹配到exceptionless中
"Exceptionless": {
"ApiKey": "aW6nxAsLNE5JcFthRbjbh5Ot2iFk4MgrcZtC35Ut",
"ServerUrl": "http://localhost:50000"
}
3、配置Startup.cs
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
ExceptionlessClient.Default.Configuration.ApiKey = Configuration.GetSection("Exceptionless:ApiKey").Value;
ExceptionlessClient.Default.Configuration.ServerUrl = Configuration.GetSection("Exceptionless:ServerUrl").Value;
app.UseExceptionless(); app.UseMvc();
}
4、Controller 控制器添加测试代码异常
[Route("api/[controller]")]
public class ValuesController : Controller
{
[HttpGet]
public ActionResult Get()
{
try
{
throw new Exception("LouieGuo测试项目的异常");
}
catch (Exception ex)
{
ex.ToExceptionless().Submit(); //这个很重要
}
return Ok();
}
}
5、运行项目,然后打开Exceptionless Dashboard
可以看到 已经有错误信息显示了。

五、总结
此文配置只是测试,生产环境请使用自己部署的es和redis等。希望能帮助到你。
参考资料:
github:https://github.com/exceptionless/Exceptionless/wiki/Self-Hosting
KAnts:https://www.cnblogs.com/ants/p/8580890.html
依乐祝:https://www.cnblogs.com/yilezhu/p/9193723.html
uptothesky:http://www.cnblogs.com/uptothesky/p/5864863.html
asp.net core 交流群: 欢迎加群交流
如果您认为这篇文章还不错或者有所收获,您可以点击右下角的【推荐】按钮精神支持,因为这种支持是我继续写作,分享的最大动力!
微信公众号:欢迎关注 QQ技术交流群: 欢迎加群

异常日志框架Exceptionless结合.NET Core(本地部署)的更多相关文章
- .NET开源分布式日志框架ExceptionLess实战演练(公开版)
一.课程介绍 在以前,我们做日志收集大多使用 Log4net,Nlog 等框架,在应用程序变得复杂并且集群的时候,可能传统的方式已经不是很好的适用了,因为收集各个日志并且分析他们将变得麻烦而且浪费时间 ...
- 分布式日志框架Exceptionless之生产环境部署步骤
Exceptionless 是一个开源的实时的日志收集框架,它将日志收集变得简单易用并且不需要了解太多的相关技术细节及配置.本篇基于我的上一篇<基于Exceptionless实现分布式日志> ...
- ExceptionLess ASP.NET MVC 异常日志框架
Exceptionless 一个开源的实时的日志收集框架,它可以应用在基于 ASP.NET,ASP.NET Core,Web API,Web Forms,WPF,Console,ASP.NET MVC ...
- C# 在WPF中使用Exceptionless异常日志框架
登录http://exceptionless.com/官网,注册一个账户. 创建项目 选择wpf项目类型 拷贝下箭头指的这个密钥,过后程序里用的到. 下面我们打开vs,新建一个wpf的项目 打开git ...
- .NetCore 分布式日志收集Exceptionless 在Windows下本地安装部署及应用实例
自己安装时候遇到很多问题,接下来把这些问题写出来希望对大家有所帮助 搭建环境: 1.下载安装 java 8 SDK (不要安装最新的10.0) 并配置好环境变量(环境变量的配置就不做介绍了) 2.下载 ...
- 开源日志框架Exceptionless使用教程
Exceptionless是一款日志记录框架,它开源.免费.提供管理界面.易于安装和使用.ExceptionLess底层采用ElasticSearch作为日志存储,提供了快速.丰富的查询API,方便我 ...
- .Net Core 集成ExceptionLess分布式日志框架之本地化部署
前言 公司目前使用的项目中关于日志记录这块,之前一直都是使用的Log4net 存放于后台文件中的,对于异常错误啊,或者需要查看一些详情错误的时候感觉很不方便,要到服务器上去打开日志文件检索错误,降低了 ...
- Net Core开源日志框架
Net Core开源日志框架 Exceptionless - .Net Core开源日志框架 作者:markjiang7m2原文地址:https://www.cnblogs.com/markjiang ...
- .NET Core跨平台部署于Docker(Centos)- 视频教程
(双击全屏播放) 往期教程: .NET开发框架(一)-框架介绍与视频演示 .NET开发框架(二)-框架功能简述 .NET开发框架(三)-高可用服务器端设计 .NET开发框架(四)-服务器IIS实践教程 ...
随机推荐
- Django中Celery http请求异步处理(四)
Django中Celery http请求异步处理 本章延续celery之前的系列 1.settings配置 2.编写task jib_update_task任务为更新salt jid数据 3.url设 ...
- Python案例
我感觉好方啊,Python和C语言不一样啊....写了几个例子... 变量 变量的占位后面没有逗号啊啊啊啊 name='张泉' age=22 tel=110 print ('姓名:%s,年龄:% ...
- 项目中经常用到的JavaScript方法
1. js切割字符串 String.split() 注意:此方法与Array.join执行的方法是相反的. 2. js把数组中所有元素放入一个字符串 Array.join()
- Shell中的case命令
case语句和判断语句[if...elif...else]功能类似;当在逻辑判断比较简单的情况下,比后者的代码量要少许多.case用法,用变量来匹配某值,如果匹配成功则执行它下面的命令,直到 ::为止 ...
- Mahalanobis距离(马氏距离)的“哲学”解释
讲解教授:赵辉 (FROM : UESTC) 课程:<模式识别> 整理:PO主 基础知识: 假设空间中两点x,y,定义: 欧几里得距离, Mahalanobis距离, 不难发现,如果去掉马 ...
- LOJ 2249: 洛谷 P2305: 「NOI2014」购票
题目传送门:LOJ #2249. 题意简述: 有一棵以 \(1\) 号节点为根节点的带边权的树. 除了 \(1\) 号节点的所有节点上都有人需要坐车到达 \(1\) 号节点. 除了 \(1\) 号节点 ...
- mysql学习------错误日志和通用查询日志
一.启动错误日志 1.在不同情况下,错误日志会记录在不同的位置.如果没有在配置文件中指定文件名,则文件名默认为hostname.err 2.在mysql5.6的rpm发布方式中,错误的日志默认的放置在 ...
- 基于ZedBoard的Webcam设计(一):USB摄像头(V4L2接口)的图片采集【转】
转自:http://www.cnblogs.com/surpassal/archive/2012/12/19/zed_webcam_lab1.html 一直想把USB摄像头接到Zedboard上,搭建 ...
- git学习——Git 基础要点【转】
转自:http://blog.csdn.net/zeroboundary/article/details/10549555 简单地说,Git 究竟是怎样的一个系统呢?请注意,接下来的内容非常重要,若是 ...
- IE浏览器如何调试Asp.net的 js代码
不管我们开发什么项目,都需要使用调试.后端的调试比较简单.前端js调试稍微复杂了一点,但是也别怕,因为我们有很多调试前端js代码的浏览器工具.比如IE浏览器.firefox浏览器.chrome浏览器等 ...