Log Service的資料擷取支援多種採集方式與資料來源。本文將為您介紹不同情境下的採集方式。
資料擷取方式
資料擷取作為使用Log Service功能的第一步,協助您將需要處理的日誌或資料轉送並儲存到Log Service中。您需要根據具體的使用情境選擇合適的資料擷取方式,以便後續使用Log Service的其他功能。
資料擷取方式主要分為Logtail採集,LoongCollector採集,SDK&API,雲產品日誌接入,資料匯入,以及其他採集方式。
Logtail採集:Logtail是Log Service提供的日誌採集Agent,用於採集阿里雲ECS、自建IDC或其他雲廠商等伺服器上的日誌。Logtail基於記錄檔,無侵入式採集日誌。您無需修改應用程式代碼,且採集日誌不會影響您的應用程式運行。
LoongCollector採集:LoongCollector是Log Service推出的新一代採集Agent,是Logtail的升級版,未來還將融合Arms的相關採集Agent能力,包括Prometheus抓取和eBPF無侵入採集等。
雲產品日誌接入:Log Service支援採集彈性計算、儲存服務、安全、資料庫等多種阿里雲雲產品的日誌資料,包括雲產品的操作資訊、健全狀態、業務動態等資訊。如果您需要將其他雲產品中的日誌進行採集供後續分析,請選擇不同產品的採集方式。
資料匯入:Log Service支援匯入已有資料,包括其他應用資料與歷史檔案資料。
其他採集方式:Log Service支援使用第三方採集工具、通過協議傳輸日誌等方式上傳日誌。
Log Service資料擷取的總體概覽如下圖:
資料匯入
如果您希望將已有的其他資料匯入到Log Service進行分析,Log Service也支援以下資料匯入的功能。
您可以將OSS Bucket中的記錄檔,通過資料匯入方式匯入到Log Service。具體請參考匯入OSS資料。
您可以將Elasticsearch資料匯入到Log Service。具體請參考匯入Elasticsearch資料。
您可以通過資料匯入的方式將Amazon S3的記錄檔匯入到Log Service。具體請參考匯入Amazon S3檔案。
您可以將Kafka資料匯入到Log Service,您可以參考匯入Kafka資料。
Logtail只採集增量日誌。如果您需要採集歷史日誌,可以參考匯入歷史記錄檔。
其他採集方式
如果以上方式不符合您的使用情境,您也可以通過WebTracking、Kafka協議、Syslog協議、Loggie即時上傳日誌到Log Service。
SysLog協議
您可以使用Syslog-ng採集日誌並通過Syslog協議上傳到Log Service,具體可以參考使用Syslog協議上傳日誌。
Kafka協議
您可以使用Beats系列軟體、Collectd、Fluentd、Logstash、Telegraf、Vector等採集工具採集日誌,並通過Kafka協議上傳到Log Service,具體可以參考樣本Kafka協議。
網頁/JS
如果您需要收集和分析使用者在瀏覽器、小程式上的資訊,請參考JS/Web Tracking。Log Service也支援使用Web Tracking採集Unity3D日誌,請參考採集Unity3D日誌。
採集配置產生器
上文介紹了資料擷取方法,當您使用Logtail或API採集日誌時,Log Service向您提供採集配置產生器工具。該工具能自動構建CRD-AliyunPipelineConfig方式的CRD定義及CreateLogtailPipelineConfig調用參數指令碼,方便您建立Logtail採集配置。
最佳實務情境
在您瞭解完資料擷取的方式後,為您推薦幾種在真實使用情境下的資料擷取實踐教程。
某公司的網站應用程式部署在地區A,Log Service的Project部署在地區B,現計劃通過Logtail採集配置將部署在地區A的ECS執行個體中的日誌資料發送到地區B的Project中。此時存在跨地區採集的情況,需要參考通過Logtail跨地區採集日誌。
越來越多裝置開始逐步走進日常生活,例如智能路由器、各種電視棒、天貓精靈、掃地機器人等,讓我們體驗到智能領域的便利。傳統軟體領域的嵌入式開發模式在IoT裝置領域的應用遇到了很多挑戰,IoT裝置數目多、分布廣,難以調試且硬體受限,如何處理IoT裝置日誌可以參考採集-IoT/嵌入式日誌。
推廣網頁時,多少使用者做了點擊?發送傳單時,如何確保對方已讀?移動App營運活動頁面,如何分析使用者訪問情況?對這類個人化的採集與統計需求,如何能以快捷的手段滿足這類使用者行為採集可以參考採集-通過WebTracking採集日誌。
更多詳細瞭解請參考最佳實務。
常見問題
專線方式接入應如何選擇網路?
請選擇阿里雲內網(傳統網路或Virtual Private Cloud)。
如何選擇網路類型和存取點(Endpoint)?
不同網路類型的使用情境,請參見Logtail網路類型,啟動參數與設定檔。存取點(Endpoint)的列表,請參見服務存取點。開啟傳輸加速網域名稱的步驟,請參見管理傳輸加速。
採集公網資料時能否採集公網IP地址?
您可以在Logstore屬性中開通記錄外網IP功能。更多資訊,請參見建立Logstore。
將地區A上的ECS日誌採集到地區B下Log ServiceProject中,應如何選擇網路?
在地區A上的ECS中安裝地區B公網的版本Logtail,進行公網傳輸。其他情況下的網路選擇,請參見Logtail網路類型,啟動參數與設定檔。
如何快速判斷目標網域名稱能否串連?
執行以下命令,如果有返回資訊則表示可以連通。其中
$myproject為Project名,cn-hangzhou.log.aliyuncs.com為訪問存取點。curl $myproject.cn-hangzhou.log.aliyuncs.com更多問題可查看資料擷取常見問題。