当前位置: 首页 > news >正文

RUM最佳实践:内网IP地址映射地图地理位置场景

场景概述

随着公司规模的扩大和业务的扩展,越来越多的企业更关注用户体验情况,因此,为了衡量和提升用户体验,我们通常采用观测云的用户体验监控的观测手段,简称 RUM 。对于中大型的集团公司,业务分布在全国各地,乃至世界各地,有些业务是对外开放的,公网地址是可以直接映射成地理位置的,但是也有很多业务是供内部员工的生产运作使用的,在这种场景下,为了更好的衡量和查看内部不同基地的用户访问体验,我们需要对内网用户体验的监控数据进行处理,使内网地址映射到地图上的地理位置,从而在地图上展示像公网一样的地理位置,更好的查看各个站点基地用户访问的性能体验情况。

前提条件

  • 使用观测云产品的 RUM 监控,即用户体验监控。
  • 对内网地址进行划分,内网网段分别代表哪个地理位置

场景实现

  • 实现方式:使用观测云用户访问 pipeline 处理
  • 实现原理:对用户访问的内网 ip 地址进行 pipeline 处理,定义好内网 cidr 网段代表某个地理位置,为了能与地图匹配上,需要填正确的 city,country,province 地址名称或代号,经过 pipeline 处理后,即可在地图上进行展示不同基地的用户访问体验情况了。

操作步骤

1、编写 pipeline 处理脚本

#内网代表地理位置定义,如下只定义了两个网段(示例为随便写的公网网段),请自行添加更多内网网段
idr_data = {
"178.237.236.0/24": {"city": "Shenzhen", "province": "Guangdong", "country": "CN"},
"202.168.78.0/24": {"city": "Shanghai", "province": "Shanghai", "country": "CN"},
}#将用户体验的IP字段匹配到对应的地理位置
for x in cidr_data {if cidr(ip, x) {location=cidr_data[x]add_key(city, location["city"])add_key(province, location["province"])add_key(country,location["country"])}
}

2、设置用户访问的 pipeline 来处理用户访问的视图,资源,操作,会话等数据,如下图,设置好 pipeline 后通过一键获取样本查看岩本数据处理情况,看到内网 ip 处理后,出现对应的 city,province,country 字段值即为成功。

3、地图上用户访问性能展示

IP 工具使用

通常,在我们定义内网 IP 网段代表某个地理位置时,不知道地理位置的 city,province,country 字段值具体名称或者代号是什么,此时可以使用 DataKit IP 工具,DataKit 是观测云统一的数据采集探针,同时在安装了 DataKit 后,可通过 datakit install --ipdb iploc 命令安装/更新 IP 地理信息库,如果查看某个 IP 的地理位置信息,可使用 datakit tool --ipinfo 1.2.3.4 ,如下输出:

datakit tool --ipinfo 1.2.3.4ip: 1.2.3.4city: Brisbaneprovince: Queenslandcountry: AUisp: unknown

举例,若我想知道中国 广东省深圳市的 country,province,city 字段值或代号是什么,即可随便找一深圳的公网 IP 来输出其名称或代号,如随便找一深圳的公网 IP:183.238.104.98 ,通过 datakit tool --ipinfo 183.238.104.98 输出如下图,即可知道 country,province,city 字段值在内网段定义地理位置时的名称或代号书写。


http://www.mrgr.cn/news/63404.html

相关文章:

  • 【Linux】操作系统初步理解与Linux指令入门
  • 软件测试学习笔记丨Flask操作数据库-对象与数据模型
  • 开源协议类型及长安链开源协议介绍
  • Spring Boot 集成 Kafka
  • 【主机游戏】塔尼蚀:神之堕落 游戏介绍
  • PySpark的使用
  • 周转时间、带权周转时间、平均周转时间、平均带权周转时间
  • uniapp MD5加密
  • [ComfyUI]Flux TTP分块高清放大技术,效果炸裂
  • 江协科技STM32学习- P29 实验- 串口收发HEX数据包/文本数据包
  • vue3官方示例-简单的 markdown 编辑器。
  • 众测一路追到供应链
  • 阿里巴巴独家的SpringCloud Alibaba学习笔记,面面俱到,太全了
  • springboot志愿者在线辅助学习系统-计算机毕业设计源码01048
  • RTPS发布订阅一条消息流程
  • SpringBoot中扩展Druid的过滤器实现完整的SQL打印
  • Java中I/O系统处理流的使用
  • Java EasyExcel 导出报内存溢出如何解决
  • WSGI、uwsgi、uWSGI与Nginx
  • sqoop问题汇总记录
  • <实用干货>临床试验数据信息查询--中国临床试验数据库
  • 牛客网最新Java高频面试题汇总(2024最新含答案)
  • Rust 力扣 - 189. 轮转数组
  • ^M 字符处理
  • GaussDB Ustore存储引擎解读
  • Google Play商店中的类似应用:它们对ASO优化重要吗?