日志埋点
所谓埋点,就是在业务系统的程序中,植入一些收集事件数据的SDK(工具代码),进行各种事件的收集.
后端埋点
埋点代码可以植入到业务系统的后端程序中(比如java、php等)
前端埋点
也可以植入到业务系统的前端程序(原生app、页面js、微信小程序)中
数据通过埋点发送到日志服务器,日志服务器把日志数据记在本地磁盘,或写kafka
日志采集
通过flume读取日志文件,或kafka,转存到hdfs中
flume
Flume是一个分布式、可靠、和高可用的海量日志采集、汇聚和传输的系统。
Flume可以采集文件,socket数据包(网络端口)、文件夹、kafka、mysql数据库等各种形式源数据,又可以将采集到的数据(下沉sink)输出到HDFS、hbase、hive、kafka等众多外部存储系统中
一般的采集、传输需求,通过对flume的简单配置即可实现;不用开发一行代码!
Flume针对特殊场景也具备良好的自定义扩展能力,因此,flume可以适用于大部分的日常数据采集场景
agent
Flume中最核心的角色是agent,flume采集系统就是由一个个agent连接起来所形成的一个或简单或复杂的数据传输通道。
对于每一个Agent来说,它就是一个独立的守护进程(JVM),它负责从数据源接收数据,并发往下一个目的地,如下图所示:


本文介绍了日志采集的概念,包括后端和前端的埋点方式,以及数据如何发送到日志服务器。重点讲解了Flume作为日志采集工具的工作原理,如agent的组成部分、Event对象和事务控制机制。此外,还提供了Flume本地日志使用测试和从Kafka读取日志写入HDFS的配置示例。
最低0.47元/天 解锁文章
4306

被折叠的 条评论
为什么被折叠?



