前两天看到了这篇文章,亲身体会了下,确实不错,按照官方的文档试了试本地部署,折腾一番后终于成功,记下心得在此,不敢独享。

本地部署官方wiki

  • .NET 4.6.1 这个因为我装了VS2015,就没有单独再装了
  • Java JDK 1.8+ 安装完后还需配置下Java环境,系统变量添加:JAVA_HOME  对应 C:\Program Files\Java\jdk1.8.0_102 是安装jdk的目录,用户变量Path 中添加 %JAVA_HOME%\bin; 配置完成后打开cmd,运行
    java -version 如果报错的话有很多种可能,搜索一下会有解决方案,我的就是在C:\Windows\System32 目录下把java.exe改名成javaa.exe,再次cmd运行就成功了
  • IIS 8+ 这个感觉不是强制的,我win7的IIS 7.5也是可以的
  • ElasticSearch 1.7.5 (Elasticsearch 2.x is not yet supported) 到连接地址去下载1.7.5版本,人家已经说明2.x的版本不支持,找这个历史版本得翻好几页,大概在第7页左右,直接给个下载连接:elasticsearch-1.7.5 ,下载完后解压
  • 下载最新的latest Exceptionless release artifact ZIP ,下载后解压,将目录中的elasticsearch.yml 复制到到elasticsearch的解压目录的bin目录中,执行elasticsearch目录中的elasticsearch.bat,看到最后一行有
    started 就说明成功了,打开http://localhost:9200/就能看到相关信息,如果es是部署服务的话复制到config目录中,执行
    service.bat install|remove|start|stop|manager
  • 在IIS中新建一个网站,路径选择Exceptionless解压目录中的wwwroot目录,端口这里可以自定义,比如用8004,应用程序池选4.0集成
  • 修改web.config中的ElasticSearchConnectionString为es的站点http://localhost:9200,修改<add key="BaseURL" value="http://localhost:8004/#" />,注意后面的"#"
  • 修改app.config.*.js中的.constant('BASE_URL', 'http://localhost:8004')
  • 打开http://localhost:8004 就能看到登录页面了,然后创建账户-->创建项目,比如创建一个控制台项目,这里就会提示怎么使用Exceptionless
  • ExceptionlessClient.Default.Startup("oXX5BJqhS30ni045BqthqJtiSnpB0naMactfmYmI"),这里的oXX5BJqhS30ni045BqthqJtiSnpB0naMactfmYmI就是api-key
  • 新建控制台项目,使用 NuGet  安装
    Install-Package Exceptionless

在Main中写测试代码:

//ExceptionlessClient.Default.Startup("qnN5lVebQ7LA94Erkthtkq5z57xX5Wg7ZzafiMdZ");
var client = new ExceptionlessClient(c => {
c.ApiKey = "oXX5BJqhS30ni045BqthqJtiSnpB0naMactfmYmI";
c.ServerUrl = "http://localhost:8004";
}); try
{
throw new Exception("test exception "+DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss"));
}
catch (Exception ex)
{
client.SubmitException(ex);
//ex.ToExceptionless().Submit();
Console.WriteLine("error send");
}
Console.ReadKey();

这里需要注意注释掉的部分,或者是如下调用:

using Exceptionless.Configuration;
[assembly: Exceptionless("oXX5BJqhS30ni045BqthqJtiSnpB0naMactfmYmI", ServerUrl = "http://localhost:8004")]
namespace ExceptionTest
{
class Program
{
static void Main(string[] args)
{
ExceptionlessClient.Default.Startup("oXX5BJqhS30ni045BqthqJtiSnpB0naMactfmYmI");
//var client = new ExceptionlessClient(c => {
// c.ApiKey = "oXX5BJqhS30ni045BqthqJtiSnpB0naMactfmYmI";
// c.ServerUrl = "http://localhost:8004";
//});
try
{
throw new Exception("test exception "+DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss"));
}
catch (Exception ex)
{
//client.SubmitException(ex);
ex.ToExceptionless().Submit();
Console.WriteLine("error send");
}
Console.ReadKey();
}
}
}

api-key指定两次,也可以通过。

使用config配置:

<configuration>
<configSections>
<section name="exceptionless" type="Exceptionless.ExceptionlessSection, Exceptionless" />
</configSections>
<exceptionless apiKey="oXX5BJqhS30ni045BqthqJtiSnpB0naMactfmYmI" serverUrl="http://localhost:8004" />
</configuration>
using Exceptionless.Configuration;
//[assembly: Exceptionless("oXX5BJqhS30ni045BqthqJtiSnpB0naMactfmYmI", ServerUrl = "http://localhost:8004")]
namespace ExceptionTest
{
class Program
{
static void Main(string[] args)
{
ExceptionlessClient.Default.Startup("oXX5BJqhS30ni045BqthqJtiSnpB0naMactfmYmI");
//var client = new ExceptionlessClient(c => {
// c.ApiKey = "oXX5BJqhS30ni045BqthqJtiSnpB0naMactfmYmI";
// c.ServerUrl = "http://localhost:8004";
//});
try
{
throw new Exception("test exception "+DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss"));
}
catch (Exception ex)
{
//client.SubmitException(ex);
ex.ToExceptionless().Submit();
Console.WriteLine("error send");
}
Console.ReadKey();
}
}
}

这样就不需要在using那指定了。

接下来就可以在http://localhost:8004/#/type/error/dashboard中看到异常信息了。

开源分布式日志系统ExceptionLess部署杂乱笔记 加密的更多相关文章

  1. .NET开源分布式日志框架ExceptionLess实战演练(公开版)

    一.课程介绍 在以前,我们做日志收集大多使用 Log4net,Nlog 等框架,在应用程序变得复杂并且集群的时候,可能传统的方式已经不是很好的适用了,因为收集各个日志并且分析他们将变得麻烦而且浪费时间 ...

  2. 微服务-分布式日志系统Logstash部署

    参考资料: 1 .Logstash中文官网 2. 阿里云Elasticsearch> 最佳实践 > logstash部署 3. logstash.elasticsearch.kibana搭 ...

  3. Ansible实战:部署分布式日志系统

    本节内容: 背景 分布式日志系统架构图 创建和使用roles JDK 7 role JDK 8 role Zookeeper role Kafka role Elasticsearch role My ...

  4. 如何扩展分布式日志组件(Exceptionless)的Webhook事件通知类型?

    写在前面 从上一篇博客高并发.低延迟之C#玩转CPU高速缓存(附示例)到现在又有几个月没写博客了,啥也不说,变得越来越懒了,懒惰产生了拖延后遗症. 最近一周升级了微服务项目使用的分布式日志组件Exce ...

  5. 开源分布式Job系统,调度与业务分离-如何创建一个计划HttpJob任务

    项目介绍: Hangfire:是一个开源的job调度系统,支持分布式JOB!! Hangfire.HttpJob 是我针对Hangfire开发的一个组件,该组件和Hangfire本身是独立的.可以独立 ...

  6. 开源分布式Job系统,调度与业务分离-如何创建周期性的HttpJob任务

    项目介绍: Hangfire:是一个开源的job调度系统,支持分布式JOB!! Hangfire.HttpJob 是我针对Hangfire开发的一个组件,该组件和Hangfire本身是独立的.可以独立 ...

  7. 开源分布式Job系统,调度与业务分离-HttpJob.Agent组件介绍以及如何使用

    项目介绍: Hangfire:是一个开源的job调度系统,支持分布式JOB!! Hangfire.HttpJob 是我针对Hangfire开发的一个组件,该组件和Hangfire本身是独立的.可以独立 ...

  8. PowerJob 在线日志饱受好评的秘诀:小但实用的分布式日志系统

    本文适合有 Java 基础知识的人群 作者:HelloGitHub-Salieri HelloGitHub 推出的<讲解开源项目>系列. 项目地址: https://github.com/ ...

  9. C#采用rabbitMQ搭建分布式日志系统

    网上对于java有很多开源的组件可以搭建分布式日志系统,我参考一些组件自己开发一套简单的分布式日志系 全部使用采用.NET进行开发,所用技术:MVC.EF.RabbitMq.MySql.Autofac ...

随机推荐

  1. 2005 ACM 第几天 闰年

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=2005 注意:闰年 查表法 #include<stdio.h> int main() { int ...

  2. 潭州课堂25班:Ph201805201 爬虫基础 第十三课 cookie (课堂笔记)

    # -*- coding: utf-8 -*- # 斌彬电脑 # @Time : 2018/9/15 0015 4:52 #cookie 是服务器发给浏览器的特殊信息 # 可以理解为一个临时通行证 # ...

  3. rabbitmq使用(四)

    In the previous tutorial we built a simple logging system. We were able to broadcast log messages to ...

  4. Android日志工具的使用

    一.使用Android的日志工具Log 1.Android中的日志工具类是Log,这个类中提供了如下5个方法来供我们打印日志. log.v():用于打印哪些最为繁琐.意义最小的日志信息.对应级别ver ...

  5. tomcat溢出

    http://blog.csdn.net/qq_15653597/article/details/42753269?locationNum=10

  6. Codeforces Round #109 (Div. 1) 题解 【ABC】

    A - Hometask 题意:给你一个字符串,然后再给你k个禁止挨在一起的字符串,问你最少删除多少个字符串,使得不会有禁忌的字符串对挨在一起.题目保证每个字符最多出现在一个禁忌中. 题解:由于每个字 ...

  7. Python 库/模块/工具收集

    1 算法 1.1 字符串处理 re 正则表达式的标准库. StringIO / cStringIO 以读写文件的方式来操作字符串(有点类似于内存文件). cStringIO 是 C 语言实现的,提供高 ...

  8. c#代码混淆

    1.C#编写的dll库如何加密 2..NET Reactor使用教程 3..NET Reactor中各种混淆含义.原理 4..NET Reactor制作软件许可证 5..NET Reactor混淆代码 ...

  9. 【转】浅谈分布式服务协调技术 Zookeeper

    非常好介绍Zookeeper的文章, Google的三篇论文影响了很多很多人,也影响了很多很多系统.这三篇论文一直是分布式领域传阅的经典.根据MapReduce,于是我们有了Hadoop:根据GFS, ...

  10. 魅族便签,是否能成为国内便签应用的No.1?

    继前不久锤子科技推出便签 Android 新版后,近期魅族在PRO 6公布会上也公布了最新的魅族便签应用.这一次魅族把便签应用拓展到了整个Android体系,也就是说.其它不论什么的Android手机 ...