云栖君导读:目前Logtail已承载阿里云全站、所有云产品服务、全球各Region部署、阿里巴巴集团(淘宝、天猫、菜鸟等)上重要服务的数据采集。每天采集接近百万服务器上数PB的实时数据,对接数千个应用与消费者。 什么是日志 提到日志,很多人的第一印象就是系统打到本地的Log文件,出问题的时候看一下这个Log文件,用来排查问题。更进一步可以根据这个Log文件做实时的监控、第三方审计、入侵检测、行为分析、数据大盘制作等等。 马老师说过:阿里巴巴不是零售,我们是一家数据公司,为了数据才做电商、做物流、卖东西。我们认为日志是记录世间人和物所有行为的一种方式,是数据中极其重要又极其庞大的一个组成部分。会产生日志的设备有:服务器、交换机、手机、传感器、IOT设备、智能设备...产生的日志类型有:网络的七层日志、OS日志、订单日志、支持日志、GPS定位日志、用户点击日志...产生的日志形式有:文本文件、二进制文件、syslog、udp日志...如何充分利用这些日志资源才是我们的核心技术和竞争力。 什么是日志采集 数据的价值是什么?数据的价值在于把数据变成行动。这里一个非常重要的过程是数据分析。提到数据分析,大部分人首先想到的都是Hadoop、流计算、机器学习等数据加工的方式。如果从整个过程来看,数据分析其实包含了4个过程:采集,存储,计算和理解四个主要步骤:
数据的采集是一门很大的范畴,从实时性上和每次传输数据规模上分,一般可以分为3类:
为何使用Agent 实现日志的实时采集一般有2种方式:
下面我们来详细剖析一下二者区别: 从以上分析来看,两种采集方式各有优缺点、也有各自适应的场景:
为何选用Logtail 日志采集Agent有很多,例如Logstash、Fluentd、Beats系列(FileBeats、MetricBeats、Packetbeat、Winlogbeat、Auditbeat、Heartbeat)、Nxlog、Telegraf、Heka、Nifi、Logspout、Datadog agent、Sematext agent、Splunk addon系列、Sumologic collector。。。 业界有那么多的Agent,每个Agent各种各样的功能和特性看起来让人眼花缭乱。但围绕日志采集这个最原始的需求展开,无非也就是功能、性能、稳定性、运维代价这4个方面:
阿里云日志服务也有自己的采集Agent--Logtail。目前logtail已承载阿里云全站、所有云产品服务、全球各Region部署、阿里巴巴集团(淘宝、天猫、菜鸟等)上重要服务的数据采集。每天采集接近百万服务器上数PB的实时数据,对接数千个应用与消费者。之所以使用Logtail作为采集Agent也是经过上述四个方面的综合考虑。由于采集Agent数量众多,这里我们选择目前最主流的3款Agent进行对比: 相对主流的采集Agent,Logtail在采集功能上有一定的不足,对于输入源、处理方式等支持没有开源软件的多,但从目前的功能来看,可以满足95%以上的日志采集需求。但日志采集并不是能够采集到就可以。相对开源软件,Logtail的优势是有集团百万服务器、上万应用的练兵环境,很多问题纯粹从Agent和开源社区的角度并不会考虑到。因此经历了数年的迭代优化,在性能、稳定性、运维代价上,Logtail相对更加成熟,在性价比上具有绝对的优势。 Logtail相关概念 为了更好的了解日志采集,这里我们首先对日志采集中遇到的基本概念进行简要的介绍。 概念介绍
各概念间关系
安装配置流程 Logtail的安装配置流程相对比较简单,如果日志服务和ECS在同一账号下,则只需5个步骤即可实现采集。
安装Logtail ECS安装 1、购买一台ECS 2、根据ECS所在区域选择Logtail安装脚本(参见Logtail安装指南) 例如华东1的经典网络,使用wget http://logtail-release.oss-cn-hangzhou-internal./linux64/logtail.sh; chmod 755 logtail.sh; sh logtail.sh install cn_hangzhou 3、使用/etc/init.d/ilogtaild status检查Logtail运行状态,如输出ilogtail is running表示安装成功 自建主机安装 1、选择任意公网Logtail安装脚本(参见Logtail安装指南) 例如选择华东1公网安装,使用wget http://logtail-release.oss-cn-hangzhou./linux64/logtail.sh; chmod 755 logtail.sh; sh logtail.sh install cn_hangzhou_internet 2、使用/etc/init.d/ilogtaild status检查Logtail运行状态,如输出ilogtail is running表示安装成功 3、配置账号标识文件(参见非本人ECS/线下机器,配置完成后无需重启Logtail) 配置 创建项目和日志库
3. Project创建成功后会提示创建Logstore,点击创建;这里我们输入Logstore名称,其他参数无需修改,点击确认。 创建采集配置 1、Logstore创建完毕后,会提示进行数据接入。如下图所示,可通过三个入口创建采集配置: 2、在弹出的数据接入页面中,我们选择自定义数据中的文本文件接入。 3、在采集配置中我们选择极简模式,日志路径中的文件夹和文件名分别输入/var/log和message,点击下一步。 创建机器组并应用 1、配置页面点击下一步后,会提示您选择机器组,这里我们点击创建机器组。 2、机器组配置页面中选择IP地址类型的机器组,IP输入ECS的内网IP(Logtail获取的IP地址可通过cat /usr/local/ilogtail/app_info.json查看) 3、保存机器组后,勾选该机器组并点击应用到机器组。后续设置无需关心,直接点击下一步。 查看日志 此时采集配置已经创建完毕,您可以尝试退出重新登录主机或输入命令echo 'test message' >> /var/log/message,这时本地/var/log/message文件会有新的日志产生,Logtail就会采集到这些数据了。 点击日志库页面的预览或查询链接,即可看到Logtail采集上来的日志了。 |
|