將OSS數據導入日誌服務操作實踐

概述

對象存儲服務(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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章