# AisinGioro **Repository Path**: codefelix/aisingioro ## Basic Information - **Project Name**: AisinGioro - **Description**: AisinGioro 是一款自动运维监控工具,用于监控主机性能参数(心跳、CPU、内存、磁盘、网站连接数),以及网络连通性(Ping、Port、Http),欢迎下载使用,或进行二次开发 - **Primary Language**: C# - **License**: LGPL-2.1 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 27 - **Forks**: 2 - **Created**: 2018-02-24 - **Last Updated**: 2024-08-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AisinGioro AisinGioro 是一款自动运维监控工具,用于监控主机性能参数(心跳、CPU、内存、硬盘、网站连接数)、网络连通性(Ping、Port、Http)、监控异常通知,基于B/S架构,主要技术 .Net/C#, SignalR, OWIN, AngularJs, Bootstrap,欢迎下载使用,或进行二次开发。 ## 开发环境 Visual Studio 2015, .Net Framework 4.6.1 ## 项目分支介绍 - AisinGiroro.Core **基础库** *C# Library* - AisinGioro.Server **服务端** *C# WinForm* 接收主机消息,分发消息;自托管前台网站 - AisinGioro.WinAgent **监控代理程序** *C# WinForm* 采集主机性能参数,发送给服务端 - AisinGioro.WebPortal **前台** *HTML5 Dashboard* 接收服务端消息,终端显示,小工具 - AisinGioro.Notify **通知处理程序** 默认是 Telegram ```mermaid sequenceDiagram Agent ->> Server: Send p-parameters Server-->>WebPortal: Receive p-parameters Server ->> Remote: Net-Monitor Ping/Port/Http request Remote -->> Server: Net-Monitor Ping/Port/Http response Server -->> WebPortal: Receive monitor result WebPortal ->> Server: Toolkit request Server ->> Remote: Toolkit request Remote -->> Server: Toolkit response Server -->> WebPortal: Receive toolkit result Server -->> Terminal: Notify by Telegram/WeChat/SMS Note right of Remote: Send notification when monitoring exception occur ``` ## 界面展示 ![服务端](https://images.gitee.com/uploads/images/2019/0421/182945_65aa6820_910237.png) 服务端 ![监控主机代理程序](https://images.gitee.com/uploads/images/2019/0421/183006_cda759e2_910237.png) 监控主机代理程序 ---------- 监控展示网站截图 ![Server List](https://images.gitee.com/uploads/images/2019/0421/183004_b0f5ef50_910237.png) ![Statistics](https://images.gitee.com/uploads/images/2019/0421/183005_b3935cec_910237.png) ![Monitor List](https://images.gitee.com/uploads/images/2019/0421/183005_9b052f1d_910237.png) ![PING console](https://images.gitee.com/uploads/images/2019/0421/183005_3bb90a6a_910237.png) ![Telnet console](https://images.gitee.com/uploads/images/2019/0421/183001_51f5f837_910237.png) ## 使用配置 **程序配置** 打开服务端 AisinGioro.Server 项目的 config 配置文件:
- configSections/notify 定义了用于发送通知消息(监控对象异常时)的处理程序,默认定义的是 Telegram,可以自定义别的程序,比如微信、短信 - appSettings/WebRootDirectory 前台网站根目录,即 AisinGioro.WebPortal 所在目录(也可以是相对目录) - appSettings/NotifyEnabled 是否启用消息通知 - notify/option 消息处理程序的配置参数,不通的处理程序根据需求定义不同的参数 **数据源配置**: AisinGioro.WebPortal/Data 下面是数据源文件 server.json 是要监控的主机列表,id 是主机标识,必须唯一,最好是有意义的字符串 { "all": [ { "id": "Office-Windows-10.3.174.171", "ip": "10.3.174.171" } ], "last": "2018-03-09 18:34" } monitor.json 是要监控的网络连通性列表,id 是标识必须唯一,type 有 Ping/Port/Http 三种,dest 是目标对象 { "all": [ { "id": "NbocK", "type": "Ping", "dest": "54.209.17.186" }, { "id": "5zswH", "type": "Port", "dest": "54.209.17.186:10443" }, { "id": "Qe3kU", "type": "Http", "dest": "http://sports.qq.com/a/20180318/010508.htm" } ], "last": "2018-03-09 18:34" } **程序运行:** 服务端: 右键管理员方式运行 AisinGioro.Server.exe,选择本机IP,设定一个端口(默认 9000),点击 Start 开启,成功后可以将窗口隐藏到任务托盘 监控代理程序: 右键管理员方式运行 AisinGioro.WinAgent.exe,输入服务端IP,设置和服务端一样的IP(默认 9000),点击 Connect 连接,成功后可以将窗口隐藏到任务托盘 监控网站: 在本地打开浏览器,监控网站URL格式:http://{server ip}:{port}/wwwroot/,假如服务器的IP是 10.3.174.171,端口9000,那监控网站的地址是 http://10.3.174.171:9000/wwwroot/