日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

什么是Logtail

Logtail是日志服務(wù)提供的日志采集Agent,用于采集阿里云ECS、自建IDC或其他云廠商等服務(wù)器上的日志。本文介紹Logtail的采集流程、功能、優(yōu)勢、使用限制及配置流程等信息。

Logtail多年來一直承載著阿里巴巴集團(tuán)重要服務(wù)的數(shù)據(jù)采集。每天采集數(shù)百萬服務(wù)器上的實(shí)時數(shù)據(jù),日流量數(shù)十PB,并歷經(jīng)多次雙十一挑戰(zhàn)。

采集流程

監(jiān)聽日志

在服務(wù)器上安裝Logtail及在日志服務(wù)控制臺上創(chuàng)建Logtail采集配置后,日志服務(wù)會實(shí)時下發(fā)Logtail采集配置到Logtail,Logtail根據(jù)Logtail采集配置開始監(jiān)聽文件。Logtail根據(jù)Logtail采集配置中的日志路徑和最大監(jiān)控目錄深度,逐層掃描符合規(guī)則的日志目錄和文件。

將Logtail采集配置應(yīng)用到機(jī)器組后,對應(yīng)服務(wù)器上沒有發(fā)生修改事件的日志文件會被判定為歷史日志文件,Logtail監(jiān)聽到歷史日志文件,并不會采集。當(dāng)日志文件產(chǎn)生了修改事件,才會觸發(fā)采集流程,Logtail開始讀取文件。如果您要采集歷史日志文件,請參見導(dǎo)入歷史日志文件

為保證采集日志的時效性以及穩(wěn)定性,Logtail會對待采集的目錄注冊事件監(jiān)聽(Linux下使用Inotify)以及定期輪詢。

讀取日志

Logtail監(jiān)聽到日志文件,并確認(rèn)有更新后,開始讀取。

  • 首次讀取日志文件時,日志服務(wù)默認(rèn)首次讀取大小為1024 KB。

    • 如果文件小于1024 KB,則從文件內(nèi)容起始位置開始讀取。

    • 如果文件大于1024 KB,則從距離文件末尾1024 KB的位置開始讀取。

    說明

    日志服務(wù)支持自定義首次讀取大小。

    • 控制臺方式:在Logtail配置中修改首次采集大小參數(shù)。具體操作,請參見高級配置

    • API方式:在Logtail配置中修改tail_size_kb參數(shù)。具體操作,請參見advanced參數(shù)說明

  • 如果Logtail已讀取過該日志文件,則從上次讀取的Checkpoint處繼續(xù)讀取。

  • 讀取日志文件時,每次最多可以讀取512 KB,因此每條日志的大小請控制在512 KB以內(nèi),否則無法正常讀取。

說明

如果您修改了服務(wù)器上的時間,請手動重啟Logtail,否則會導(dǎo)致日志時間不正確、意外丟棄日志等現(xiàn)象。

處理日志

Logtail讀取日志后,對日志內(nèi)容進(jìn)行分行、解析、設(shè)置時間字段。

  • 分行

    如果Logtail采集配置中指定了行首正則表達(dá)式,則Logtail根據(jù)行首正則表達(dá)式對每次讀取的日志進(jìn)行分行,切分成多條日志;如果沒有指定行首正則表達(dá)式,則將一行日志作為一條日志處理。

  • 解析

    根據(jù)Logtail采集配置中配置的采集模式,對每條日志內(nèi)容進(jìn)行解析。

    說明

    如果您的正則表達(dá)式比較復(fù)雜,可能會導(dǎo)致CPU占用率過高,請使用合理高效的正則表達(dá)式。

    如果解析失敗,會根據(jù)Logtail采集配置中是否開啟丟棄解析失敗日志的功能進(jìn)行處理。

    • 開啟丟棄解析失敗日志,則直接丟棄該日志,并上報(bào)解析失敗的報(bào)錯信息。

    • 關(guān)閉丟棄解析失敗日志,則上傳解析失敗的原始日志,其中Key為raw_log、Value為日志內(nèi)容。

  • 設(shè)置日志時間字段

    • 如果未配置時間字段,則日志時間為當(dāng)前解析日志的時間。

    • 如果配置了時間字段:

      • 日志中記錄的時間距離當(dāng)前時間12小時以內(nèi),則從解析的日志字段中提取時間。

      • 日志中記錄的時間距離當(dāng)前時間12小時以上,則丟棄該日志并上傳錯誤信息。

過濾日志

處理日志后,根據(jù)Logtail采集配置中的過濾器配置過濾日志。

  • 在Logtail采集配置中未設(shè)置過濾器配置,則不過濾日志,執(zhí)行下一個步驟。

  • Logtail采集配置已設(shè)置過濾器配置,則對每條日志中的所有字段進(jìn)行遍歷并驗(yàn)證。

    只有符合過濾器配置的日志被采集。

聚合日志

為降低網(wǎng)絡(luò)請求次數(shù),在日志處理、過濾完畢后,會在Logtail內(nèi)部緩存一段時間后進(jìn)行聚合打包,再發(fā)送到日志服務(wù)。緩存數(shù)據(jù)后,觸發(fā)打包日志發(fā)送到日志服務(wù)的條件如下:

  • 日志聚合時間超過3秒。

  • 日志聚合條數(shù)超過4000條。

  • 日志聚合總大小超過512 KB。

發(fā)送日志

Logtail將采集到的日志聚合并發(fā)送到日志服務(wù)。如果數(shù)據(jù)發(fā)送失敗,Logtail自動根據(jù)錯誤信息決定重試或放棄發(fā)送。

錯誤信息

說明

Logtail處理方式

401錯誤

當(dāng)前賬號沒有權(quán)限采集數(shù)據(jù)。為該賬號授予數(shù)據(jù)接入相關(guān)權(quán)限。具體操作,請參見配置權(quán)限助手

直接丟棄日志包。

404錯誤

Logtail采集配置中指定的Project或Logstore不存在。

直接丟棄日志包。

403錯誤

Shard Quota超出限制。

等待3秒后重試。

500錯誤

服務(wù)端異常。

等待3秒后重試。

說明

如果要調(diào)整數(shù)據(jù)的發(fā)送速度和最大并發(fā)數(shù),您可以設(shè)置啟動參數(shù)配置文件中的max_bytes_per_sec參數(shù)和send_request_concurrency參數(shù)。具體操作,請參見設(shè)置Logtail啟動參數(shù)

功能優(yōu)勢

  • 基于日志文件,無侵入式采集日志。您無需修改應(yīng)用程序代碼,且采集日志不會影響您的應(yīng)用程序運(yùn)行。

  • 除采集文本日志外,還支持采集binlog、http數(shù)據(jù)、容器日志等。

  • 支持Docker、Kubernetes集群等容器集群的數(shù)據(jù)采集。

  • 穩(wěn)定處理日志采集過程中的各種異常。當(dāng)遇到網(wǎng)絡(luò)異常、服務(wù)端異常等問題時會采取主動重試、本地緩存數(shù)據(jù)等措施保障數(shù)據(jù)安全。

  • 基于日志服務(wù)的集中管理能力。安裝Logtail后,只需要在日志服務(wù)上配置機(jī)器組、Logtail采集配置等信息即可。

  • 完善的自我保護(hù)機(jī)制。為保證運(yùn)行在服務(wù)器上的Logtail不會明顯影響您服務(wù)器上其他服務(wù)的性能,Logtail在CPU、內(nèi)存及網(wǎng)絡(luò)使用方面都做了嚴(yán)格的限制和保護(hù)機(jī)制。

配置流程

image
  1. 安裝Logtail

    如果ECS實(shí)例且與日志服務(wù)Project屬于同一賬號且在同一地域,請參見安裝Logtail(ECS實(shí)例)。其他情況,請參見安裝Logtail(Linux系統(tǒng))安裝Logtail(Windows系統(tǒng))

  2. 配置用戶標(biāo)識

    在采集非本賬號ECS、自建IDC或其他云廠商服務(wù)器日志時需要配置用戶標(biāo)識。

  3. 創(chuàng)建機(jī)器組

    日志服務(wù)Project支持使用IP地址用戶自定義標(biāo)識創(chuàng)建機(jī)器組。

  4. 創(chuàng)建Logtail采集配置

    您可以通過日志服務(wù)控制臺配置向?qū)瓿刹僮鳌>唧w操作,請參見采集文本日志采集容器日志

完成上述操作后,Logtail開始采集您服務(wù)器上的日志,并發(fā)送到對應(yīng)的Logstore中。您可以通過日志服務(wù)控制臺、API、SDK或CLI查詢?nèi)罩尽?/p>

核心概念

  • 機(jī)器組:一個機(jī)器組包含一臺或多臺待采集同類日志的服務(wù)器。將Logtail采集配置應(yīng)用到機(jī)器組后,日志服務(wù)會根據(jù)Logtail采集配置采集機(jī)器組內(nèi)所有服務(wù)器上的日志。

    日志服務(wù)通過機(jī)器組管理所有需要通過Logtail采集日志的服務(wù)器,支持通過IP地址或者用戶自定義標(biāo)識的方式定義機(jī)器組。您可以通過日志服務(wù)控制臺管理機(jī)器組(包括創(chuàng)建、刪除機(jī)器組,添加、移除機(jī)器等操作)。 更多信息,請參見什么是機(jī)器組

  • Logtail:日志服務(wù)提供的日志采集Agent,運(yùn)行在待采集日志的服務(wù)器上。

    • Linux操作系統(tǒng):Logtail安裝在/usr/local/ilogtail目錄下,啟動兩個以ilogtail開頭的獨(dú)立進(jìn)程,一個為采集進(jìn)程,另外一個為守護(hù)進(jìn)程,程序運(yùn)行日志保存在/usr/local/ilogtail/ilogtail.LOG文件中。更多信息,請參見安裝Logtail(Linux系統(tǒng))

    • Windows操作系統(tǒng)

      • Logtail(32位程序)

        • 安裝在Windows 32位操作系統(tǒng)中時,對應(yīng)的安裝目錄為C:\Program Files\Alibaba\Logtail

        • 安裝在Windows 64位操作系統(tǒng)中時,對應(yīng)的安裝目錄為C:\Program Files (x86)\Alibaba\Logtail

          說明

          Windows 64位操作系統(tǒng)支持運(yùn)行32/64位應(yīng)用程序,但是出于兼容性考慮,在Windows 64位操作系統(tǒng)上,Windows會使用單獨(dú)的x86目錄來存放32位應(yīng)用程序。

      • Logtail(64位程序)

        只支持安裝在Windows 64位操作系統(tǒng)中,對應(yīng)的安裝目錄為C:\Program Files\Alibaba\Logtail

      您可以通過控制面板 > 管理工具 > 服務(wù),查看LogtailDaemon服務(wù)(Logtail 1.0.0.0及以上版本)或LogtailWorker服務(wù)(Logtail 0.x.x.x版本),確認(rèn)Logtail的運(yùn)行狀態(tài)。程序運(yùn)行日志保存在安裝目錄下的 ilogtail.LOG文件中。更多信息,請參見安裝Logtail(Windows系統(tǒng))

  • Logtail配置:Logtail采集日志的策略集合。通過在創(chuàng)建Logtail采集配置時設(shè)置數(shù)據(jù)源、采集模式等參數(shù),實(shí)現(xiàn)定制化的采集策略。Logtail采集配置定義了如何在服務(wù)器上采集同類日志并解析、發(fā)送到指定的日志服務(wù)Logstore上。

基本功能

功能

說明

實(shí)時采集日志

動態(tài)監(jiān)控日志文件,實(shí)時讀取、解析增量日志。日志從生成到發(fā)送到日志服務(wù)的延遲一般在3秒內(nèi)。更多信息,請參見Logtail采集詳情

說明

Logtail不支持采集歷史日志,對于一條日志,讀取該日志的時間減去日志中記錄的時間,差值超過12小時會被丟棄。如果您要采集歷史日志文件,請參見導(dǎo)入歷史日志文件

自動處理日志輪轉(zhuǎn)

很多應(yīng)用會按照文件大小或者日期對日志文件進(jìn)行輪轉(zhuǎn)(rotation),把原日志文件重命名,并新建一個空日志文件等待寫入。例如:app.LOG文件,通過日志輪轉(zhuǎn)會生成 app.LOG.1app.LOG.2 等。您可以指定采集日志寫入的文件,如app.LOG,Logtail會自動檢測到日志輪轉(zhuǎn)過程,保證這個過程中不會丟失日志數(shù)據(jù)。

多種采集輸入源

Logtail除支持采集文本日志外,還支持syslog、http、MySQL binlog等數(shù)據(jù)源。更多信息,請參見數(shù)據(jù)采集概述

兼容開源采集Agent

Logtail支持Logstash、Beats等開源軟件采集的數(shù)據(jù)作為數(shù)據(jù)源。更多信息,請參見數(shù)據(jù)采集概述

自動處理采集異常

因?yàn)榉?wù)端錯誤、網(wǎng)絡(luò)措施、配額超限等各種異常導(dǎo)致數(shù)據(jù)發(fā)送失敗,Logtail會按場景主動重試。如果重試失敗則將數(shù)據(jù)寫入本地緩存,等待3秒自動重發(fā)。更多信息,請參見如何使用Logtail自動診斷工具

靈活配置采集策略

可以通過Logtail采集配置非常靈活地采集日志。您可以根據(jù)實(shí)際場景指定日志目錄和文件,支持精確匹配,也支持通配符模糊匹配。您也可以自定義提取日志的方式和提取字段的名稱,日志服務(wù)支持通過正則表達(dá)式提取日志。

由于日志服務(wù)中的日志數(shù)據(jù)模型要求每條日志必須有精確的時間戳信息,Logtail提供了自定義的日志時間格式,方便您從不同格式的日志數(shù)據(jù)中提取必要的日志時間戳信息。

自動同步Logtail采集配置

您在日志服務(wù)控制臺上新建或更新Logtail采集配置,一般情況下,Logtail在3分鐘內(nèi)即可接收并生效。更新過程中不會丟失日志數(shù)據(jù)。

自我監(jiān)控狀態(tài)

Logtail會實(shí)時監(jiān)控自身CPU和內(nèi)存消耗,避免Logtail消耗您太多資源而影響您的其他服務(wù)。Logtail在運(yùn)行過程中,如果資源使用超出限制將會自動重啟,避免影響服務(wù)器上的其他服務(wù)。同時,Logtail有主動的網(wǎng)絡(luò)限流保護(hù)措施,防止過度消耗帶寬。更多信息,請參見啟動參數(shù)配置文件(ilogtail_config.json)

簽名數(shù)據(jù)發(fā)送

為保證您的數(shù)據(jù)在發(fā)送過程中不會被篡改,Logtail會通過可信通道從服務(wù)端獲取私密Token,并對所有發(fā)送日志的數(shù)據(jù)包進(jìn)行數(shù)據(jù)簽名。

說明

Logtail在獲取私密Token時采用HTTPS通道,保障相關(guān)安全性。

數(shù)據(jù)采集可靠性

Logtail在采集日志時,定期將采集的點(diǎn)位(CheckPoint)信息保存到本地,如果遇到服務(wù)器意外關(guān)閉、進(jìn)程崩潰等異常情況時,Logtail重啟后會從上一次記錄的位置開始采集數(shù)據(jù),盡可能保證數(shù)據(jù)不丟失。Logtail會根據(jù)啟動參數(shù)配置文件中配置進(jìn)行工作,如果資源占用超過限定值5分鐘以上,則Logtail會強(qiáng)制重啟。重啟后可能會產(chǎn)生一定的數(shù)據(jù)重復(fù)。

Logtail內(nèi)部采用了很多機(jī)制提升日志采集可靠性,但并不能保證日志一定不會丟失。以下情況可能造成日志丟失:

  • Logtail未運(yùn)行且日志輪轉(zhuǎn)多次。

  • 日志輪轉(zhuǎn)速度極快,例如1秒輪轉(zhuǎn)1次。

  • 日志采集速度長期無法達(dá)到日志產(chǎn)生速度。

相關(guān)文檔