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

简介: 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,搭建一个在线教育视频课程分享网站。
目录
相关文章
|
9月前
|
关系型数据库 MySQL 数据库
MYSQL查看操作日志
MYSQL查看操作日志
391 0
|
7月前
|
存储 监控 对象存储
日志服务数据导入
本场景介绍如何通过日志服务数据导入方式,将OSS数据导入到日志服务。
221 0
|
4月前
|
Java
如何实现一个高效的二叉搜索树(BST)?请给出时间复杂度分析。 要求:设计一个二叉搜索树,支持插入、删除和查找操作。要求在平均情况下,这些操作的时间复杂度为O(log n)。同时,考虑树的平衡性,使得树的高度保持在对数级别。
如何实现一个高效的二叉搜索树(BST)?请给出时间复杂度分析。 要求:设计一个二叉搜索树,支持插入、删除和查找操作。要求在平均情况下,这些操作的时间复杂度为O(log n)。同时,考虑树的平衡性,使得树的高度保持在对数级别。
34 0
|
1月前
|
SQL NoSQL Java
【七】springboot整合AOP实现日志操作
【七】springboot整合AOP实现日志操作
41 0
|
2月前
|
Java
SpringAop实现记录用户操作日志
java实现记录用户操作日志功能
|
2月前
|
存储 监控 BI
OSS日志查询
实时日志查询功能将OSS与日志服务SLS相结合,允许您在OSS控制台直接查询OSS的访问日志
29 1
|
6月前
|
存储 运维 监控
如何在 Spring Boot 中设计和实现业务操作日志功能?
如何在 Spring Boot 中设计和实现业务操作日志功能?
954 4
|
7月前
|
监控 安全 BI
使用日志服务SLS进行OSS可观测分析
本场景主要介绍如何使用SLS提供的CloudLens for OSS功能针对对象存储OSS进行可观测分析,包括资源用量、访问分析、安全分析、异常检测等角度。
361 0
|
4月前
|
SQL 弹性计算 监控
构建多账号云环境的解决方案|多账号云上操作日志统一审计
操作审计(ActionTrail)是阿里云提供的云账号资源操作记录的查询和投递服务,可用于安全分析、资源变更追踪以及合规性审计等场景。企业在阿里云采用多账号的资源结构时,如何满对跨账号跨地域的云上操作日志进行统一归集留存和分析,是企业上云管云过程的必备环节。此次分享为您介绍如何使用操作审计产品进行中心化的审计,提升云上多账号操作的可控可见性,及时发现问题、响应问题,规避潜在风险。
251 0
|
4月前
|
开发工具 git
idea的Terminal终端操作git时, git log的注释乱码问题
最近工作比较清闲, 于是在自己的项目中测试: 假如git reset回滚到之前的版本, 后悔了. 应该如何回撤回回滚, 但是又被一些小问题拌住了...
60 0

相关产品

  • 日志服务