日志清洗中关于时间字段date设置的常见问题与解决方法__最佳实践_业务实时监控服务 ARMS-阿里云
任务设置中“日志清洗”是非常重要的环节,“日志清洗”将用户日志转化为标准的Key-Value格式,由于日志计算按照时间维度聚合,所以要求用户在进行日志清洗后产生的Key-Value中必须包含时间字段,系统默认采用字段名称为date。所以如果日志中不存在时间字段或者时间字段切分后名称不为date,系统会提示“切分后的字段中不包含时间字段date!”。
下面就上述遇到的问题列举几种常见的案例和解决方法:
日志中不存在时间字段
建议修改日志格式,添加相应的时间字段即可;
如原有日志为:
北京|电子产品|211
修改为:
2016-07-28 12:12:12|北京|电子产品|211
日志中存在时间
1、案例(1):日志中时间字段为Date型,该种情况比较简单,样例日志如下:
2016-08-09 11:21:17|kevin.yang|26
该情况通常会被“智能切分”自动识别出来,其自定义切分形式如下::
2、案例(2):日志中时间字段为long型10位
1477480004|kevin.yang|26
备注:
1)第一个字段为时间,第二个字段为名称name,第三个字段为年龄age;
2)最终的时间字段date转化后为13位long类型
原有自定义切分方案为:
解决方法:需要将logtime变为13位的long
3、案例(3):日志中时间字段为long型13位
1477480004000|kevin.yang|26
该种情况处理也比较简单,自定义切分时将其命名为date即可(如果使用智能切分,将系统生成的该字段对应的名称重命名为date):
4、案例(4):日志中时间字段存在于JSON字符串中(时间字段为Date类型),样例日志如下:
{
"name":"kevin.yang",
"logtime":"2016-10-26 11:28:51.103 ",
"age":"26"
}
其自定义切分的方案通常为:
解决方法:将logtime赋值给date:
5、案例(5):日志中时间字段存在于KV中(时间字段为Date类型),样例日志如下:
name=kevin;logtime=2016-10-26 11:28:51.103;age=26
其自定义切分的方案通常为:
解决方法:将logtime赋值给date
最后更新:2016-11-23 18:55:11
上一篇:
日志清洗最佳实践__最佳实践_业务实时监控服务 ARMS-阿里云
下一篇:
智能切分日期格式__最佳实践_业务实时监控服务 ARMS-阿里云
ECS Windows系统抓包工具Wireshark的安装使用__网络连接问题_网络问题_Windows操作运维问题_云服务器 ECS-阿里云
时间日期类型__数据类型_SQL语法参考_云数据库 OceanBase-阿里云
表详情页介绍__数据管理手册_用户操作指南_大数据开发套件-阿里云
使用教程__JavaSDK手册_SDK参考手册_开放搜索-阿里云
快速启动__脚本编写_使用手册_性能测试-阿里云
快速接入__快速入门_业务实时监控服务 ARMS-阿里云
UpdateRole__角色管理接口_RAM API文档_访问控制-阿里云
DeletePolicyVersion__授权策略管理接口_RAM API文档_访问控制-阿里云
枚举类型__API参考_E-MapReduce-阿里云
队列模型名词解释__产品名词解释_产品简介_消息服务-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云