ExceptionLess 搭建到本地服务器
Exceptionless 是一个开源的实时的日志收集框架,它可以应用在基于 ASP.NET,ASP.NET Core,Web Api,Web Forms,WPF,Console,MVC 等技术栈的应用程序中,并且提供了Rest接口可以应用在 Javascript,Node.js 中。它将日志收集变得简单易用并且不需要了解太多的相关技术细节及配置。
在以前,我们做日志收集大多使用 Log4net,Nlog 等框架,在应用程序变得复杂并且集群的时候,可能传统的方式已经不是很好的适用了,因为收集各个日志并且分析他们将变得麻烦而且浪费时间。
1 从官网下载发布包
https://github.com/exceptionless/Exceptionless/releases
2 参考官方文档 安装部署
https://github.com/exceptionless/Exceptionless/wiki/Self-Hosting
3 鼠标双击 Start.bat(管理员模式) 运行即可
注意:此项目 依赖 ElastaicSearch 项目。(一个搜索引擎项目)先把这个包下载放到目录最好,ps下载不支持断点续传......
访问 http://127.0.0.1:50000/api/v2/status
检测安装状态
二、使用本地服务 Exceptionless 的客户端如何配置
- mvc 环境下, 从 nuget 安装 Exceptionless.Mvc
- <exceptionless apiKey="fT97ZX7Decl09SsFPKBMB2lWrS6wiWK6V6CiMAtX" serverUrl="http://localhost:50000"/> 其中加了 serverUrl="http://localhost:50000" 即 跑Exceptionless服务的地址
三、通过以上操作,就完成了 Exceptionless 的本地搭建
如果发布在局域网的机器,那么,需要改动 BaseURL节点
改成局域网IP 端口号
还要改 app.config.*.js 里面的baseUrl 配置 麻烦。
开启时候 先把搜索引擎 ES 开启。执行安装包下的 Start-ElasticSearch.ps1 脚本
四 开启Redis 缓冲服务
在Linux 下部署很简单 win server 下 ,安装非官方的redis-win 版本
http://www.redis.io/
下载页- 连接到微软开放技术组 在git上的 redis 3.2 win版本。(不推荐在生产环境用win版本,都说测试运行不稳定............!)
以windows 服务的形式运行。
redis 远程访问
原来是redis默认只能localhost登录,所以需要开启远程登录。解决方法如下:
在redis的配置文件redis.conf中,找到bind localhost注释掉。
注释掉本机,局域网内的所有计算机都能访问。
band localhost 只能本机访问,局域网内计算机不能访问。
bind 局域网IP 只能局域网内IP的机器访问, 本地localhost都无法访问。
在redis3.2之后,redis增加了protected-mode,在这个模式下,即使注释掉了bind 127.0.0.1,再访问redisd时候还是报错,如下
修改办法:protected-mode no
五 异常数据-默认存储在文件中,目录
<!-- Folder used to store event post data -->
<add key="StorageFolder" value="|DataDirectory|\storage"/>
而且异常信息进行了加密处理
{
"ProjectId": "590a8e5c002f0e0f44a5ef7f",
"Data": "H4sIAAAAAAAEAMVWW4vbRhT+K0b0oSW2mItkW3pK2W6IIdkN2U1aWAUxksb2EF3MzMjZbVhoSy4tBNKXfWj71D6X0odS0jT/prtx8i9yxpK1F9sNNAnFL9KZmfN93zmf5njvvqUPJtzyLS5lIa22lTBtXgnCvQ5yO8jZxcinxHd6dreLIOxcQn0foWors/z71uUpl0oUORzDNjI/WLxcKi7Nqkh4roU+gNVPk0zkQmnJNGAdwqYKFXZlRVKmXFn+3uI5FInl47aVs8wQ2uVKb+7HfKIB6RpXCjBW4QoVAp4EOC1L3rZiyUFREq7UhamPsE16oIp4jS7AF0Ox7oypBbEx6hLXc+szh+1zrEnDumGcXmTsAF/suXhO+l9JEsd3HZtiiGL3LSSdDsa7mPgIznSXGnVDAsdY314i8dHHtzdv7gy2t8KdW1euDL74pEV6mHhD6hBiHV5QR1ersz8XeVLce1eVXYTp21rRqHR9umzH/6ryDsCBDjYyQLM/fjl5cfTqz4cnj58fP3/08uj32d8PZkdPXv/w/T9ffQNo9Wezc6A0z+xBnvD97VJvD2+yfMSbwsBGpVl8NwTPx3zu7oTHKZMiH4Wmimoyj9d5jIpmeYGgzZvVFH3EdbgxZlJV5Vl0pYNPKzC4tj0cKq6r6BbTYsoXEQSf3YRJyKWhQHNGdWJhNJwqG+Sakvp1DdUFnBpAmYcsVfC9DRSU4ezbvA4srUNQZmOnoUirpMZFfhCcPPz15Omz1z//NfvptyA456sgUDK+EOuYlpIgWLoUggC6PwJ1dmzqk4ocYMosMlcR7YEFi7TMgCzB7TWNWHXPLPWkBjltynUm8vP9WNmOPrnYDuL21jaEyZE647S5D/bufJCWgPc1wIG1gMa4SEyOD2jU/9mA88mTT4Us8gyGhUkxkUUMzS5kGBelCTkAXGiWhpPxgRIxPGQ8K8xc6VPcc13ketBMNmUiZRFIW9oGF7aLPEJdYmyXZSxPQuNHEBC8Z89HIg+Cz3hUjlYs21M1LpS2+T4PrBZUrZYarhus9YEzO03brD5y0JlYJTNU4ktIQsDGFLldqNkYLvmkOuHBdibjsdA81qU0YPtdB4JF2KBfF7EsVDHUrXp8tDBqHb/4+vjZj7Pvvq33ns6Trk1sj6Bq1GcMcufNPbJxdXOrc2PD/AfI4dJN04oFcIuxk/T7CXcdL6KMRnHk0ChCXr9PmUkkoeMi4+H5uUURxZ7tABoMeLDNG/dqtVEsCQAA",
"CharSet": "utf-8",
"MediaType": "application/json",
"ApiVersion": 2,
"UserAgent": "exceptionless/4.0.0",
"ContentEncoding": "gzip",
"IpAddress": "172.16.20.248"
}
UI
用的Angular.js 1.64开发的单页面程序。
主题包地址:https://github.com/exceptionless/Exceptionless.UI
编译后 合并为单个app.*.js
集成了
/**
* @license AngularJS v1.6.4
* (c) 2010-2017 Google, Inc. http://angularjs.org
* License: MIT
*/
(function(window) {'use strict';
-------------------------------------------------------------------
六 集成为win 服务
将ES 注册为win 服务 在bin 下的 -service.bat install remove
----------注意,如果使用了excepless 的 Start-ElasticSearch.ps1 脚本启动,那么他使用的是 node-1 节点的es ,用户数据 在 data目录一定要注意!!!!!!!!!!!!!
示范代码:
public class ExceptionLessLog :ILog
{
/// <summary>
/// 跟踪
/// </summary>
public void Trace(string message, params string[] tags)
{
ExceptionlessClient.Default.CreateLog(message, LogLevel.Trace).AddTags(tags).Submit();
}
/// <summary>
/// 调试
/// </summary>
public void Debug(string message, params string[] tags)
{
ExceptionlessClient.Default.CreateLog(message, LogLevel.Debug).AddTags(tags).Submit();
}
/// <summary>
/// 信息
/// </summary>
public void Info(string message, params string[] tags)
{
ExceptionlessClient.Default.CreateLog(message, LogLevel.Info).AddTags(tags).Submit();
}
/// <summary>
/// 警告
/// </summary>
public void Warn(string message, params string[] tags)
{
ExceptionlessClient.Default.CreateLog(message, LogLevel.Warn).AddTags(tags).Submit();
}
/// <summary>
/// 错误
/// </summary>
public void Error(string message, params string[] tags)
{
ExceptionlessClient.Default.CreateLog(message, LogLevel.Error).AddTags(tags).Submit();
}
}
参考:
https://github.com/exceptionless/Exceptionless/
http://www.cnblogs.com/kangwl/p/5859416.html
http://www.cnblogs.com/savorboard/p/exceptionless.html
http://www.cnblogs.com/LiangSW/p/6026817.html
http://www.fwhyy.com/2016/09/use-exceptionLess/
http://mp.weixin.qq.com/s?__biz=MzAwNTMxMzg1MA==&mid=2654067937&idx=1&sn=01e502d9ef5cf77817aa80db6903923d&scene=0#wechat_redirect
ExceptionLess 搭建到本地服务器的更多相关文章
- 搭建Git本地服务器
搭建Git本地服务器 参考文章:http://www.ossxp.com/doc/git/gitolite.html 当前任务,学习中... 公司小范围用法: 服务器上做的: .在服务器上建立一个用户 ...
- linux下搭建svn本地服务器
在linux下搭建svn本地服务器可以很好的管理自己的代码,具体过程如下: # mkdir svn_local # cd svn_local # svnadmin create led_diplay ...
- [ 搭建Redis本地服务器实践系列二 ] :图解CentOS7配置Redis
上一章 [ 搭建Redis本地服务器实践系列一 ] :图解CentOS7安装Redis 详细的介绍了Redis的安装步骤,那么只是安装完成,此时的Redis服务器还无法正常运作,我们需要对其进行一些配 ...
- [ 搭建Redis本地服务器实践系列一 ] :图解CentOS7安装Redis
上一章 [ 搭建Redis本地服务器实践系列 ] :序言 作为开场白介绍了下为什么要写这个系列,从这个章节我们就开始真正的进入正题,开始搭建我们本地的Redis服务器.那么关于Redis的基本概念,什 ...
- [ 搭建Redis本地服务器实践系列 ] :序言
说起来,是在一个气候适宜的下午,虽然临近下班,不过办公室里还是充满了忙碌的身影,不时的还会从办公区传来小伙伴们为了一个需求而激烈争论的声音,自从入了互联网这个行业,说实话,也就很少休息了,当然了也不全 ...
- [ 搭建Redis本地服务器实践系列三 ] :图解Redis客户端工具连接Redis服务器
上一章 [ 搭建Redis本地服务器实践系列二 ] :图解CentOS7配置Redis 介绍了Redis的初始化脚本文件及启动配置文件,并图解如何以服务的形式来启动.终止Redis服务,可以说我们的 ...
- 搭建https本地服务器:如何得到被所有客户端认可的ssl证书
https,作为http的加密版,作用还是很大的:能够提升网站搜索权重,让你的网站更安全,而且如果你的网站没有使用https的话,将无法作为移动设备原生应用的api接口.可见掌握为网站启用https的 ...
- 搭建apache本地服务器·Win
1.下载apache地址:https://www.apachelounge.com/download/ 注意:下载压缩包如下 httpd-2.4.37-win64-VC15.zip 其中根据自己电脑的 ...
- 使用Node.js搭建一个本地服务器
let http = require('http'); //创建一个http let server = http.createServer((request,response)=>{ //创建一 ...
随机推荐
- matlab快捷键大全
原文地址,点此查看 一.常用对象操作 除了一般windows窗口的常用功能键外. 1.!dir 可以查看当前工作目录的文件. !dir& 可以在dos状态下查看. 2.who 可以查看当前 ...
- Delphi 跨平台 Socket 通讯库
Delphi 跨平台 Socket 通讯库 免费开源的Delphi 跨平台 Socket 通讯库. 源码URL:https://github.com/winddriver/Delphi-Cross-S ...
- 新手学习selenium路线图(老司机亲手绘制)-学前篇
前言: 本来这篇是只在微信公众号(yoyoketang)上发布的,最近一搜,发现本很多人copy(copy公众号的,图片是加载不出来的)了,还没注明出处,不想多说什么,博客上也同步更新这篇吧! 最近群 ...
- 栅栏加解密python实现(支持密钥加密)
栅栏加解密是对较短字符串的一种处理方式.给定行数Row,依据字符串长度计算出列数Column,构成一个方阵. 加密过程:就是按列依次从上到下对明文进行排列,然后依照密钥对各行进行打乱.最后以行顺序从左 ...
- POP按钮动画
POP按钮动画 效果 源码 https://github.com/YouXianMing/Animations // // ButtonPressViewController.m // Faceboo ...
- [runtime] initialize方法讲解
+ (void)initializeDescription(描述) Initializes the class before it receives its first message. 在这个 ...
- Objective-C:继承、分类(Category、extension)、协议(protocol),个人理解,仅供参考
总结:继承.分类(Category.extension).协议(protocol) 一.继承: (1)特点: 继承多用于一般父类中的方法功能比较齐全,子类从父类继承过来使用,可以省略很多重复的代码 ...
- GO语言基础之interface
接口interface 1. 接口是一个或多个方法签名的集合 2. 只要某个类型拥有该接口的所有方法签名,即算实现该接口,无需显示声明实现了哪个接口,这称为 Structural typing 3. ...
- (https专业版)2018年1月5日高仿互站仿友价T5虚拟交易+实物交易商城-站长交易源码送手机版程序10套模版+首页微信登陆+头部下拉导航
(https专业版)2018年1月5日高仿互站仿友价T5虚拟交易+实物交易商城-站长交易源码送手机版程序10套模版+首页微信登陆+头部下拉导航 首页支持微信登陆,只有第8套模板支持(endv模板),后 ...
- 【canvas】N角光阑
这回把光阑代码统一了,修改angleCount的数目为3就是三角光阑,angleCount的数目为4就是四角光阑,angleCount的数目为6就是六角光阑,目前代码中是12角光阑. 图示: 代码: ...