IOT/智能设备日志解决方案(2):全方位数据采集

本文涉及的产品
对象存储 OSS,OSS 加速器 50 GB 1个月
简介: LogHub提供[30+种开箱即用的数据采集手段],包括直接和云产品打通的日志、移动端、服务端、程序、SDK、网页、嵌入端等。在[全方位日志采集](https://yq.aliyun.com/articles/594990)中,我们对于各种方式进行了简要介绍。

系列文章:



数据采集


LogHub提供30+种开箱即用的数据采集手段,包括直接和云产品打通的日志、移动端、服务端、程序、SDK、网页、嵌入端等。在全方位日志采集中,我们对于各种方式进行了简要介绍。下面我们主要介绍IOT场景下主要涉及的两类数据采集:设备端采和服务器数据采集。




服务器数据采集


服务器日志采集通过Logtail实现,Logtail作为日志采集Agent,可通过中央服务器进行管控,只需点点鼠标或API就能够在几秒钟内对百万机器下达数据采集指令。


Logtail覆盖了阿里全站的物理机、虚拟机、容器,每天负责百万级服务器的数据采集,同时在阿里云公有云、友商云及用户IDC中都有几十万的安装量,适配所有Linux版本、Window、Docker、K8S等环境;支持几十种数据源对接,并且经历双十一、新春红包等挑战。


78215d64-4df3-4c05-8173-353d044bea76.png


得益于集团复杂场景的锤炼,Logtail和开源Agent(例如Fluentd、Logstash、Beats)相比,性能、资源消耗、可靠性和多组合隔离等硬指标上较为领先。可以满足国内最大的直播网站、最大的教育类网站、最大的金融类网站的苛刻要求。和开源Agent主要差距在于日志格式的丰富性(当前Logtail版本已支持Logstash、Beats协议,既可以将这些开源插件无缝跑在Logtail之上)。


Kubernetes数据采集


目前越来越多的IOT公司开始把服务端应用搭建在K8S/Docker上,用以适用轻量化部署、快速扩容、降低运维成本等需求,Logtail对于K8S/Docker场景也支持的非常友好。


Logtail针对Docker/K8S等场景做了非常多的适配工作,包括:


  • 一条命令一个参数即可实现部署,资源自动初始化
  • 支持CRD方式配置,支持K8S控制台、kubectl、kube api等,与K8S发布、部署无缝集成
  • K8S RBAC鉴权,日志服务STS鉴权管理


609a6e61-fafc-48e1-b9ed-a7b072a2e84d.png


可以自豪地说,Logtail方案是K8S下所有Agent中最全,最完整的,感兴趣可以参见LC3视角:Kubernetes下日志采集、存储与处理技术实践


设备端全球数据采集


C Producer Library 继承Logtail稳定、边界特点,可以定位是一个“轻量级Logtail”,虽没有Logtail实时配置管理、文件采集机制,但具备除此之外70%功能,包括:


  • 提供多租户概念:可以对多种日志(例如Metric,DebugLog,ErrorLog)进行优先级分级处理,同时配置多个客户端,每个客户端可独立配置采集优先级、目的project/logstore等
  • 支持上下文查询:同一个客户端产生的日志在同一上下文中,支持查看某条日志前后相关日志
  • 并发发送,断点续传:支持缓存上线可设置,超过上限后日志写入失败
  • 本地调试:支持将日志内容输出到本地,并支持轮转、日志数、轮转大小设置
  • 细粒度资源控制:支持针对不同类型数据/日志设置不同的缓存上线、聚合方式
  • 日志压缩缓存:支持将未发送成功的数据压缩缓存,减少设备内存占用


f4616962-0de8-4ad3-ba53-ab54e50f3dc6.png


关于C Producer Library的更多内容参见目录:https://yq.aliyun.com/articles/304602
目前针对不同的环境(例如网络服务器、ARM设备、以及RTOS等设备)从大到小我们提供了3种方案:


273fde57-0156-47e7-b2df-b4a144af77f0.png


同时对于Producer我们进行了一系列的性能和资源优化,确保数据采集可以“塞”到任何IOT设备上,其中C Producer Bricks版本更是达到了极致的内存占用(库体积13KB,运行内存4KB以内)。


a5fc12c1-6851-445a-96e6-610d125ab07e.png


使用C Producer系列的客户有: 百万日活的天猫精灵、小朋友们最爱的故事机火火兔、 遍布全球的码牛、钉钉路由器、 兼容多平台的视频播放器、 实时传输帧图像的摄像头等。


这些智能SDK每天DAU超百万,遍布在全球各地的设备上,一天传输百TB数据。关于C Producer Library 的细节可以参考这篇文章: 智能设备日志利器:嵌入式日志客户端(C Producer)发布


361ab087-05b6-4867-a95a-dd863482c27b.png


数据采集全球加速


IOT设备作为典型的“端”设备,通常都会部署在全国、甚至全球各地,部署区域的网络条件难以保证,这会对数据采集产生一个巨大的问题:数据采集受网络质量影响,可靠性难以保证。


针对以上问题,日志服务联合阿里云CDN推出了一款全球数据上传自动加速方案:“基于阿里云CDN硬件资源,全球数据就近接入边缘节点,通过内部高速通道路由至LogHub,大大降低网络延迟和抖动 ”。
该方案有如下特点:


  • 全网边缘节点覆盖:全球1000+节点,国内700+节点,分布60多个国家和地区,覆盖六大洲
  • 智能路由技术:实时探测网络质量,自动根据运营商、网络等状况选择最近接入
  • 传输协议优化:CDN节点之间走私有协议、高效安全
  • 使用便捷:只需1分钟即可开通加速服务,只需切换到专属加速域名即可获得加速效果


85695e90-5652-4219-8725-f7c3f941861c.png


在我们的日志上传基准测试中,全球7个区域对比整体延时下降50%,在中东,欧洲、澳洲和新加坡等效果明显。除了平均延时下降外,整体稳定性也有较大提升(参见最下图,几乎没有任何抖动,而且超时请求基本为0)。确保无论在全球的何时何地,只要访问这个加速域名,就能够高效、便捷将数据采集到期望Region内。


关于全球采集加速的更多内容,可参考我们的文章:数据采集新形态-全球加速


9a2d73d3-7018-4057-8e6a-ca04d6bd88ce.png


4f776d16-5d28-4639-963c-797e928f67cb.png

若有收获,就点个赞吧

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
8月前
|
运维 监控 安全
EventLog Analyzer:高效的Web服务器日志监控与审计解决方案
ManageEngine EventLog Analyzer是一款企业级Web服务器日志监控与审计工具,支持Apache、IIS、Nginx等主流服务器,实现日志集中管理、实时威胁检测、合规报表生成及可视化分析,助力企业应对安全攻击与合规挑战,提升运维效率。
399 1
|
消息中间件 运维 监控
智能运维,由你定义:SAE自定义日志与监控解决方案
通过引入 Sidecar 容器的技术,SAE 为用户提供了更强大的自定义日志与监控解决方案,帮助用户轻松实现日志采集、监控指标收集等功能。未来,SAE 将会支持 istio 多租场景,帮助用户更高效地部署和管理服务网格。
680 51
|
数据采集 运维 监控
数据采集监控与告警:错误重试、日志分析与自动化运维
本文探讨了数据采集技术从“简单采集”到自动化运维的演进。传统方式因反爬策略和网络波动常导致数据丢失,而引入错误重试、日志分析与自动化告警机制可显著提升系统稳定性与时效性。正方强调健全监控体系的重要性,反方则担忧复杂化带来的成本与安全风险。未来,结合AI与大数据技术,数据采集将向智能化、全自动方向发展,实现动态调整与智能识别反爬策略,降低人工干预需求。附带的Python示例展示了如何通过代理IP、重试策略及日志记录实现高效的数据采集程序。
596 7
数据采集监控与告警:错误重试、日志分析与自动化运维
|
监控 Shell Linux
Android调试终极指南:ADB安装+多设备连接+ANR日志抓取全流程解析,覆盖环境变量配置/多设备调试/ANR日志分析全流程,附Win/Mac/Linux三平台解决方案
ADB(Android Debug Bridge)是安卓开发中的重要工具,用于连接电脑与安卓设备,实现文件传输、应用管理、日志抓取等功能。本文介绍了 ADB 的基本概念、安装配置及常用命令。包括:1) 基本命令如 `adb version` 和 `adb devices`;2) 权限操作如 `adb root` 和 `adb shell`;3) APK 操作如安装、卸载应用;4) 文件传输如 `adb push` 和 `adb pull`;5) 日志记录如 `adb logcat`;6) 系统信息获取如屏幕截图和录屏。通过这些功能,用户可高效调试和管理安卓设备。
|
消息中间件 运维 监控
智能运维,由你定义:SAE自定义日志与监控解决方案
SAE(Serverless应用引擎)是阿里云推出的全托管PaaS平台,致力于简化微服务应用开发与管理。为满足用户对可观测性和运维能力的更高需求,SAE引入Sidecar容器技术,实现日志采集、监控指标收集等功能扩展,且无需修改主应用代码。通过共享资源模式和独立资源模式,SAE平衡了资源灵活性与隔离性。同时,提供全链路运维能力,确保应用稳定性。未来,SAE将持续优化,支持更多场景,助力用户高效用云。
|
物联网 Linux C#
一键掌控未来!用 Uno Platform 打造跨平台 IoT 应用,轻松连接你的智能设备,让生活更智能!
微软的开源跨平台框架 Uno Platform 支持使用 C# 和 XAML 一次性编写代码并部署至多个平台,如 Windows、macOS、Linux、WebAssembly 及 iOS/Android,这使其成为 IoT 设备开发的理想选择。本文通过创建控制网络 LED 灯的应用,详细介绍了 Uno Platform 的环境搭建及 MQTT 客户端配置过程,实现了 LED 状态订阅与控制指令发送功能。该案例展示了 Uno Platform 在 IoT 领域的潜力及其跨平台优势,未来可扩展至更多设备类型,构建智能家居系统。
927 58
|
Rust 资源调度 安全
为什么使用 Rust over C++ 进行 IoT 解决方案开发
为什么使用 Rust over C++ 进行 IoT 解决方案开发
559 7
|
存储 监控 数据可视化
SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
【9月更文挑战第2天】SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
670 9
|
存储 监控 数据可视化
性能监控之JMeter分布式压测轻量日志解决方案
【8月更文挑战第11天】性能监控之JMeter分布式压测轻量日志解决方案
501 0
性能监控之JMeter分布式压测轻量日志解决方案
|
缓存 Linux 编译器
【C++】CentOS环境搭建-安装log4cplus日志组件包及报错解决方案
通过上述步骤,您应该能够在CentOS环境中成功安装并使用log4cplus日志组件。面对任何安装或使用过程中出现的问题,仔细检查错误信息,对照提供的解决方案进行调整,通常都能找到合适的解决之道。log4cplus的强大功能将为您的项目提供灵活、高效的日志管理方案,助力软件开发与维护。
717 0

相关产品

  • 日志服务