前情概要

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

集成InfluxDb, telegraf, Grafana, App Metrics以记录性能指标的更多相关文章

  1. .Net Core 2.0+ InfluxDB+Grafana+App Metrics 实现跨平台的实时性能监控

    最近这段时间一直在忙,没时间写博客,负责了一个项目,从前端到后端一直忙,同时还有其他第几个项目的系统架构要处理. 去年就开始关注net core了,只是平时写写demo,没用在项目中,正好这次机会就用 ...

  2. .Net Core 2.*+ InfluxDB+Grafana+App Metrics实时性能监控

    前言 .net core 2.* 实施性能监控 这个工具其实给运维 大大们用起来是更爽的.但是Grafana现在还没有找到中文版. 本文需要了解的相关技术与内容: InfluxDb(分布式时序数据库, ...

  3. .NET Core使用App.Metrics监控消息队列(一):初探

    一.简介 App Metrics是一个开放源代码和跨平台的.NET库,用于记录应用程序中的指标.App Metrics可以在.NET Core或也支持.NET 4.5.2的完整.NET框架上运行. A ...

  4. 使用App.Metrics监控消息队列

    使用App.Metrics监控消息队列 一.简介 App Metrics是一个开放源代码和跨平台的.NET库,用于记录应用程序中的指标.App Metrics可以在.NET Core或也支持.NET ...

  5. Springboot2 Metrics之actuator集成influxdb, Grafana提供监控和报警

    到目前为止,各种日志收集,统计监控开源组件数不胜数,即便如此还是会有很多人只是tail -f查看一下日志文件.随着容器化技术的成熟,日志和metrics度量统计已经不能仅仅靠tail -f来查看了,你 ...

  6. .NET Core微服务之基于App.Metrics+InfluxDB+Grafana实现统一性能监控

    Tip: 此篇已加入.NET Core微服务基础系列文章索引 一.关于App.Metrics+InfluxDB+Grafana 1.1 App.Metrics App.Metrics是一款开源的支持. ...

  7. 基于.net core微服务(Consul、Ocelot、Docker、App.Metrics+InfluxDB+Grafana、Exceptionless、数据一致性、Jenkins)

    1.微服务简介 一种架构模式,提倡将单一应用程序划分成一组小的服务,服务之间互相协调.互相配合,为用户提供最终价值.每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(RESTfu ...

  8. .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 ...

  9. grafana+influxdb+telegraf监控服务器cpu,内存和硬盘

    随便抄了一篇,目前我们的项目也在用,这个是linux和windows通吃的一种监控方案,非常有效,详细和优美,需要监控什么具体的业务内容,自己向influxdb中插入就行了. 监控服务器状态是运维必不 ...

  10. Grafana+Influxdb+Telegraf监控mysql

    Grafana+Influxdb+Telegraf监控mysql 一.安装 1.1安装Grafana+influxdb+telegraf 1.2启动服务,添加开机启动 1.3查看grafana界面 二 ...

随机推荐

  1. 【Vue】15 VueX

    [什么是VueX?] VueX是一个专门为Vue.js应用程序开发的状态管理模式, 采用集中式存储管理应用的所有组件状态, 以相应的规则保证按照一种可预测的方式发生改变. 即把多个组件的变量统一放到一 ...

  2. 蔡磊公布渐冻症诊断报告 5月住进ICU一度考虑气切

    原文地址: https://baijiahao.baidu.com/s?id=1801485780372006198

  3. NVIDIA黃仁勳給年輕人的忠告 —— 持续强化学习算法会是未来10年的技术变革点

    地址: https://www.youtube.com/watch?v=ER4xNhSVJ2c 强化学习,已经不是什么稀奇的概念了,强化学习算法是大语言模型.自动驾驶.人形机器人的核心算法,但是现有的 ...

  4. (续) python 中 ctypes 的使用尝试

    内容接前文: https://www.cnblogs.com/devilmaycry812839668/p/15032493.html ================================ ...

  5. Java基础之占位符

  6. 并查集基础 &打击罪犯

    并查集基础 真的很基础 题目描述:Description 某个地区有n(n<=1000)个犯罪团伙,当地警方按照他们的危险程度由高到低给他们编号为1-n,他们有些团伙之间有直接联系,但是任意两个 ...

  7. ui选择

    MVC全名是Model View Controller,MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用 ...

  8. 什么是状态机?用C语言实现进程5状态模型

    前言 状态机在实际工作开发中应用非常广泛,在刚进入公司的时候,根据公司产品做流程图的时候,发现自己经常会漏了这样或那样的状态,导致整体流程会有问题,后来知道了状态机这样的东西,发现用这幅图就可以很清晰 ...

  9. C语言之父和Linux之父谁更伟大?

    前言 在计算机软件领域,做出过重大贡献的神人很多,比如:<计算机程序设计艺术>(The Art of Computer Programming)一书的作者- Donald Knuth:Pa ...

  10. GDB原始函数信息中获取函数名

    示例: kwdbts::Logger::log(kwdbts::_kwdbContext_t*, kwdbts::KwdbModule, kwdbts::LogSeverity, char const ...