之前有过2篇关于如何监控ASP.NET core项目的文章,有兴趣的也可以看看.
今天我们主要来讲讲如何监控我们的ASP.NET项目.
首先我们来介绍一下,什么是Opserver,它是Stack Overflow (Stack Overflow是一个与程序相关的IT技术问答网站。用户可以在网站免费提交问题,浏览问题,索引相关内容,在创建主页的时候使用简单的HTML。在问题页面,不会弹出任何广告,销售信息,JavaScript 窗口等。)的开源监控产品(采用MIT协议)。
stackoverflow网站是基于asp.net开发的,所以,这个开源的项目,是Stack Overflow自己使用的.
开源地址:https://github.com/opserver/Opserver
它支持监控的内容有很多,如下:
- 服务器信息由Bosun,Orion采集的或者直接监控WMI的产品和系统.
- SQL群集和单个实例
- Redis
- Elasticsearch
- 异常日志(来自StackExchange.Exceptional)
- HAProxy
- PagerDuty
- CloudFlare DNS
本次系列主要讲解如何监控SQL Server 与 项目(包括异常日志),与服务器状态
效果如图:
正文
本篇主要介绍如何搭建我们的监控平台.
首先我们需要从GitHub(https://github.com/opserver/Opserver)上去下载这个平台.
然后,本地编译.
如果你使用的TFS管理工具 应该没问题.如果是其他的版本管理工具,也许会报错解决方案可以自行百度.很简单
设置Opserver为启动项目.如图:
然后生成并启动.这个时候应该会报错.
会提示没有设置SecuritySettings.config
错误。
我们查看web.config
,会发现他默认指定了文件在Config\SecuritySettings.config
如图:
找到Config
文件夹,会看到里面有很多配置文件,而且都是以.example.json
结尾的.
找到我们的SecuritySettings.config.example
文件,去掉后缀的example
然后打开,编辑.会发现里面是如下配置:
<SecuritySettings provider="AD" apiKey="myKey">
<!-- Optional, these networks can see the overview dashboard without authentication -->
<InternalNetworks>
<Network name="SE Internal" cidr="10.0.0.0/8" />
</InternalNetworks>
</SecuritySettings>
<!--
Example of global access for everyone:
<SecuritySettings provider="alladmin" />
-->
这里其实是关于监控项目的登陆权限配置,你可以设置为AD,也就是域控帐户权限,也可以指定固定IP访问权限.
当然,我们这里暂时先设置为所有权限.也就是最下面注释了的那个.修改后的配置如下:
<!--<SecuritySettings provider="AD" apiKey="myKey">
<InternalNetworks>
<Network name="SE Internal" cidr="10.0.0.0/8" />
</InternalNetworks>
</SecuritySettings>-->
<SecuritySettings provider="alladmin" />
然后,我们继续运行启动我们的OpServer
项目.
会发现进入了登陆界面,如图:
我们输入默认的账户名密码:admin
,即可登陆.
会发现提示没有任何监控项目,因为我们还没有配置相关的监控内容.
这样就完成了我们的初步运行操作.
写在最后
关于Opserver的搭建,其实是很简单的,下篇我们来介绍如何监控我们的SQL Server 与ASP.NET应用.