汇总:日志监控实践 | 多维度数据采集
优采云 发布时间: 2022-11-22 08:07汇总:日志监控实践 | 多维度数据采集
上一篇《监控数据从哪里来?》(简介)》介绍了采集程序的架构和不同场景下数据的采集方式,本文将介绍日志监控多维度数据采集的思路和实践。
多维数据
多维数据现已成为大数据分析处理领域的基本模型。与等维度的单维数据相比,多维数据具有监控配置管理简单、处理灵活快速等优点。多维数据监控在百度智能运维平台中有着广泛的应用。图1是运维系统使用的一个典型的多维数据:
图 1 多维数据
多维日志采集面临的问题
日志中存储了大量有关系统运行的信息。对于智能运维产品来说,日志就是这个复杂系统未加工的食物。如何准确提取和利用日志中的有用信息,就像把小麦加工成面粉甚至面包一样。智能运维产品应具备的基本能力。
百度在线业务日志数以万计,部分业务日志的生产速度可达每秒数十MB。要从日志中过滤掉用户关心的数据和指标,我们面临几个关键问题。
带着这些问题,我们将深入百度智能运维系统的日志多维数据采集模块,介绍我们在实践中行之有效的解决方案和措施。
采集任务灵活配置
为了方便用户配置多维度的日志采集任务,我们将多维度的采集任务以JSON文件的形式进行配置和下发。用户可以通过web界面填写或直接修改JSON文件来设置采集日志路径、采集规则以及采集项内容等信息,图2是一个典型的日志多维采集配置示例:
图2 多维采集配置
由于日志切分的需要,目前百度在线上有很多以时间命名的日志,日志文件的名称随着时间的推移而变化。对于这种情况,“log_filepath”支持使用时间格式化程序配置日志路径。例如日志按天划分,日志名称如“/home/test/test.log.20190331”,那么日志路径可以配置为“/home/test/test.log.%Y%” m%d”,采集程序会实时检查日志路径的变化,确保采集到最新的日志。
日志快速读取和匹配
" />
针对日志量较大的场景,为了保证多维度采集的及时性和准确性,我们采用了以下方式。
采集
信息的二次加工
通过命名规则从日志中提取的维度信息,一般需要进一步处理以满足计算、存储和展示的要求。我们提供公式计算、IP转换、信息映射等手段,实现数据的二次加工,让用户可以更专注于关注的指标和数据,也可以减少数据量和维度,并且减轻下游数据计算和存储模块的压力。
图3 多维抽取
例如,如图3所示,通过命名规则从日志中提取的六个维度,经过公式计算、IP地址转换、字典映射等处理。
1 公式计算
公式计算目前支持double、string、int三种数据类型,支持+、-、*、/、&&、||等四种算术运算和逻辑运算。
如果用户只想采集uri维度为“/page/2”且c_time大于30的数据,可以通过图4的公式进行过滤。
图4 公式计算
2IP转换
一些在线日志会写入请求的 IP 地址。我们需要根据源IP从IP所属的国家、省、市、运营商等维度进行统计。为了支持这种场景,我们在采集程序中内置了一个IP地址库。并预留配置,可将采集到的IP地址(包括IPv4、IPv6)转换为运营商、城市、省份、国家信息,支持四种信息任意组合转换。
通过默认配置“isp_province”,可以将图3中的IP地址114.114.114.114转换为该IP地址所属的运营商和身份信息,“CT”代表电信,“JIANGSU”代表江苏省,如图5所示。
" />
图 5 IP 地址转换
3 信息映射
对于采集
到的信息,我们进一步将字符串和数据以映射表的形式进行转换。以机房信息为例,如果从日志中采集到的机房信息为“bjzgc”,我们需要将北京的所有机房转换为“BJ”,可以通过如下映射表实现。
图 6 映射表
通过映射表,我们只能提取我们关心的机房信息,不在映射表中的机房信息采集程序可以自动过滤或默认映射为“UNKNOWN”。
4 日志时间采集
为了保证采集率,我们为采集任务设置一个周期,同一周期内的数据采用正则化时间戳。对于那些对时间精度要求高的运维场景,这种处理是无法满足要求的。我们提供默认配置支持从日志中提取时间作为监控数据的时间戳。
如图3所示,通过默认配置log_timestamp提取日志中的时间信息“2019-03-10 16:38:50”,转换为时间戳“1552207130”作为多维数据的时间戳。
总结
本文主要介绍我们在多维日志采集方面的实践经验。以上方案和措施基本可以满足百度内网用户多维度日志数据采集的需求。维度信息完整,采集到的维度信息需要从外部数据转换,或者正则表达式过于复杂导致处理超时等,需要对日志进行特殊处理。《日志采集
》一文中给出了解决方案。
关于作者:
赵鹏川,百度高级研发工程师,负责百度智能运维产品(Noah)数据采集Agent程序的设计与开发,在运维数据采集方向具有丰富的实践经验。
本文转载自公众号AIOps智能运维(ID:AI_Ops)。
原文链接:
解决方案:英特佩斯远程数据采集和车队管理平台
概述
随着智能驾驶对数据量的需求越来越大,使用测试车队进行数据采集和数据管理的需求越来越普遍,在减少随车人员数量、远程分析等诸多方面都面临着新的问题由工程师和车队的远程管理。Intrepid针对以上需求提出远程数据采集解决方案,可实现远程数据采集、上传、展示、车队管理等诸*敏*感*词*。
无线 neoVI 远程数据记录和车队
管理服务器
无线 neoVI 是一种远程数据记录和车队管理服务器,具有以下特点:
无线录音变得简单
远程启动、停止、配置
自动数据采集
自动提取和导出数据
安全、冗余和可靠性
实时绘制信号曲线
neoVI ION车载网络接口及远程数据采集系统
" />
neoVI ION 将车载网络工具与安卓嵌入式操作系统完美结合。结合Wireless neoVI,实现远程数据上传和车队管理,为解决方案提供更完善的功能。
应用领域:
支持网络:
配套协议:
VehicleScape 数据采集配置工具
Vehicle Spy 软件中的 VehicleScape DAQ 配置工具提供了一个专用的用户界面,用于加载车辆数据库,例如 A2L、ODX、MDX、GDX、DBC 等。后触发事件、休眠模式、数据文件名、远程上传选项等信息。
通过无线 neoVI 远程发送配置或脚本并管理数据
用户可以通过 Wireless neoVI 将数据记录器配置或脚本从 Vehicle Spy 发送到 neoVI ION 设备。Wireless neoVI 是一个为车队提供数据管理的网站。您可以获取 GPS 位置,自动下载数据,并自动导出用户需要的数据格式。
远程连接和GPS定位
neoVI ION 提供多种远程连接方式:内部 4G 数据模块、Wi-Fi 或以太网(通过外部 4G 模块或有线网络)。在此基础上,实现了数据下载和远程车队管理。此外,neoVI ION 具有 5 HZ GPS,精度可达 3 米。
从大容量存储器下载数据时记录
利用 Android 系统的强大功能上传数据,而不会中断或减慢数据采集
速度。neoVI ION有一个SD卡槽,可以支持最大128GB的高速SD卡。它可以采集
和记录数千亿条消息。
相关链接(直接点击进入)
1个
" />
2个
3个
4个
5个
6个
经纬恒润通过与IBM、达索、ANSYS等全球知名工业软件厂商合作,在研发流程、建模仿真、测试验证、平台等领域进行定制化开发,为用户提供数十款汽车电子领域的研发工具建设等和技术服务,帮助用户实现流程化、数字化、智能化、平台化研发,提高产品研发效率和市场竞争力。
结尾
经纬恒润
致力于成为世界一流的汽车电子系统技术服务商!
电话:(010)64840808
邮件:
地址:北京市海淀区知春路7号致真大厦D座5-10层