Metrics+ElasticSearch+grafana
Metrics+ElasticSearch+grafana——性能监控解决方案
https://blog.csdn.net/Shiyaru1314/article/details/76906461
利用Metrics+ElasticSearch+grafana来构建监控平台
Metrics 采集数据
ElasticSearch 存储数据
Grafana 显示数据
Metrics
Metrics.NET是一个给CLR提供度量工具的包,在c#中嵌入metrics代码,可以方便对业务代码的各个指标进行监控。
只需在.NET项目中添加Nuget安装包,Metrics.Net
以及写入到ElasticSearch的Nuget安装包Metrics.Net.ElasticSearch,如果找不到,可以通过Nuget程序包控制台安装
安装命令如下:
Install-Package Metrics.NET.ElasticSearch -Version 0.5.0-pre -Pre
ElasticSearch
其使用安装,参考本博客专栏,在此不做过多介绍
Grafana
是一个开源的指标量监测和可视化工具
官方在线的demo可以在这里找到: http://play.grafana.org
安装命令:
grafana-server.exe
安装扩展的展示插件
安装饼图命令:grafana-cli plugins install grafana-piechart-panel
添加grafana为windows服务
使用nssm.exe
将nssm.exe拷贝到安装包的bin下,安装。在弹出的窗体中添加bin目录,点击install service
可安装成功,会显示一个弹出窗,表示安装success。查看服务中是否成功添加,并启动。
以上步骤就完成全部的安装
接下来,看怎么使用
数据收集
C#代码中编写测试demo,写一个随机数到ElasticSearch
[csharp] view plain copy
static void Main(string[] args)
{
MetricsConfig();
}
private static void MetricsConfig()
{
var esConfig = new ElasticReportsConfig() { Host = "192.168.25.235", Port = 9200, Index = "metrics" };
Metric.Config
.WithHttpEndpoint("http://localhost:1234/metrics/")
.WithReporting(config => config
.WithElasticSearch(esConfig, TimeSpan.FromSeconds(1))
);
while (true)
{
ToElastic();
}
}
private static void ToElastic()
{
Metric.Gauge("Errors", () => Ran.Next(300, 500), Unit.None);
Metric.Gauge("% Percent/Gauge|test", () => Ran.Next(0, 100), Unit.None);
Metric.Gauge("& AmpGauge", () => Ran.Next(0, 1), Unit.None);
Metric.Gauge("()[]{} ParantesisGauge", () => Ran.Next(22, 23), Unit.None);
Metric.Gauge("Gauge With No Value", () => 0, Unit.None);
Console.WriteLine("done setting things up");
Console.ReadKey();
}
查看定义的metrics终结点,metrics自带的数据可视化界面。
grafana数据展示
第一步,添加数据源
第二步添加Dashboard
第三步配置展示数据
dashboard通过导入方式添加
可以添加本地的dashboard文件,上传指定文件即可
也可以添加grafana.com上提供的模板,通过id或是url
我们看一下,如何使用在线的模板‘
然后出现
Metrics+ElasticSearch+grafana的更多相关文章
- 基于.net core微服务(Consul、Ocelot、Docker、App.Metrics+InfluxDB+Grafana、Exceptionless、数据一致性、Jenkins)
1.微服务简介 一种架构模式,提倡将单一应用程序划分成一组小的服务,服务之间互相协调.互相配合,为用户提供最终价值.每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(RESTfu ...
- .NET Core微服务之基于App.Metrics+InfluxDB+Grafana实现统一性能监控
Tip: 此篇已加入.NET Core微服务基础系列文章索引 一.关于App.Metrics+InfluxDB+Grafana 1.1 App.Metrics App.Metrics是一款开源的支持. ...
- .net core使用App.Metrics+InfluxDB+Grafana进行APM监控
一.InfluxDB 1.下载InfluxDB wget https://dl.influxdata.com/influxdb/releases/influxdb-1.5.2.x86_64.rpm 2 ...
- 利用Metrics+influxdb+grafana构建监控平台(转)
转自http://www.jianshu.com/p/fadcf4d92b0e 这里再配合Influxdb和Grafana可以构建一个非常漂亮的实时监控界面. Grafana监控界面 采集数据(Met ...
- 微服务监控之二:Metrics+influxdb+grafana构建监控平台
系统开发到一定的阶段,线上的机器越来越多,就需要一些监控了,除了服务器的监控,业务方面也需要一些监控服务.Metrics作为一款监控指标的度量类库,提供了许多工具帮助开发者来完成自定义的监控工作. 使 ...
- 利用Metrics+influxdb+grafana构建监控平台
https://blog.csdn.net/fishmai/article/details/51817429
- Spring Boot Metrics监控之Prometheus&Grafana(转)
欢迎来到Spring Boot Actuator教程系列的第二部分.在第一部分中,你学习到了spring-boot-actuator模块做了什么,如何配置spring boot应用以及如何与各样的ac ...
- 使用Metrics监控应用程序的性能
在编写应用程序的时候,通常会记录日志以便事后分析,在很多情况下是产生了问题之后,再去查看日志,是一种事后的静态分析.在很多时候,我们可能需要了解整个系统在当前,或者某一时刻运行的情况,比如当前系统中对 ...
- timeSeries db之:使用Metrics监控应用程序的性能 (zz)
在编写应用程序的时候,通常会记录日志以便事后分析,在很多情况下是产生了问题之后,再去查看日志,是一种事后的静态分析.在很多时候,我们可能需要了解整个系统在当前,或者某一时刻运行的情况,比如当前系统中对 ...
随机推荐
- Zabbix——部署(DB与web一体)
前提条件: CentOS连接网络并可以正常访问网络 DNS设置完成,可以Ping同外网域名 安装数据库为8.0版本 关闭防火墙 如果需要搭建分离式请见:DB与Web分离 &DB.web.age ...
- CSRF的原理和防范措施
a)攻击原理: i.用户C访问正常网站A时进行登录,浏览器保存A的cookie ii.用户C再访问攻击网站B,网站B上有某个隐藏的链接或者图片标签会自动请求网站A的URL地址,例如表单提交,传指定的参 ...
- 百度地图API定位+显示位置
1. 先在需要嵌入地图的页面引入map.js <script src="http://api.map.baidu.com/api?v=2.0&ak=你的秘钥"> ...
- jquery如何获取对应表单元素?
问题描述:我页面中有这样多个表单,我都是这个定义的,当我点击确定按钮时,此时能够获得相对应的表单对象,我该怎么获取到他的两个值呢? 解决方案: 页面元素 <form id="form1 ...
- 中间件kafka
* kafka----一个发布订阅消息系统,中间件:一个分布式.分区.可重复的日志服务kafka需要了解基础几层结构,生产者订阅者等使用方法,和在高并发.一致性场景使用.(凡事面试问一致性.高并发都脱 ...
- tarnado源码解析系列一
目录 tarnado tarnado源码安装 tarnado测试程序 application类的解析 一. tarnado简介 最近在学习Python,无意间接触到的tarnado,感觉tarnado ...
- Qt——菜单栏、工具栏、状态栏
1.菜单栏 菜单栏的意义是将可点击触发最终事件的集中在一起,所以菜单栏中是QAction 添加菜单栏是QMainWindow的行为 QMenubar *menubar = this->addMe ...
- SPFA算法(2) POJ 1511 Invitation Cards
原题: Invitation Cards Time Limit: 8000MS Memory Limit: 262144K Total Submissions: 31230 Accepted: ...
- P1078 文化之旅
P1078 文化之旅 题目描述 有一位使者要游历各国,他每到一个国家,都能学到一种文化,但他不愿意学习任何一 种文化超过一次(即如果他学习了某种文化,则他就不能到达其他有这种文化的国家).不 同的国家 ...
- 【C#】 URL Protocol
[C#] URL Protocol 网页调用本地程序, 支持 Windows 下所有浏览器, 与浏览器插件对比实现简单,但判断是否调用成功时, 只有ie10以上有函数,其他浏览器得自己实现(用 ifr ...