后台管理

 首页统计的是当天每个时段的异常数量, 使用的是echarts组件, 红框所示, 可以选择不同的系统进行查看。 
 
 得益于echarts的强大功能, 你可以使用柱状图来查看。 
 
 站点列表, 就是使用异常日志报警服务的站点, 主要包括名称, 域名, 负责人及负责人联系方式, 以及健康检查页面等信息。 
 
 点击修改可以对站点信息进行维护。 
 
 
 点击服务器列表, 可以将该站点下的服务器加入进来
 
 
 异常信息查看。 
 
 
 点击查看,可以查看更详细的信息。
 
 
 
 

项目结构

 
Admin:后台管理
API:服务接口, 用于接收异常日志信息
Business:业务逻辑层, 封装了对数据库的访问
Dto:数据实体,用于前端的显示。 
HandleService:处理异常信息, 发送通知
HealthyCheckService:站点健康检查服务,主要是模拟请求, 监测站点是否正常。 
Model:数据库实体
Utility:工具类合集
Warning-client:客户端, 可以方便集成。 
 
其中数据访问使用了petapoco,一个简单的ORM工具, 速度仅次于Dapper, 但是功能比Dapper丰富, 支持类似EF方式的增删改, 同时支持类似Dapper的查询, 并支持分页。 
前台显示使用了Dto, Dto和Model的映射是用AutoMapper
因为项目复杂度在可控范围内, 所以我并没有独立数据访问层和业务逻辑层, 很多的数据库操作分散在了代码中,当然这不是一个好习惯, 随着业务的发展,复杂度也会上升。 
 
 

如何集成

除了引用客户端以外, 我们还需要在使用的站点中做如下的配置, 其中WebToken就是之前分配的站点Token , 是为了标示一个站点, 这个信息会随异常信息一起发送到服务端。  Module就是为了捕获未处理的异常, 上传异常信息的地址已经硬编码在代码中。 当然做成配置的会更好。  

.Net分布式异常报警系统-项目介绍的更多相关文章

  1. .Net分布式异常报警系统-简介

    系统简介 分布式异常报警系统就是收集系统运行过程中产生的未处理异常,检查系统运行的状态,并将异常信息统一发送到服务端,由服务端将信息通知到相关的责任人.  问题 我们在项目开发中可能遇到以下几个问题: ...

  2. .Net分布式异常报警系统-服务端站点管理

    管理站点 对于管理站点, 并没有太复杂的内容, 主要就是对数据库表中的数据进行维护.  管理的实体有3个 WebSite(站点信息), WebService(站点服务器信息), ErrorEntity ...

  3. .Net分布式异常报警系统-服务端Service

    服务端的2个Service 1. HandleService: 从Redis中获取异常信息, 入库并发送通知到相关责任人.  2. HealthyCheckService: 对站点指定页面进行模拟访问 ...

  4. .Net分布式异常报警系统-客户端及服务端API

    客户端 客户端的作用就是捕获未处理异常, 发送异常到服务端. 关于捕获未处理异常的方法参考 http://www.cnblogs.com/youring2/archive/2012/04/25/246 ...

  5. asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程

    最近在学习张善友老师的NanoFabric 框架的时了解到Exceptionless : https://exceptionless.com/ !因此学习了一下这个开源框架!下面对Exceptionl ...

  6. C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志

    C#实现多级子目录Zip压缩解压实例 参考 https://blog.csdn.net/lki_suidongdong/article/details/20942977 重点: 实现多级子目录的压缩, ...

  7. Net Core免费开源分布式异常日志收集框架Exceptionless

    asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 https://www.cnblogs.com/yilezhu/p/9193723.htm ...

  8. 【转】asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程

    最近在学习张善友老师的NanoFabric 框架的时了解到Exceptionless : https://exceptionless.com/ !因此学习了一下这个开源框架!下面对Exceptionl ...

  9. Oschat IM 开源即时通讯项目介绍 - FengJ的个人页面 - 开源中国社区

    Oschat IM 开源即时通讯项目介绍 - FengJ的个人页面 - 开源中国社区 Oschat IM 开源即时通讯项目介绍    255人收藏此文章, 我要收藏 发表于5天前(2013-08-28 ...

随机推荐

  1. DGbroker主备切换

    1.检查DG是否正常 DGMGRL> show configuration; Configuration - dgc Protection Mode: MaxProtection Databas ...

  2. Fiddler基本原理与抓取Andriod与IOS的App数据包

    Fiddler基本原理 Fiddler数据包的原理是Fiddler将自己设置为一个代理服务器,默认监听127.0.0.1:8888端口同时将浏览器的HTTP.HTTPS协议设置为使用代理服务器也就是使 ...

  3. Java的String.valueOf 转换 与、空串+类型变量转换与封装类(Integer)的toString方式转换比较。

    1.空串+类型变量方式转换 int i=20; String s=""+i; 这种方式实际上经过了两个步骤,首先进行了i.ToString()把 i 转换为 字符串,然后再进行加法 ...

  4. java怎么建立JAVA工程项目?

    File->New->Java Project;src->New->Class; 出现packet,运行出错的问题 然后如果不要包packet 的话,不要在此处填写包的名称就行 ...

  5. mapred-site.xml 配置在线更新

    环境:ibm jdk , cdh2.35.0.2 需求:更新mapred-site.xml 中的mapreduce.map.java.opts 和 mapreduce.reduce.java.opts ...

  6. [转]ASP.Net篇之Session与Cookie

    本文转自:http://www.cnblogs.com/japanbbq/archive/2011/08/31/2160494.html Session: Session是“会话”的意思,然而,因为h ...

  7. [转]UpdatePanel的用法详解

    本文转自:http://www.cnblogs.com/shangxia/articles/2281782.html 今天用做日历显示本月的考勤记录,用到了UpdatePanel控件,才发现对这个控件 ...

  8. Java开发之abstract 和 interface的区别

    Java开发abstract 和 interface的区别 java开发里面经常会用到虚函数和接口,这两者的区别是什么呢? abstract: 子类里面只能继承一个父类 interface: 子类可以 ...

  9. CF 375B Maximum Submatrix 2[预处理 计数排序]

    B. Maximum Submatrix 2 time limit per test 2 seconds memory limit per test 512 megabytes input stand ...

  10. 利用 Process Monitor 找出某个 Windows 选项所对应的注册表值

    多 时候我们要调整一项 Windows 的功能时只需更改一下注册表即可实现.而很多大家眼中所谓的高手,对 Windows 注册表更是玩得出神入化.难道这些高手把 Windows 注册表都记下来了?答案 ...