将OSS数据导入日志服务操作实践

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: OSS与日志服务相比,OSS存储的成本更低,不过日志服务中查询、结果展示、实时监控、数据加工等功能是OSS所不具备的。所以,可以将历史数据投递到OSS进行长期保存,SLS存储近期有查询分析需要的数据。<br />当历史数据有查询、分析需求时可以将OSS中的数据重新导入到SLS。

概述

对象存储服务(Object Storage Service,简称 OSS),是海量、安全、低成本、高可靠的云存储服务。OSS与日志服务相比,OSS存储的成本更低,不过日志服务中查询、结果展示、实时监控、数据加工等功能是OSS所不具备的。所以,可以将历史数据投递到OSS进行长期保存,SLS存储近期有查询分析需要的数据。
当历史数据有查询、分析需求时可以将OSS中的数据重新导入到SLS。

前提条件

  1. 已创建OSS Bucket,并将待导入的日志文件存储到OSS Bucket中,详情请参见上传文件
  2. 已创建Project和Logstore,详情请参见准备流程
  3. 已经完成云资源访问授权
  4. 导入的OSS文件格式支持:JSON、CSV、Parquet、TEXT。
  5. 文件压缩格式支持:Gzip、Bzip2、Snappy,以及未压缩文件。



流程总览

  1. 检查导入日志服务的文件格式是否满足前提条件。
  2. 检查子账号是否有权限操作。主账号可以直接配置。
  3. 登陆日志服务配置OSS数据导入。
  4. 等待任务执行,查看数据及任务状态。



操作详情

测试导入的文件是之前从SLS发送到OSS的日志文件,bucket类型为标准存储。如果bucket是归档存储类型,建议提前解冻;在配置中也能进行解冻,不过解冻有一两分钟延迟,配置过程中解冻有可能误认为解冻不成功。

1. 检查OSS中待导入文件格式

oss控制台找到文件,检查文件后缀。如图是snappy压缩格式的parquet文件,压缩格式、文件格式都是满足上述前提条件的。
image.png

2. 权限配置

导入配置测试使用的是主账号操作,并且已经完成云资源访问授权。子账号所需授权可以参考文档底部。

3. 创建导入配置

3.1 配置入口

首先,进入日志服务选择接入数据中的 OSS-对象存储,然后选择要写入的project、logstore之后点击下一步。如果还没有自建project、logstore可以参考 Project操作文档 以及 Logstore操作文档 进行创建。
image.png

3.2 配置详情

如图,配置名称自定义,OSS Region、Bucket、文件夹前缀都是需要导入文件的信息。
正则过滤是匹配的文件名称,采集目录下全部文件时可以不填,为空时默认采集全部文件。配置中也能打开解冻文件,不过由于OSS解冻文件会有几分钟的延迟,有可能导致页面超时需要刷新的情况,所以建议提前在OSS中对文件解冻。低频访问、标准存储是不需要解冻的。
image.png
数据格式、压缩格式支持情况如下图,根据同步的文件类型选择。
image.pngimage.png
编码格式支持utf-8、gbk以及其他,选择其他时可以手动输入编码格式。
image.png
同步配置中可以使用的任务执行的系统时间作为日志查询的时间,不过也可以从日志内容中提取时间内容替换,Parquet、csv、json格式的日志是通过填写字段名称以及时间格式进行替换;单行文本、跨行文本需要先通过正则提取时间内容之后再填写时间格式替换。正则规则参考文档,时间格式参考文档。以下为单行文本的提取示例:
image.png
最后设置同步间隔就配置成功了,间隔最小是五分钟、最大是30天,设置之后就会有定时任务产生,按照最后配置的频率就行导入。如果需要立即查看,可以把立即执行的选项打开,关闭情况下需要等一个周期之后才能看到效果。

3.3 特殊配置

  • CSV特有配置项
    | 配置项 | 说明 |
分隔符 CSV 文件分隔符,默认用(,)。
Quote 当字段内包含分隔符时,需要使用Quote包裹,默认用(")。
转义符 CSV 文件转义符,默认用(\)
跨行日志最大行数 当一行日志跨多行时,需要指定最大行数,默认为1。
首行作为字段名称 是否使用CSV文件的首行作为字段列表。
跳过行数 在文件开始位置跳过指定行数之后才开始读取数据,默认为0。
  • 跨行文本日志特有配置项
    | 配置项 | 说明 |
行首正则 匹配正则的行作为日志的第一行,未匹配的行都是这条日志的一部分,直到达到最大行数。
行尾正则 匹配正则的行作为日志的最后一行,未匹配的行都是下一条日志的一部分,直到达到最大行数。
最大行数 一条日志的最大行数,默认为10。

4. 查看导入状态及操作

4.1 导入状态总览

  1. 单击目标Project。
  2. 选择目标日志库下的数据接入 > 数据导入,单击任务名称。
  3. 导入配置概览页面,查看导入配置的基本信息和统计报表。


4.2 相关操作

在任务的导入配置概览页面,还可以进行如下操作:

  • 修改任务单击修改配置,修改导入任务的相关配置,具体配置请参见设置导入配置
  • 删除任务单击删除配置,删除该导入任。删除后不可恢复,请谨慎操作。

权限配置

  1. 首先需要使用主账号点击云资源访问授权并且同意授权,授权内容是日志服务有权限访问OSS中数据资源。


2.1 授权子账号 AliyunLogFullAccess。
2.2 自定义授权策略:

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "log:ListProject"
            ],
            "Resource": [
                "acs:log:*:*:project/*"
            ],
            "Effect": "Allow"
        },
        {
            "Action": [
                "log:Get*",
                "log:List*"
            ],
            "Resource": "acs:log:*:*:project/project-wuzy/*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "log:Create*"
            ],
            "Resource": "acs:log:*:*:project/project-wuzy/job/*",
            "Effect": "Allow"
        }
    ]
}
  1. 2.1、2.2 步骤任选其一,passRole权限必须添加。
{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "log:*",
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": "ram:PassRole",
      "Resource": "*"
    }
  ]
}

日志时间配置参考

Token Date or Time Component Example
yyyy 4-digit year 2012; 2016
yy 2-digit year 12; 16
MMM 3-character month Jan; Mar; Dec
MM 1- or 2-digit month (in a year) 1; 01; 9; 09; 12
dd 1- or 2-digit day (in a month) 1; 01; 16; 30
a AM/PM (case insensitive) AM; PM; am; pm
HH 1- or 2-digit hour (in a day, 0-23) 2; 02; 14; 23
hh 1- or 2-digit hour (in a day, 1-12 with AM/PM) 2; 02; 11; 12
mm 1- or 2-digit minute (in an hour) 8; 08; 55
ss 1- or 2-digit second (in a minute) 5; 05; 35
SSS 1-3 digit subsecond or millisecond (in decimal) 4; 58; 944
zzz 3- letter time zone UTC; PST; EDT
ZZZZ RFC 822 time zone -0900; +0500
'Z' Literal Z character Z
'T' Literal T character T
epoch 10, 13, 16, 19 digit timestamp with optional . (dot) after 10 digits. 1496756806.655123456

视频

实践视频链接: https://v.youku.com/v_show/id_XNDY3MjA5Nzg3Ng==.html

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
目录
相关文章
|
20天前
|
监控 Java Serverless
函数计算产品使用问题之对于OSS打包的zip的保存目录,该如何操作
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
1月前
|
分布式计算 DataWorks 数据处理
MaxCompute操作报错合集之UDF访问OSS,配置白名单后出现报错,是什么原因
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
1月前
|
分布式计算 DataWorks 数据处理
DataWorks产品使用合集之要获取OSS文件大小并配置成调度任务,该如何操作
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
1月前
|
SQL 分布式计算 大数据
MaxCompute操作报错合集之在读取OSS遇到格式报错,该怎么办
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
1月前
|
SQL DataWorks 数据可视化
DataWorks操作报错合集之测试OSS数据源的连通性时,出现503 Service Temporarily Unavailable的错误,是什么导致的
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
2月前
|
分布式计算 DataWorks API
DataWorks操作报错合集之在将ODPS空间设置成保护模式后,导出到OSS的任务出现了权限问题,该怎么解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
152 1
|
2月前
|
分布式计算 DataWorks MaxCompute
MaxCompute操作报错合集之在Spark访问OSS时出现证书错误的问题,该如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
1月前
|
分布式计算 DataWorks 数据管理
DataWorks操作报错合集之使用OSS读取CSV文件到ODPS时遇到报错,一般是什么导致的
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
2月前
|
存储 缓存 DataWorks
DataWorks操作报错合集之配置项目连通oss数据源 , 报The request signature we calculated does not match the signature you provided.如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
2月前
|
机器学习/深度学习 人工智能 分布式计算
人工智能平台PAI操作报错合集之在ODPS的xxx_dev项目空间调用easyrec训练,需要访问yyy项目空间的OSS,出现报错,是什么导致的
阿里云人工智能平台PAI (Platform for Artificial Intelligence) 是阿里云推出的一套全面、易用的机器学习和深度学习平台,旨在帮助企业、开发者和数据科学家快速构建、训练、部署和管理人工智能模型。在使用阿里云人工智能平台PAI进行操作时,可能会遇到各种类型的错误。以下列举了一些常见的报错情况及其可能的原因和解决方法。

相关产品

  • 日志服务