道旅鬼谷子分享:如何打好业务监控的组合拳

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
应用实时监控服务-应用监控,每月50GB免费额度
日志服务 SLS,月写入数据量 50GB 1个月
简介: 公司由于业务迅速扩展,需要针对业务方面进行定制监控。通过选型最终采用了 ARMS 方案。以下篇幅简单介绍了方案的大致概要以及最终效果,以供读者参考。一套组合拳,在数据分析、实时计算、报警、API、持久化存储等方面给我们节省了不少时间,也提供了更多的可能性。所以,最终我们选择了 ARMS。

来自 道旅旅游科技股份有限公司 鬼谷子 的撰稿

业务背景

公司由于业务迅速扩展,需要针对业务方面进行定制监控。通过选型最终采用了 ARMS 方案。以下篇幅简单介绍了方案的大致概要以及最终效果,以供读者参考。

选择

以下是几个产品方案的对比。需要解释的是,以下三个产品在我们的架构中都有大量使用,但是只是在本监控方案中,由于一些业务场景的特殊性,我们使用了业务实时监控服务 ARMS,虽然这并不代表 ARMS 是一个银弹。

MaxCompute

我们以前用过 MaxCompute 作周期性的业务数据计算,缺点非常明显,就是延迟性太高,这对于实时监控来说是致命的直接被PASS。

流计算

参加深圳云栖大会的时候了解到流计算如获至宝,也回来尝试使用过一段时间,在实时监控的功能节点上是很重要的一环没错,但太过于细节,导致整条线过程冗长且繁杂,最后也放弃了。

业务实时监控服务 ARMS

一套组合拳,在数据分析、实时计算、报警、API、持久化存储等方面给我们节省了不少时间,也提供了更多的可能性。所以,最终我们选择了 ARMS。

架构

image

数据源

IIS日志

Windows ECS 安装 Logtail 对 IIS 产生的日志进行实时抓取

业务日志

使用日志服务 SDK 提交日志

实时数据分析

ARMS 的配置分为以下几个部分,由于篇幅原因,仅列出重点,详细内容不赘述。

日志切分

根据规则对日志进行切分、类型转换、字段重组等

数据集

将符合条件的数据进行汇总保存(留待后续分析和监控使用),按需设置报警(邮件、短信)

数据使用

对接 API

通过对接 API,可以对数据集内的数据进行查询,以便后续的业务分析和问题复查

业务分析

实时查询数据集内的结果,根据业务在内存中进行二次计算形成报表

监控

我们做了个 Monitoring 的项目,对接 Grafana 的 Datasource,这样便可以在 Grafana 实时看到数据集内的数据。

使用案例

供应商酒店请求分析 监控

该场景用于我们对供应商酒店请求数的业务监控和事后分析,主要使用方是业务人员。介绍如下:

  • 通过日志服务 SDK 在酒店请求接口中埋点日志
  • 在 ARMS 后台根据供应商 Id,酒店 Id,请求维度等参数配置数据集
  • 对接 ARMS 接口,通过下钻的方式获取到数据。
  • 在内存中根据业务进行二次计算
  • 生成报表

image

调用第三方接口的 Status Code 监控

该场景用于我们对供应商酒店请求的状态码分析,主要使用方是运维和开发。本方案实现了 ARMS 对 Grafana 的对接,基本介绍如下:

  • 通过 Logtail 实时抓取 IIS 日志
  • 在 ARMS 后台配置好数据集
  • 在 Monitoring 项目中对接 ARMS 接口,并根据 simpleJson 接口规则实现 Grafana Data Source 对接。
    image
  • 为 SimpleJson 的 Search 接口定义 target 规则,并生成 target 与配置对应关系
  • 使用 ARMS 的下钻功能为 SimpleJson 的 Search 接口支持 Templating 功能
    image
  • 在 Grafana 中使用 Moniroing 提供的 simpleJson 接口实现展示数据
    image

点击了解 业务实时监控服务 ARMS

相关实践学习
通过轻量消息队列(原MNS)主题HTTP订阅+ARMS实现自定义数据多渠道告警
本场景将自定义告警信息同时分发至多个通知渠道的需求,例如短信、电子邮件及钉钉群组等。通过采用轻量消息队列(原 MNS)的主题模型的HTTP订阅方式,并结合应用实时监控服务提供的自定义集成能力,使得您能够以简便的配置方式实现上述多渠道同步通知的功能。
相关文章
|
前端开发 Java 关系型数据库
最好用的七大顶级 API 接口测试工具
现在 API 接口已经成为软件开发重要的组成部分,由于 API 并没有 GUI 图形界面,无法直观的对接口进行测试,所以对于前后端开发来说,找到一套趁手的工具对 API 接口进行测试,了解开发的程序是否符合预期十分重要。面对批量的 API,手动测试变得非常低效,自动化 API 接口测试工具,帮我们提高测试效率的同时,更能帮我们保证程序的稳定和安全性。
4061 0
最好用的七大顶级 API 接口测试工具
|
开发工具 数据安全/隐私保护 git
Git报错:remote: HTTP Basic: Access denied的解决方法
Git报错:remote: HTTP Basic: Access denied的解决方法
3059 0
Git报错:remote: HTTP Basic: Access denied的解决方法
|
关系型数据库 MySQL 数据库
【MySQL】-多表设计(一对多、一对一、多对多)
设计数据库时,不同类型的关系需要谨慎考虑,以反映实际需求并优化性能。查询设计良好的数据库通常会更高效,并有助于减少数据冗余和维护成本。同时,确保外键索引的正确使用,可以显著提升查询效率和数据一致性。通过这些原则和技巧的应用,我们可以在遵循数据库设计的最佳实践的同时,确保数据的可扩展性和可维护性。
1215 4
|
API 开发者
淘宝官方商品、交易、订单、物流、插旗接口接入说明
这些接口涉及淘宝店铺订单管理的关键方面,包括订单列表、订单详情及订单物流信息的获取。订单列表接口(如`taobao.trades.sold.get`和`taobao.topats.trades.sold.get`)帮助商家快速了解订单概览,进行基本管理和统计。订单详情接口(如`taobao.trade.fullinfo.get`和`taobao.topats.trades.fullinfo.get`)提供单个订单的全面信息,便于发货准备和服务支持。订单物流接口则允许跟踪订单的物流状态,确保配送顺畅。使用这些接口需遵循淘宝开放平台的规定,并关注API调用限制与更新。
|
存储 弹性计算 运维
阿里云经济型e实例详细介绍_性能测试_使用限制说明
阿里云服务器ECS推出经济型e系列,经济型e实例是阿里云面向个人开发者、学生、小微企业,在中小型网站建设、开发测试、轻量级应用等场景推出的全新入门级云服务器,CPU采用Intel Xeon Platinum架构处理器
|
机器学习/深度学习 PyTorch 算法框架/工具
数据平衡与采样:使用 DataLoader 解决类别不平衡问题
【8月更文第29天】在机器学习项目中,类别不平衡问题非常常见,特别是在二分类或多分类任务中。当数据集中某个类别的样本远少于其他类别时,模型可能会偏向于预测样本数较多的类别,导致少数类别的预测性能较差。为了解决这个问题,可以采用不同的策略来平衡数据集,包括过采样(oversampling)、欠采样(undersampling)以及合成样本生成等方法。本文将介绍如何利用 PyTorch 的 `DataLoader` 来处理类别不平衡问题,并给出具体的代码示例。
2544 2
|
关系型数据库 MySQL 数据库
深入探讨MySQL分表策略与实践
深入探讨MySQL分表策略与实践
698 0
|
Dart 监控 开发者
跨平台应用的选择:Flutter下电脑局域网控制软件开发
近年来,跨平台应用的需求不断增加,开发人员纷纷寻找适用于多种操作系统的解决方案。本文将探讨在Flutter框架下开发电脑局域网控制软件的过程,并提供一些实用的代码示例。
485 1
|
人工智能 大数据 云计算
探索技术变革的浪潮:我的技术感悟之旅
【8月更文挑战第7天】在数字化时代的洪流中,技术变革以不可阻挡之势重塑世界。本文将分享个人在技术领域的成长历程与深刻洞察,探讨如何适应并引领技术趋势,以及这一过程中的思考与挑战。
131 2
|
弹性计算 Kubernetes 容器
k8s基于flannel VXLAN模式网络无法跨主机ping通其他节点上pod
基于云ECS搭建的k8s,通常网络问题需要从网络配置,路由表、iptables 规则 以及FDB配置去判断问题,另外需要注意的是阿里云有一层企业安全组配置会对网络有影响,遇到配置问题都正常需要从安全组的角度去考虑了
8246 0
k8s基于flannel VXLAN模式网络无法跨主机ping通其他节点上pod