数据采集概述

日志服务的数据采集支持多种采集方式与数据来源。本文将为您介绍不同场景下的采集方式。

数据采集方式

数据采集作为使用日志服务功能的第一步,帮助您将需要处理的日志或数据传输并保存到日志服务中。您需要根据具体的使用场景选择合适的数据采集方式,以便后续使用日志服务的其他功能。

数据采集方式主要分为Logtail采集,云产品日志接入,数据导入,其他采集方式以及SDK方式。

  • Logtail采集:Logtail是日志服务提供的日志采集Agent,用于采集阿里云ECS、自建IDC或其他云厂商等服务器上的日志。Logtail基于日志文件,无侵入式采集日志。您无需修改应用程序代码,且采集日志不会影响您的应用程序运行。

  • 云产品日志接入:日志服务支持采集弹性计算、存储服务、安全、数据库等多种阿里云云产品的日志数据,包括云产品的操作信息、运行状况、业务动态等信息。

  • 数据导入:日志服务支持导入已有数据,包括其他应用数据与历史文件数据。

  • 其他采集方式:日志服务支持使用第三方采集工具、通过协议传输日志等方式上传日志。

  • SDK:日志服务支持直接使用SDK在代码中进行定制化开发,相比其他方式灵活性更高。

日志服务数据采集的总体概览如下图:

image

Logtail采集

Logtail采集根据不同的采集数据源,主要分为以下使用方式:

更多详细了解请参考Logtail采集

云产品日志接入

如果您需要将其他云产品中的日志进行采集供后续分析。您可以参考云产品日志概述来选择不同产品的采集方式。

数据导入

如果您希望将已有的其他数据导入到日志服务进行分析,日志服务也支持以下数据导入的功能。

  • 您可以将OSS Bucket中的日志文件,通过数据导入方式导入到日志服务。具体请参考导入OSS数据

  • 您可以将自建MySQL数据库或RDS MySQL数据库中的数据导入到日志服务。具体请参考导入MySQL数据

  • 您可以将Elasticsearch数据导入到日志服务。具体请参考导入Elasticsearch数据

  • 您可以通过数据导入的方式将Amazon S3的日志文件导入到日志服务。具体请参考导入Amazon S3文件

  • 您可以将Kafka数据导入到日志服务,您可以参考导入Kafka数据

  • Logtail只采集增量日志。如果您需要采集历史日志,可以参考导入历史日志文件

其他采集方式

如果以上方式都不符合您的使用场景,您也可以通过WebTracking、Kafka协议、Syslog协议、Loggie实时上传日志到日志服务。

  • SysLog协议

    您可以使用Syslog-ng采集日志并通过Syslog协议上传到日志服务,具体可以参考使用Syslog协议上传日志

  • Kafka协议

    您可以使用Beats系列软件、Collectd、Fluentd、Logstash、Telegraf、Vector等采集工具采集日志,并通过Kafka协议上传到日志服务,具体可以参考示例Kafka协议

  • 网页/JS

    如果您需要收集和分析用户在浏览器、小程序上的信息,请参考JS/Web Tracking。日志服务也支持使用Web Tracking采集Unity3D日志,请参考采集Unity3D日志

SDK

您可以根据语言使用对应SDK或方式来上传日志,SDK定制化上传日志方式的灵活性较其他方式更高。

更多详细了解请参考SDK采集。日志服务除自研的SDK外,还支持公共的阿里云SDK,关于阿里云SDK的使用方式,请参见阿里云SDK

最佳实践场景

在您了解完数据采集的方式后,为您推荐几种在真实使用场景下的数据采集实践教程。

  1. 某公司的网站应用部署在地域A,日志服务的Project部署在地域B,现计划通过Logtail采集配置将部署在地域AECS实例中的日志数据发送到地域BProject中。此时存在跨地域采集的情况,需要参考通过Logtail跨地域采集日志

  2. 越来越多设备开始逐步走进日常生活,例如智能路由器、各种电视棒、天猫精灵、扫地机器人等,让我们体验到智能领域的便利。传统软件领域的嵌入式开发模式在IoT设备领域的应用遇到了很多挑战,IoT设备数目多、分布广,难以调试且硬件受限,如何处理IoT设备日志可以参考采集-IoT/嵌入式日志

  3. 推广网页时,多少用户做了点击?发送传单时,如何确保对方已读?移动App运营活动页面,如何分析用户访问情况?对这类个性化的采集与统计需求,如何能以快捷的手段满足这类用户行为采集可以参考采集-通过WebTracking采集日志

更多详细了解请参考最佳实践

常见问题

  • 专线方式接入应如何选择网络?

    请选择阿里云内网(经典网络或专有网络VPC)。

  • 如何选择网络类型和接入点(Endpoint)?

    不同网络类型的使用场景,请参见选择网络。接入点(Endpoint)的列表,请参见服务接入点。开启传输加速域名的步骤,请参见管理传输加速

  • 采集公网数据时能否采集公网IP地址?

    您可以在Logstore属性中开通记录外网IP功能。更多信息,请参见创建Logstore

  • 将地域A上的ECS日志采集到地域B下日志服务Project中,应如何选择网络?

    在地域A上的ECS中安装地域B公网的版本Logtail,进行公网传输。其他情况下的网络选择,请参见选择网络

  • 如何快速判断目标域名能否连接?

    执行以下命令,如果有返回信息则表示可以联通。其中$myprojectProject名,cn-hangzhou.log.aliyuncs.com为访问接入点。

     curl $myproject.cn-hangzhou.log.aliyuncs.com 
  • 更多问题可查看数据采集常见问题