使用dataworks投递日志服务数据到MaxComputer

简介: 1. 为什么使用dataworks投递数据 日志服务提供了多种投递数据的方式,如: 在控制台直接配置投递任务,通过消费组获取数据然后再投递,以及使用dataworks配置投递任务等方式。控制台直接投递配置方式与dataworks类似,不过配置项更少,更容易操作。

1. 为什么使用dataworks投递数据

日志服务提供了多种投递数据的方式,如: 在控制台直接配置投递任务,通过消费组获取数据然后再投递,以及使用dataworks配置投递任务等方式。
控制台直接投递配置方式与dataworks类似,不过配置项更少,更容易操作。消费组方式是先将数据通过消费组拖拽到本地,之后再调用MaxComputer的写入接口完成投递,相比较另外两种在页面上配置任务的方式更加复杂。

复杂度 投递系统字段 是否能够投递历史数据 周期设置 跨region投递
直接投递 不支持 不支持 30或60分钟 不支持
dataworks投递 支持 支持 5分钟 -- 1月 支持
消费组投递 非常高 支持 支持 实时 支持

参考如上表格内容,使用dataworks进行日志投递功能比较强大,而且配置比较方便。

2. 投递流程

2.1 总览

首先,需要确定日志服务中存在可供投递的数据;
然后,在dataworks中创建工作空间,以及日志服务、MaxComputer的数据源;
在MaxComputer中创建目标表;
最后创建投递任务、配置周期任务参数。

2.2 详细步骤

2.2.1 创建LogHub数据源

image.png  
image.png
配置中需要指定project、endpoint等信息,由于日志服务是不区分环境的,所以可以同时创建dataworks中开发、生产两个环境的数据源。
配置完成之后点击测试连通性,出现弹窗测试连通性成功,则表示可以在dataworks使用了,如果有其他报错,根据具体的报错信息修改配置信息。

2.2.2 创建MaxComputer目标表

image.png
如图,需要创建分区表。由于日志服务中字段存储多为text类型,所以目标表字段类型建议设置为String;
测试字段如下: 
image.pngimage.png

2.2.3 投递任务及字段映射

下图中配置的开始、结束时间是测试时使用的,也可以将日志服务中的历史数据导入到odps中。
image.png

投递配置中日志服务系统字段的映射情况如下图,__tag__:开头的字段使用冒号后面的内容,__time__、__source__、__topic__则分别使用C_LogTime、C_Source、C_Topic代替。其他业务字段不变。
image.png

日志服务中的数据:
image.png

投递到maxComputer之后的效果如下图,日志服务中没有的字段投递过来之后值为N 空的意思,下图进行折叠:
image.png

2.2.4 周期任务参数示例

下图中设置了三个参数,分别是日志开始时间、结束时间、分区信息。
赋值: -p"startTime=$[yyyymmddHH24 - 1/24] endTime=$[yyyymmddHH24] dt=$[yyyymmddHH24 - 1/24]"
参数的配置可以参考文档
参数中运算的 - 1/24 是将当前运行任务时间减去1小时,所以配置下面的调度周期间隔改为了1小时。
image.png
image

配置完成之后保存、提交即可。
image.png

2.3 投递配置周期参数

2.3.1 参数含义

该文档介绍周期任务中常用的两个参数 $bizdate( ${…} ) 以及 $cyctime( $[…] )
$bizdate( ${…} ) 是调度时间,精确度为天,假如任务是2020-02-20执行,调度时间就是 2020-02-19 ,比任务执行时间提前一天;例: ${yyyymmdd}
$cyctime($[…]) 是任务执行时间,精确度为秒,是定时任务理论上执行的时间,假如由于任务较多导致延迟,依然按照定时时间,而不是真实的运行时间测算;例: $[yyyymmddhh24miss]

2.3.2 示例

例如,当前时间为2020年2月20日,任务定时每天00:00运行,下表为各自定义参数赋值情况的对比。

参数类型 调度参数赋值 调度替换值
${yyyymmdd} datetime1=${yyyymmdd} datetime1=20200219
$[yyyymmddhh24miss] datetime2=$[yyyymmddhh24miss] datetime2=20200220000000

2.3.3 注意事项

dataworks 周期参数中不支持空格,如果有空格需要设置两个变量,投递配置中使用空格将两个参数隔开;
$bizdate(${…})$cyctime($[…])在计算周期范围时,参数内部运算时的数值不同。

2.4 常见问题

2.4.1 投递后数据为空常见原因

  1. 检查原始数据中是否存在该字段(只能投递日志服务中的字段,不支持json嵌套字段投递)
  2. 日志服务的字段名称填写是否正确
  3. MaxComputer侧的字段类型是否正确,日志服务中类型与MaxComputer不一样,所以建议在MaxComputer中创建String类型字段重新投递

3. 视频演示

视频链接: https://v.youku.com/v_show/id_XNDU3NjI2NDk1Ng==.html

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
1月前
|
SQL DataWorks 关系型数据库
DataWorks报错问题之写入数据时报‘http.client.ResponseNotReady’如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
1月前
|
消息中间件 分布式计算 DataWorks
DataWorks常见问题之查看数据地图模块总的存储大小失败如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
1月前
|
分布式计算 DataWorks 调度
DataWorks报错问题之dataworks同步clickhouse数据报错如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
1月前
|
分布式计算 DataWorks NoSQL
DataWorks报错问题之dataworks数据异常如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
6天前
工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断2
工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断
10 0
|
6天前
|
机器学习/深度学习 前端开发 数据挖掘
R语言计量经济学:工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断
R语言计量经济学:工具变量法(两阶段最小二乘法2SLS)线性模型分析人均食品消费时间序列数据和回归诊断
37 0
|
1月前
|
DataWorks 监控 数据可视化
|
1月前
|
分布式计算 DataWorks API
DataWorks常见问题之按指定条件物理删除OTS中的数据失败如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
1月前
|
分布式计算 DataWorks 关系型数据库
DataWorks报错问题之dataworks同步rds数据到maxcompute时报错如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
1月前
|
分布式计算 DataWorks 关系型数据库
DataWorks报错问题之报错“查询运行日志失败"如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。

相关产品

  • 日志服务