一、背景
日志服務SLS((
https://help.aliyun.com/document_detail/48869.html)是阿裡集團自研的一站式日志平台,它包含資料實時采集、資料加工、智能查詢分析以及資料分發四大基礎功能,使用者無需開發就能能夠開箱即用地使用它來提升運維、營運效率,建立 DT 時代海量日志處理能力。

日志服務SLS支援從40+管道采集日志資料,涵蓋用戶端、網頁、協定、SDK、API等多種日志采集方式(
https://help.aliyun.com/document_detail/28981.html),為使用者提供了強大的資料采集能力。然而在一些測試或Demo場景下,使用者無法接入日志資料,或者SLS提供的資料采集方式會顯得門檻過高。試想如下三種場景:
場景一:使用者想體驗SLS對OSS(阿裡雲對象存儲服務)通路日志的查詢分析和可視化能力,但是不想開通OSS服務。
場景二:使用者想在SLS中接入主機監控日志來體驗SLS的時序存儲與分析能力,但是真實場景的資料由于敏感性原因無法接入。
場景三:使用者想持續往SLS的日志庫中接入Nginx通路日志,以用于測試SLS的資料加工功能,但是沒有真實的Nginx日志用于持續采集。通過代碼持續模拟Nginx通路日志,并通過SDK的方式寫入的方式對于使用者來說較為繁瑣。
在以上三種場景下,使用者想要使用SLS的日志查詢分析、可視化以及資料加工等功能,卻苦于無法接入測試日志資料。是以在類似的測試或者Demo場景下,為了使用SLS的各類功能,SLS提供的資料采集方式已不是接入資料的最佳選擇,而SLS資料實驗室和SLS資料模拟器将助力使用者更簡單、快速地接入貼近真實場景模拟資料。
二、SLS資料實驗室
“SLS資料實驗室”是SLS應用中心中的一款應用(APP),為使用者提供各種場景的模拟日志資料及各種公共資料集資料,便于使用者體驗和熟悉日志服務的查詢分析、可視化報表等各種操作。
1、使用SLS資料實驗室
使用者進入
日志服務控制台後,在“日志應用”區域單擊“資料實驗室”進入應用。初次使用資料實驗室的使用者需要根據提示完成雲資源通路授權。
資料實驗室目前提供兩種場景:模拟資料和資料集。
1.模拟資料:根據模拟配置生成的資料。使用者可以根據需求修改部分字段值及時間範圍等配置,資料實驗室會根據使用者的配置産生資料。目前提供網站通路日志、資料庫審計日志和主機監控日志三種場景。
2.資料集:來自于各種場景的真實日志資料,目前提供新冠疫情資料集場景。
以網站通路日志為例,在資料實驗室首頁點選網站通路日志的初始化功能按鈕,進入資料模拟任務的配置界面。配置界面包含兩部分内容:範圍頻率配置與日志字段配置。
在範圍頻率配置的标簽頁中可配置如下内容:
配置項 | 說明 |
---|---|
時間範圍 | 指定模拟資料生成的起始時間與結束時間。如果不指定結束時間,會持續生成模拟資料。 |
分布模型 | 生成模拟資料的資料量分布模型,包括随機、周期與線性,使用者可以自定義分布模型的相關參數。以周期分布為例,使用者可以自定義變化周期、最小值、最大值和抖動值。 - 變化周期:資料量分布變化周期,支援秒、分鐘、小時、天和周。 - 最小值:每秒最小資料量。 - 最大值:每秒最大資料量。 - 抖動值:例如設定抖動為0.1,模型資料量為count,則最終的資料量在[0.9count, 1.1count]之間随機。 |
異常點 | 在分布模型中所确定的資料量的基礎上,随機選擇某些時間點,在這些時間點上,資料量會出現異常變化,使用者可以指定出現異常點的機率和異常點資料量變化的倍率。使用者可以配置多個異常選項。 |
在日志字段配置的标簽頁中定義了字段名稱、字段資料類型、字段随機參數和字段值等資訊,使用者可以根據需求,調整字段随機參數和字段值。
在配置完範圍頻率與日志字段後,點選開始導入按鈕,資料實驗室自動完成建立項目和Logstore、建立模拟任務、建立資料場景與生成模拟資料等任務,整個過程需要一分鐘左右的時間。
在模拟資料導入完成後,使用者點選開始使用便可開始使用資料實驗室了。在資料實驗室首頁的“網站通路日志”區域,使用者可以執行:
1.查詢日志:對生成的模拟資料進行查詢與分析
2.檢視報表:檢視該模拟場景的内置報表
3.資料配置:修改模拟任務的配置,并根據新的配置重新導入模拟資料。
4.删除場景:删除目前模拟場景。
2、使用限制
目前資料實驗室提供的網站通路日志、資料庫審計日志、主機監控日志與新冠疫情資料集這四個場景,均免費使用。需要注意的是,資料實驗室主要是便于使用者體驗和熟悉日志服務的查詢分析與可視化的相關操作,是以在資料實驗室中Logstore僅用于存儲模拟資料,資料保留7天,shard數量為1,使用者無法進行資料寫入、編輯索引等操作。
三、SLS資料模拟器
SLS資料實驗室提供了三種模拟資料場景和一個資料集場景,以便于使用者體驗日志服務的查詢分析與可視化的相關操作。資料實驗室用于存儲模拟資料的項目和日志庫(Logstore)由實驗室自動建立,資料僅保留7天,shard數量為1,并且該Logstore僅用于存儲模拟資料,使用者無法進行資料寫入、編輯索引等操作。是以如果使用者想要在自建的Logstore中導入模拟資料,并基于此使用SLS的全鍊路功能時(資料采集、資料加工、智能查詢分析、資料消費等),資料實驗室便無法滿足需求。
1、使用SLS資料模拟器
SLS資料模拟器是SLS提供的一個專用于接入模拟資料的資料接入方式,使用者可以利用資料模拟器在自己的Logstore中生成并接入模拟資料。使用者可以通過兩種方式使用資料模拟器。第一種方式是在
日志服務控制台首頁的接入資料功能區中,選擇模拟資料類的接入方式。
可通過點選檢視更多資料源檢視所有支援的模拟資料場景。
第二種方式是進入項目(Project)後,在Logstore的功能菜單上,點選資料接入->模拟接入側邊的“+”按鈕,随後會彈出模拟接入的視窗。
目前SLS資料模拟器支援21種不同的資料模拟場景,包含各類阿裡雲雲産品日志(SLB七層日志、OSS通路日志等)、自建開源/商業軟體日志(Nginx通路日志、Kubernetes-Ingress日志等)以及Metric日志(主機監控日志等)。
以SLB七層日志為例,在日志服務控制台首頁接入資料功能區中,選擇模拟資料類的接入方式後,找到SLB七層日志,并點選模拟。
随後根據提示選擇相應的項目和日志庫(Logstore),用于存儲生成的模拟資料。如果沒有現成的項目和日志庫,使用者也可以在這一步建立相應的項目和Logstore。如果是在項目内部的Logstore功能菜單上點選的模拟接入,則會自動跳過此步驟。
注1: 如果點選正常接入,則會引導使用者使用SLS提供的資料采集或接入方式,接入對應場景的真實資料,而非模拟場景。
注2: 目前資料模拟器暫時隻支援成都區域(後續會逐漸開放所有區域支援),是以使用者隻能選擇或建立成都區域的項目和Logstore。
選擇完存儲模拟資料的項目和Logstore後,點選下一步,進入模拟任務的配置界面。本步驟與資料實驗室中的模拟任務配置完全相同,允許使用者配置模拟任務的範圍頻率與日志字段的相關資訊,詳情可參考資料實驗室中相關配置步驟的介紹。
配置完範圍頻率與日志字段的資訊後,點選開始導入,便會在Logstore中建立資料模拟任務并生成模拟資料(相應的日志索引也會自動建立),此過程大約需要一分鐘左右的時間。
**
上述過程完成後,點選開始使用,便可在Logstore中查詢到對應的模拟日志資料。
2、模拟資料的查詢分析與可視化
除了在Logstore中生成模拟資料之外,每個模拟資料的場景還提供了一個或多個内置的可視化報表。以SLB七層日志為例,該模拟場景提供了SLB通路日志和SLB記錄檔兩個可視化儀表盤。在模拟資料導入進Logstore後,會自動建立這兩個儀表盤,來可視化地展示模拟日志的分析與統計情況。
除了使用内置儀表盤之外,使用者也可自定義地對模拟日志進行
查詢分析并建立對應的
可視化圖表與
儀表盤。
3、模拟資料的其他使用場景
除了對模拟日志進行查詢分析與可視化外,使用者還可以在自己的Logstore中,基于生成的模拟日志,使用SLS的全鍊路功能,如:
1.基于模拟日志建立
告警;
2.使用
SLS資料加工功能對模拟日志進行規整、富化、分發、彙總、重建索引等加工操作;
3.使用
SLS資料投遞功能将模拟日志實時投遞至OSS、MaxCompute等阿裡雲産品中,對接資料倉庫;
4.使用SLS提供的
日志消費功能對模拟日志進行實時消費,用于流計算、實時計算或對接開源生态(Flink,Blink,Spark Streaming...)等;
5....(更多功能參考
日志服務官方文檔)
4、使用限制
目前SLS資料模拟器隻支援成都區域,使用者可以在成都區域的Logstore中接入模拟資料。後續會逐漸開放所有區域,敬請期待。
結語
在很多測試或Demo場景下,模拟資料的接入是一個經常會遇到的痛點。SLS資料實驗室與資料模拟器為使用者提供了便捷的模拟資料接入方式,使使用者能快速、簡單地生成貼近真實場景的模拟資料到SLS日志庫中。使用者可以基于SLS資料實驗室體驗日志服務的查詢分析與可視化功能,也可以利用SLS資料模拟器将20+場景的模拟資料接入到自己的Logstore中,進而使用SLS的全鍊路功能(查詢分析、可視化、告警、資料加工...)。更進一步地,使用者還可以使用SLS資料投遞功能将模拟資料輸出到其他資料倉庫中,抑或是使用SLS日志消費功能,将模拟資料用于流計算、實時計算等,對接開源生态。
最後預告一下,SLS資料模拟器将在未來提供更豐富完整的模拟場景支援,也将開放使用者自定義模拟資料場景,敬請期待!