可视化监控告警-grafana

news2024/11/25 11:31:20

需求背景

根据我们的业务背景,需要监控3个纬度。

  1. Iaas层:即腾讯云的基础设施CVM
  2. Paas层:即使用的腾讯云Paas服务,各种中间件
  3. Saas层:即我们本身的服务指标监控。

腾讯云监控,可以覆盖1,2场景, 我们只需根据业务需求配置告警策略即可。场景3-Saas层监控可以分为服务状态监控、异常日志监控和接口监控。

由于我们使用了微服务框架TSF,服务状态监控和异常日志监控都可以通过云监控策略进行覆盖。至于接口监控,云监控无法满足需求,主要原因是我们语言框架不是TSF支持spring cloud,我们使用的是golang,微服务框架是公司内部的trpc-go,TSF对此支持不够友好,无法使用TSF的服务/接口监控能力,因此我们只能使用其他监控工具来补齐。

监控需求分析

系统使用网关(可理解为nginx)作为接入层,且我们将访问日志存储到了elasticsearch数据库,因此我们可根据接口日志进行分析,使用grafana做可视化监控和告警,es作为数据源。

监控大盘效果

下图是的访问日志监控大盘。

image.png

image.png

监控配置

目前腾讯云grafana可以免费创建,内网访问只收取内网负载均衡费用,非常划算。

  1. 创建grafana, 可开启腾讯云SSO登录,方便团队其他成员访问;
  2. 配置数据源,Configuration => Data sources => add data source,根据业务存储选择数据源,例如选择Elasticsearch,配置好IP:Port和认证方式;
  3. 安装插件,见腾讯云文档,我在安装goshposh-metaqueries-datasource插件时失败,后面找腾讯云助手才解决问题,安装失败的时候,需要编辑配置文件Grafana.ini,添加配置项如下:
[plugins]
allow_loading_unsigned_plugins=goshposh-metaqueries-datasource

插件按需安装,我们添加metaqueries数据插件主要是需要进行聚合计算,例如计算请求成功率,计算所有是请求A,计算所有成功请求B,使用该插件即可写表达式: B/A 来表达成功率,插件帮忙文档见:https://grafana.com/grafana/plugins/goshposh-metaqueries-datasource/

  1. 配置监控大盘,按照业务需求创建监控面板,可参考帮助文档:https://grafana.com/tutorials/?utm_source=grafana_gettingstarted,我们业务的监控面板包括以下几项
    • 每分钟请求成功率
    • 每分钟请求耗时分区统计
    • 每分钟httpCode分布
    • 路由请求量/min
    • 路由请求平均时延/min
    • 路由失败请求时延/min
    • path请求量/min
    • path请求平均时延/min
    • path失败请求时延/min
    • 接口延时排序图
  2. 配置告警,腾讯云grafana已经打通云监控告警模版,可以选择已经配置好的通知人模版应用到grafana,如下图:
    image.png
    添加后,可以在每个告警面板里面配置告警策略,选择要通知的人。
    image.png

踩坑总结

  1. grafana 目前只能安装指定插件,但是我只能安装指定插件,不过基本上主流插件都囊括了,问题是在我安装goshposh-metaqueries-datasource 插件失败,找人工协助之后,添加插件配置后再次安装才成功。
  2. grafana 添加mysql数据源失败,我给grafana创建mysql查询权限的账号,配置账号的ip时,直接查看了,内网IP如下图位置:
    image.png
    但是添加一直失败提示:db query error: query failed - please inspect Grafana server log for details

我怀疑时grafana管理控制台的内网ip不是真实的容器IP,于是找腾讯云小助手请教是不是真实的容器IP,小助手说是的,但是最后却一直无法添加数据源,小助手找到研发最终明确了这个内网IP是CLB的IP不是真实容器IP,最后他提供真实容器IP之后,才解决问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/168120.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HarmonyOS/OpenHarmony应用开发-ArkTS的声明式开发范式

基于ArkTS的声明式开发范式的方舟开发框架是一套开发极简、高性能、跨设备应用的UI开发框架,支持开发者高效的构建跨设备应用UI界面。 基础能力 使用基于ArkTS的声明式开发范式的方舟开发框架,采用更接近自然语义的编程方式,让开发者可以直…

「自控原理」2.2 控制系统的复域数学模型

本节引入控制模型的复域模型——传递函数,并介绍其构建和使用方法。 本节介绍了几种常见环节的传递函数 文章目录传递函数的定义传递函数的标准形式首1标准型尾1标准型传递函数的性质传递函数的局限性典型环节的传递函数控制系统的复域数学模型是传递函数。拉普拉斯…

深入浅出java并发编程(Thread)

快速了解 package java.lang;public class Thread implements Runnable {}Thread是lang包下的一个类,实现了Runnable接口。源码如下 FunctionalInterface public interface Runnable {public abstract void run(); }Runnable是一个函数式接口不会抛出异常没有返回…

Minecraft 1.19.2 Fabric模组开发 05.动画效果物品

我们本次在Fabric中实现一个具有动画效果的物品,本次演示的模型代码均在文末给出 效果演示效果演示效果演示 首先,请确保你的开发包中引入了geckolib依赖,相关教程请参考:Minecraft 1.19.2 Fabric模组开发 03.动画生物实体 1.首先我们要使用…

nvidia显卡编码并发session限制破解

对于服务器型显卡(比如:Tesla T4、NVIDIA A100等),nvidia显卡编码并发session路数没有限制,对于消费型显卡(比如:GeForce RTX 3070、GeForce RTX 3080等),nvidia显卡编码并发session…

Odoo 16 企业版手册 - 财务管理之会计仪表板

会计仪表板 财务管理是任何类型业务不可避免的一部分。无论您经营的业务规模或类型如何,如果财务流程没有得到适当的管理和监控,您将在未来面临严重的财务失败。手动管理所有会计操作不是一个好主意,因为它需要大量的时间和精力。在人工会计管…

esp32 Python开发快速入门--环境配置以及点亮LED灯

esp32 Python开发快速入门--环境配置以及点亮LED灯1. 环境配置2. 固件的烧录3 下面开始点灯1. 环境配置 需要配置两个环境, 开发的IDE Thonny 链接如下 https://thonny.org/ 安装串口助手,芯片是通过串口来实现通信的,需要驱动,…

Openresty宏观概述笔记

最近由于项目需要学习了安全代理的相关知识,其实刚开始的时候是非常需要一个入门的介绍,大概说明下这个到底是个什么东西,能干啥,简单的原理是什么,为此我记录下我看完用完的心得,记录成笔记。 一般我们代码…

Nginx基础01:安装和基本使用

背景Nginx是一个高性能的Web服务器,几乎所有的Web服务都需要使用Nginx。关于Nginx的功能特性这里不再赘述,让我们从0开始,了解Nginx的基本用法,学习它在Web服务中都有哪些应用。本文主要介绍Nginx的安装以及基础的控制命令。Nginx…

讨论| 电视行业已是落日夕阳?

如今,随着移动设备、互联网技术的发展,电视似乎逐渐淡出人们的视野。近期,与电视相关的热门讨论似乎都是对于各大视频平台的会员投屏制度,这似乎更加减少了大众对于电视的使用欲望。那么电视领域是否真的趋于淘汰了呢?…

PASCAL VOC 数据集的标注格式

PASCAL VOC 数据集的标注格式 PASCAL VOC 挑战赛 ( **The PASCAL Visual Object Classes )是一个世界级的计算机视觉挑战赛。 PASCAL的全称是Pattern Analysis, Statistical Modelling and Computational Learning,很多优秀的计算机视觉模型…

区块链知识系列 - 系统学习EVM(一)

EVM有一个基于栈的架构,在一个栈中保存了所有内存数值。EVM的数据处理单位被定义为256位的“字”(这主要是为了方便处理哈希运算和椭圆曲线运算操作) 这里所说的内存数值是指那些EVM字节码运行所需要的输入、输出参数数据和智能合约程序运行中…

拉伯证券|锂离子动力电池有哪些优缺点?锂离子电池的优缺点详解

锂离子动力电池是20世纪开发成功的新型高能电池。这种电池的负极是石墨等资料,正极用磷酸铁锂、钴酸锂、钛酸锂等。70年代进入实用化。因其具有能量高、电池电压高、工作温度规模宽、贮存寿命长等优点,已广泛应用于军事和民用小型电器中。 锂离子动力电池…

jvm垃圾回收笔记

JVM基础知识笔记 1. 垃圾回收相关算法 标记清除-标记整理-复制 这三个看上面的文章 1.1 分代收集算法 将不同生命周期的对象采用不同的收集方式,以便提高回收效率,一般是将Java堆分为新生代和老年代,这样可以根据各个年代的特点使用不同的…

拉伯证券|A股涨势趋缓,个股分化,北向资金继续“买买买”

今天上午,A股商场涨势趋缓,主要指数涨跌互现。 个股方面也现较大分解,接连涨停股和接连大幅跌落股同时呈现。 值得注意的是,作为近期最为坚定买入A股的力量之一,北向资金今天上午继续“买买买”,上午半个交…

Wider Face+YOLOV7人脸检测

1 Wider Face标注格式转成YOLO格式1.1 Wider Face标注介绍The format of txt ground truth. File name Number of bounding box x1, y1, w, h, blur, expression, illumination, invalid, occlusion, pose0--Parade/0_Parade_marchingband_1_849.jpg 1 449 330 122 149 0 0 0 0…

Java开发 - Spring Test知多少?

前言 在前文中,我们也使用了测试代码来进行简单的单元测试,但是我们会发现,里面有大量的重复代码,实际给我们的体验并不是太好,所以这篇,我们来学习Spring Test,Spring Test不仅仅限于在Mybati…

AUTOSAR RTE 总结

1. Interface和在Interface下面包含哪些data element在SWC创立之前就定义好了,存储在一个arxml文件里面, 它相当于一个库文件,在新建AUTOSAR project的第一步就应该被导入进来 2. port在SWC创建的阶段被create,因为Interface没有…

某博数据挖掘:使用Scrapy构建自定义数据采集提取洞察信息

想要深入了解某博上最新的动态和信息吗?那么学习如何使用Scrapy构建一个某博数据采集将是不二之选。Scrapy是一个强大的框架,能够快速地爬取网站上的数据。 新版API构建的某博数据采集拥有最丰富的字段信息,能够更好地深入挖掘某博上的数据。提供了多种采集模式,包括用户、…

邮件定时发送java实现

本文总结如何通过java实现邮件接口的定时发送任务。1、邮箱服务器地址和端口以139邮箱为例,获取服务器地址和端口。139邮箱的路径:设置-常见设置-邮箱协议设置2、客户端配置工具:springboot2.4.3使用maven,使用java11pom.xml引入m…