概述
對象存儲服務(Object Storage Service,簡稱 OSS),是海量、安全、低成本、高可靠的雲存儲服務。OSS與日志服務相比,OSS存儲的成本更低,不過日志服務中查詢、結果展示、實時監控、資料加工等功能是OSS所不具備的。是以,可以将曆史資料投遞到OSS進行長期儲存,SLS存儲近期有查詢分析需要的資料。
當曆史資料有查詢、分析需求時可以将OSS中的資料重新導入到SLS。
前提條件
- 已建立OSS Bucket,并将待導入的日志檔案存儲到OSS Bucket中,詳情請參見 上傳檔案 。
- 已建立Project和Logstore,詳情請參見 準備流程
- 已經完成 雲資源通路授權
- 導入的OSS檔案格式支援:JSON、CSV、Parquet、TEXT。
- 檔案壓縮格式支援:Gzip、Bzip2、Snappy,以及未壓縮檔案。
流程總覽
- 檢查導入日志服務的檔案格式是否滿足前提條件。
- 檢查子賬号是否有權限操作。主賬号可以直接配置。
- 登陸 日志服務 配置OSS資料導入。
- 等待任務執行,檢視資料及任務狀态。
操作詳情
測試導入的檔案是之前從SLS發送到OSS的日志檔案,bucket類型為标準存儲。如果bucket是歸檔存儲類型,建議提前解凍;在配置中也能進行解凍,不過解凍有一兩分鐘延遲,配置過程中解凍有可能誤認為解凍不成功。
1. 檢查OSS中待導入檔案格式
在
oss控制台找到檔案,檢查檔案字尾。如圖是snappy壓縮格式的parquet檔案,壓縮格式、檔案格式都是滿足上述前提條件的。

2. 權限配置
導入配置測試使用的是主賬号操作,并且已經完成雲資源通路授權。子賬号所需授權可以參考文檔底部。
3. 建立導入配置
3.1 配置入口
首先,進入
選擇接入資料中的 OSS-對象存儲,然後選擇要寫入的project、logstore之後點選下一步。如果還沒有自建project、logstore可以參考
Project操作文檔以及
Logstore操作文檔進行建立。

3.2 配置詳情
如圖,配置名稱自定義,OSS Region、Bucket、檔案夾字首都是需要導入檔案的資訊。
正則過濾是比對的檔案名稱,采集目錄下全部檔案時可以不填,為空時預設采集全部檔案。配置中也能打開解凍檔案,不過由于OSS解凍檔案會有幾分鐘的延遲,有可能導緻頁面逾時需要重新整理的情況,是以建議提前在OSS中對檔案解凍。低頻通路、标準存儲是不需要解凍的。

資料格式、壓縮格式支援情況如下圖,根據同步的檔案類型選擇。


編碼格式支援utf-8、gbk以及其他,選擇其他時可以手動輸入編碼格式。

同步配置中可以使用的任務執行的系統時間作為日志查詢的時間,不過也可以從日志内容中提取時間内容替換,Parquet、csv、json格式的日志是通過填寫字段名稱以及時間格式進行替換;單行文本、跨行文本需要先通過正則提取時間内容之後再填寫時間格式替換。正則規則
參考文檔,時間格式
。以下為單行文本的提取示例:

最後設定同步間隔就配置成功了,間隔最小是五分鐘、最大是30天,設定之後就會有定時任務産生,按照最後配置的頻率就行導入。如果需要立即檢視,可以把立即執行的選項打開,關閉情況下需要等一個周期之後才能看到效果。
3.3 特殊配置
-
CSV特有配置項
| 配置項 | 說明 |
分隔符 | CSV 檔案分隔符,預設用(,)。 |
Quote | 當字段内包含分隔符時,需要使用Quote包裹,預設用(")。 |
轉義符 | CSV 檔案轉義符,預設用(\) |
跨行日志最大行數 | 當一行日志跨多行時,需要指定最大行數,預設為1。 |
首行作為字段名稱 | 是否使用CSV檔案的首行作為字段清單。 |
跳過行數 | 在檔案開始位置跳過指定行數之後才開始讀取資料,預設為0。 |
- 跨行文本日志特有配置項
行首正則 | 比對正則的行作為日志的第一行,未比對的行都是這條日志的一部分,直到達到最大行數。 |
行尾正則 | 比對正則的行作為日志的最後一行,未比對的行都是下一條日志的一部分,直到達到最大行數。 |
最大行數 | 一條日志的最大行數,預設為10。 |
4. 檢視導入狀态及操作
4.1 導入狀态總覽
- 單擊目标Project。
- 選擇目标日志庫下的資料接入 > 資料導入,單擊任務名稱。
- 在導入配置概覽頁面,檢視導入配置的基本資訊和統計報表。
4.2 相關操作
在任務的導入配置概覽頁面,還可以進行如下操作:
- 修改任務單擊修改配置,修改導入任務的相關配置,具體配置請參見 設定導入配置
- 删除任務單擊删除配置,删除該導入任。删除後不可恢複,請謹慎操作。
權限配置
https://static-aliyun-doc.oss-cn-hangzhou.aliyuncs.com/assets/img/zh-CN/7835368751/p76164.png2.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"
}
]
}
- 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