开发者社区> 冶善> 正文

Docker时代——如何实现日志数据一键上云

简介: 1 准备工作 1.1 开通MaxCompute服务 参考使用MaxCompute的准备工作 1.2 开通Datahub服务 进入Datahub Web控制台,创建project(注意:首次使用的用户需要申请开通) 1.3 安装Docker环境 Docker官方说明了在不同操作系统下安装Docker的方法,您可以点击此处查看。
+关注继续查看

一、 准备工作

1.1 开通MaxCompute服务

参考使用MaxCompute的准备工作

1.2 开通Datahub服务

进入Datahub Web控制台,创建project(注意:首次使用的用户需要申请开通)

1.3 安装Docker环境

Docker官方说明了在不同操作系统下安装Docker的方法,您可以点击此处查看。
在阿里云ECS上,以CentOS 7.2为例,安装方式如下:

sudo yum install docker
sudo systemctl enable docker
sudo systemctl start docker

二、 运行数据采集的Docker镜像

以Web服务器Nginx的日志采集为例,假设Nginx的日志在服务器的路径为/var/www/all.log,日志样例如下所示:

192.168.1.6 - - [10/Feb/2017:10:51:09 +0800] "GET /ubuntu.iso HTTP/1.0" 0.000 129 404 168 "-" "Wget/1.11.4 Red Hat modified"

运行如下的命令,配置其中ACCESS_ID,ACCESS_KEY, DATAHUB_PROJECT,MAXCOMPUTE_PROJECT和MAXCOMPUTE_TABLE等必要的参数,即可启动日志采集插件的docker镜像,实现将指定的日志按行导入Datahub,并自动归档到MaxCompute的表中。

docker run  -v /var/www:/var/www:ro -e DATA_COLLECTOR_TYPE=classic -e ACCESS_ID={YOUR_ACCESS_ID} -e ACCESS_KEY={YOUR_ACCESS_KEY} -e DATAHUB_PROJECT={YOUR_DATAHUB_PROJECT} -e MAXCOMPUTE_PROJECT={YOUR_MAXCOMPUTE_PROJECT}  -e MAXCOMPUTE_TABLE={YOUR_MAXCOMPUTE_TABLENAME} -e DATA_FILE_PATH=/var/www/.*.log  registry.cn-hangzhou.aliyuncs.com/aliyun_maxcompute/data_collectors:1.0

该日志采集插件会监控所指定的日志文件,不断地将新增的日志上传,在正常情况下,Datahub的project里会自动创建一个名为maxcompute_data_collect_topic的topic,MaxCompute的project中会自动创建指定名字的表,表的schema如下所示:

+------------------------------------------------------------------------------------+
| Native Columns:                                                                    |
+------------------------------------------------------------------------------------+
| Field           | Type       | Label | Comment                                     |
+------------------------------------------------------------------------------------+
| line            | string     |       |                                             |
+------------------------------------------------------------------------------------+
| Partition Columns:                                                                 |
+------------------------------------------------------------------------------------+
| pt              | string     |                                                     |
+------------------------------------------------------------------------------------+

三、 数据分析

在docker镜像跑起来后,日志数据就源源不断地导入MaxCompute的表中了,数据默认会按照采集的时间按天进行分区。例如我们想知道20170210这天192.168.1.6这个ip的访问次数可以简单的用下面的SQL完成。

select count(*) from YOUR_MAXCOMPUTE_TABLENAME where pt = '20170210' and instr(line, '192.168.1.6') > 0;

更多复杂的分析,可以通过编写UDF或者MR作业来完成,可以参考MaxCompute的官方文档了解更多。

四、相关阅读

  1. 云数据,大计算—海量日志数据分析与应用
  2. 数据进入阿里云数加-大数据计算服务MaxCompute(原ODPS)的N种方式

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Kubernetes 集群日志管理 - 每天5分钟玩转 Docker 容器技术(180)
Kubernetes 开发了一个 Elasticsearch 附加组件来实现集群的日志管理。
3106 0
明日直播预告:阿里巴巴集团副总裁与您共同开启”云上新金融“时代。
4月21日(周二)晚19:00,阿里巴巴集团副总裁、阿里云智能新金融负责人刘伟光,与您共同开启”云上新金融“时代。
538 0
快数据时代如何构建实时数据仓库,AnalyticDB for MySQL告诉你
FastData具有两个显著特点:第一,难以置信的速度和体量产生数据;第二,数据分析期望秒级甚至毫秒返回。FastData的价值在于其实时性,实时获取和处理数据。 在快数据时代,企业客户通常面临以下几个问题: 如何了快速解行业特性,比如行业的旺季是什么时候,还有哪些人群是自己项目的潜在意向客户,以及客户的消费观念发生了哪些变化; 如何快速了解自己的同行,如何提高自身企业的竞争力,帮助企业获得非常有价值的商业情报; 如何通过增加推荐快速提高产品销量; 企业领导址如何快速了解市场反应,从而为企业的未来作出抉择;为了帮助企业快速转身,助力企业实现数据价值在线化和实时化。
2461 0
云上创新时代:云原生加速数字化转型创新,开发者黄金时代即将到来!
2021年5月28日、29日,由阿里云主办的“云上创新开发者大会”在北京成功举行。大会涵盖云计算领域最新热点话题,云原生、云上大数据、AI、低代码、云效敏捷、云钉等专题及开发者分论坛,与数千位开发者一道,共享一场技术盛宴。 云上创新、开发者是会议的关键词,开放、开源成为阿里云产品主流,新的产业变革正向我们走来!
378 0
[docker]通过rsyslog记录日志并转发nginx日志到python程序
记录我是如何把rsyslog做成docker镜像,获取nginx的accesslog并且转发到python的
98 0
使用 www_fdw 插件向PG/PPAS导入数据
www_fdw 插件支持通过http协议把文本数据导入到PG/PPAS中 RDS PG/PPAS 新版本已经支持通过 www_fdw 下面简单介绍下使用方式 启动http服务 导入数据前,我们需要在文件服务器上启动一个http服务,再把要导入的文本数据放在对应目录 创建 www_fdw 插
3222 0
3月24日云栖精选夜读:Docker日志收集最佳实践
今天又是这么晚和读者们相见了,想必作为程序员的我们有的可能才下班,还有的可能还奋斗在一线吧~那么小编精心挑选的这些文章正是给这些经常熬夜的程序猿们品读的,花个5分钟,读读这些文章,让劳累了一天心灵得到放松,明天又能充满活力地写代码!
2646 0
+关注
冶善
阿里巴巴
10
文章
3
问答
来源圈子
更多
MaxCompute(原ODPS)是一项面向分析的大数据计算服务,它以Serverless架构提供快速、全托管的在线数据仓库服务,消除传统数据平台在资源扩展性和弹性方面的限制,最小化用户运维投入,使您经济并高效的分析处理海量数据。
+ 订阅
相关文档: MaxCompute
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载