集成InfluxDb, telegraf, Grafana, App Metrics以记录性能指标

前情概要

  • 刚好有半天得闲功夫, 从项目里面找个功能来水一篇文章😂.
  • 上线的项目通常都是需要做性能数据收集工作的, 它好处就不想打字了.
  • 业界有很多套方案, 工具[收费的, 免费的], 收集采用[拉取的,推送的]等等可以各种组合,各种优劣势等介绍和比较请自行google.

实施方案

InfluxDb

一个时序数据库, 用来存储监控数据很适合, 其他的比如Prometheus等都阔以.

Grafana

图表展示, 告警策略等

telegraf

在物理机, 虚拟机, container上收集主机的性能指标插件, 用的的Push模式, 同时它有很多插件可以用来采集不同的性能数据, 比如host相关的cpu, memory, network等, 应用程序nginx, rabbitmq, 等等几百个插件

App Metrics

  • 项目文档
  • 项目Github
  • 应用程序支持.NET Core, 也同时支持.NET 4.5.2+
  • 可以将数据上报到多种Source 支持Prometheus, GrafanaCloud Hosted Metrics, Influx Data, Datadog, StatsD, Http, Socket, Console, Azure Application Insights, Text File, Graphite, 自定义
  • 组件也提供了Http Api 可以直接浏览, 参考地址

集成App Metrics到项目中

  • 安装App.Metrics.* nuget 包到自己的项目, 具体要什么请查询文档, 在web项目下和console下可以细化用不同的包
  • 剩下的不想写了, 参考官方DEMO

在Grafana中展示App Metrics上报的数据

成果

Web程序的一些指标

某个业务的一些指标

Linux主机的一些指标





Win主机的一些指标


AWS ECS的一些指标

posted @   czd890  阅读(219)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示