日志服务结合Logstash
目前,阿里云用户可以通过API/SDK或Logtail将数据写入日志服务,今天要介绍流行开源软件Logstash如何集成日志服务。
我们基于日志Java SDK开发了logstash-output-logservice插件(项目地址),帮助Logstash用户解决Linux、Windows、Mac OS平台日志采集上传需求。
用户可以在阿里云ECS,或者是IDC机房机器,又或者是其它云厂商的虚拟机上安装Logstash及插件,进行简单的配置,轻松地将本机日志数据搬到云上来。
IIS日志场景
以Windows平台上最常见的IIS(Internet Information Services)日志为例,默认存储于C:inetpublogsLogFilesW3SVC1目录下的文件里,详细记录了客户IP地址、用户名、服务器端口、方法、URI资源、URI查询、协议状态、用户代理等信息,对于服务稳定性、安全性、运营统计有重要参考价值。
用户在机器上安装Logstash和相关插件后,配置文件目录、日志服务Project/Logstore、阿里云账号秘钥对,Logstash将自动跟踪日志文件的变化并实时地采集、解析后发送到日志服务。
日志数据在源源不断地实时上传,阿里云日志服务也提供了丰富的数据消费方式供用户选择。
比如,您可以通过索引功能查看一定时间段内GET动作且状态码为304的所有请求:
除此之外,您还可以:
- 结合EMR对日志做实时清洗,然后做批量处理或流式计算。
- 使用日志服务提供的OSS投递功能,以很低的成本实现IIS日志的自动归档。
- 使用日志服务提供的ODPS投递功能,在ODPS上对IIS日志做运维报表或运营统计。
如何使用
日志服务支持Logstash写入数据,具体提供以下功能:
- 实时采集机器上的各种类型日志文件、TCP、Syslog等数据源(具体请参考Logstash官方文档)
- 接入阿里云账号安全体系,通过秘钥对支持数据签名发送和访问权限控制
- 多条日志支持批量发送,减少写入日志服务TPS产生的费用
- 日志数据压缩后写日志服务,减少网络出口带宽的占用
更多细节请参考接入文档。