91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Logtail的工作原理是什么

發布時間:2021-12-03 10:36:59 來源:億速云 閱讀:147 作者:柒染 欄目:云計算

Logtail的工作原理是什么,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

Logtail數據采集原理介紹,包括文件采集原理以及插件采集原理。

文件采集原理

Logtail文件采集的流程包括:文件監聽、文件讀取、日志處理、日志過濾、日志聚合和數據發送6個環節。下面將分別進行介紹:


Logtail的工作原理是什么

  • 注意:本節只介紹正常運行模式中Logtail的文件采集原理,該模式下不支持采集歷史文件,如有采集歷史文件需求,請參考采集歷史文件。

Logtail的工作原理是什么

文件監聽

  1. 當Logtail獲取到采集配置后,根據配置的日志路徑、文件名、最大監控目錄深度遞歸掃描目錄下符合文件名規則的日志目錄和文件。

  2. 為保證日志采集時效性以及穩定性,Logtail會對采集目錄注冊事件監聽(Linux下Inotify、Windows下使用ReadDirectoryChangesW)以及定期輪詢。

  3. 當第一次應用配置時,對于目錄下存量的日志文件不會進行采集,直到文件在配置應用后產生修改事件才會采集。

  4. 當監聽到文件修改后,會進入文件讀取環節。

文件讀取

  1. 每次Logtail讀取會從該文件上一次讀取的偏移處開始。

  2. 若該文件首次讀取,會檢查該文件大小,若文件小于1MB,則從文件頭開始讀取,否則從文件尾1MB處開始讀取。

  3. 每次讀取最多512KB數據,因此一條日志最大支持512KB。

日志處理

  1. 對于讀取的數據塊,會根據行首配置進行分行,切分成多條日志。

  2. 對于每條日志內容執行對應的解析,例如正則、分隔符、JSON等。

  3. 若未配置時間字段,則日志時間為當前解析時間;若配置了時間提取字段,則從解析的日志字段中提取時間,若時間距離當前時間超過12小時,則丟棄該日志并上傳錯誤信息。

  4. 若該日志可以被正確解析,則進入日志過濾環節。

  5. 若該日志解析失敗且開啟 高級配置中的丟棄解析失敗日志,則直接丟棄該日志,并上報解析失敗的報錯信息

  6. 若該日志解析失敗,但未開啟 高級配置中的丟棄解析失敗日志,則將解析失敗的原始日志上傳,其中Key為__raw_log__、Value為日志內容

日志過濾

  1. 若用戶未設置 高級配置 中的 過濾器配置,則跳過日志過濾環節。

  2. 若用戶已經設置過濾器配置,則會對每條日志中的所有字段進行遍歷并驗證。

  3. 只有過濾器中配置的所有字段都在該日志出現,且所有對應的字段全部符合過濾器配置時,日志才會被采集,否則丟棄該日志。

日志聚合

  1. 為降低網絡請求次數,當日志處理、過濾完畢后,會在Logtail內部緩存一段時間再進行發送。

  2. 緩存規則有3條,任一一條滿足則觸發發送:

    1. 日志聚合時間超過3秒

    2. 日志聚合條數超過4096條

    3. 日志聚合總大小超過1MB

日志發送

  1. 日志發送前會進行壓縮,目前Logtail采用的是LZ4壓縮算法。

  2. 日志發送受限于max_bytes_per_secsend_request_concurrency 限制,Logtail會保證發送速率以及并發不超過配置值,具體參數請參考啟動參數配置。

  3. 若數據發送失敗,則根據錯誤信息選擇重試還是丟棄數據:

    1. 401錯誤,說明沒有權限采集數據,直接丟棄。

    2. 404錯誤,說明project或logstore不存在,直接丟棄。

    3. 403錯誤,Quota超限,等待3秒后重試。

    4. 500錯誤,等待3秒后重試。

    5. 網絡超時,等待3秒后重試。

插件采集原理

Logtail的插件采集流程主要包括以下環節:插件數據采集、數據處理、日志聚合和日志發送。

插件數據采集

插件數據采集的原理在每個插件的文檔中都有介紹,具體請參見各個插件的幫助文檔。

image.png

數據處理

插件數據處理邏輯請參考插件-數據處理。

日志聚合

插件的日志聚合邏輯和文件采集的日志聚合邏輯一致。

日志發送

插件的日志發送邏輯和文件采集的日志發送邏輯一致。

資源限制

Logtail會根據配置文件中的資源限制進行工作,若資源占用長時間(5分鐘)超過限定值,則Logtail會進行強制重啟。重啟后可能會產生一定的數據重復。

數據采集可靠性

Logtail在采集數據時,會定期將采集的點位(CheckPoint)信息保存到本地,若遇到宕機、Crash等異常時,Logtail再次啟動會從上一次記錄的位置處開始采集數據,盡可能保證數據不丟失。

Logtail內部采用了很多機制提升日志采集可靠性,但并不能保證日志絕對不會丟失。以下情況可能造成日志丟失:

  1. Logtail未運行且日志輪轉多次。

  2. 日志輪轉速度極快,例如1秒輪轉1次。

  3. 日志采集速度長期無法達到日志產生速度。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

当雄县| 昌吉市| 会理县| 高台县| 武平县| 清水河县| 类乌齐县| 剑阁县| 休宁县| 甘孜| 徐水县| 抚顺市| 治县。| SHOW| 即墨市| 宁化县| 凭祥市| 上杭县| 漳平市| 沙洋县| 麻栗坡县| 枣强县| 吉水县| 长宁县| 合山市| 秦安县| 夏邑县| 江孜县| 深圳市| 汶上县| 石景山区| 铁岭市| 扶风县| 湖口县| 航空| 三台县| 道孚县| 开阳县| 济宁市| 怀仁县| 郧西县|