采用Opserver来监控你的ASP.NET项目系列(一、Opserver监控的简介与平台搭建)

时间:2022-06-08 16:26:46
前言

之前有过2篇关于如何监控ASP.NET core项目的文章,有兴趣的也可以看看.

今天我们主要来讲讲如何监控我们的ASP.NET项目.

首先我们来介绍一下,什么是Opserver,它是Stack Overflow(Stack Overflow是一个与程序相关的IT技术问答网站。用户可以在网站免费提交问题,浏览问题,索引相关内容,在创建主页的时候使用简单的HTML。在问题页面,不会弹出任何广告,销售信息,JavaScript 窗口等。)的开源监控产品(采用MIT协议)

*网站是基于asp.net开发的,所以,这个开源的项目,是Stack Overflow自己使用的.

开源地址:https://github.com/opserver/Opserver

它支持监控的内容有很多,如下:

  • 服务器信息由Bosun,Orion采集的或者直接监控WMI的产品和系统.
  • SQL群集和单个实例
  • Redis
  • Elasticsearch
  • 异常日志(来自StackExchange.Exceptional)
  • HAProxy
  • PagerDuty
  • CloudFlare DNS

本次系列主要讲解如何监控SQL Server 与 项目(包括异常日志),与服务器状态

效果如图:

采用Opserver来监控你的ASP.NET项目系列(一、Opserver监控的简介与平台搭建)

正文

本篇主要介绍如何搭建我们的监控平台.

首先我们需要从GitHub(https://github.com/opserver/Opserver)上去下载这个平台.

然后,本地编译.

如果你使用的TFS管理工具 应该没问题.如果是其他的版本管理工具,也许会报错解决方案可以自行百度.很简单

设置Opserver为启动项目.如图:

采用Opserver来监控你的ASP.NET项目系列(一、Opserver监控的简介与平台搭建)

然后生成并启动.这个时候应该会报错.

会提示没有设置SecuritySettings.config错误。

我们查看web.config ,会发现他默认指定了文件在Config\SecuritySettings.config

如图:采用Opserver来监控你的ASP.NET项目系列(一、Opserver监控的简介与平台搭建)

找到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项目.

会发现进入了登陆界面,如图:

采用Opserver来监控你的ASP.NET项目系列(一、Opserver监控的简介与平台搭建)

我们输入默认的账户名密码:admin,即可登陆.

会发现提示没有任何监控项目,因为我们还没有配置相关的监控内容.

这样就完成了我们的初步运行操作.

写在最后

关于Opserver的搭建,其实是很简单的,下篇我们来介绍如何监控我们的SQL Server 与ASP.NET应用.