多輸入(input)多輸出(output)驗證

#作者:程宏斌

文章目錄

  • 前言
  • Flb 1.9.4 INCLUDE配置測試
    • 測試方案
    • 測試配置文件
    • 測試命令
  • Flb 3.0.2 INCLUDE配置測試
    • 測試方案
    • 測試配置文件
    • 啟動命令
  • 結論
    • 結論一:
    • 結論二:

前言

需要設計并執行一組測試用例,這些測試用例將包括以子文件形式組織的多輸入(input)和多輸出(output)的場景。

Flb 1.9.4 INCLUDE配置測試

測試方案

這里設定了兩組輸入和輸出:一組從/vdata/logtest/input1/*收集日志,輸出到/var/log/pods/logtest/regex-input1目錄;另一組從/vdata/logtest/input2/*收集日志,發送到/var/log/pods/logtest/regex-input2。

測試配置文件

fluent-bit.conf

@INCLUDE 9.2.2input.conf
@INCLUDE 9.2.2output.conf
[SERVICE]Flush 1Parsers_File parsers.confHTTP_Server  OnHTTP_Listen  0.0.0.0HTTP_PORT    3194
[INPUT]Name         tailTag          regex-input1DB           ./db/regex-fluent.dbRead_from_Head truePath  /vdata/logtest/input1/*.logPath_Key  pod_log_path
[FILTER]Name                  multilineMatch                 *multiline.key_content logmultiline.parser      multiline-regex-goemitter_mem_buf_limit 2048M
[FILTER]Name modifyMatch *Add paas_log_belong         userAdd paas_log_type           middlewareAdd paas_collection_type    userfileAdd paas_account_id         123456789Add paas_region_id          lftstAdd paas_product_id         cccAdd paas_instance_name      test10Add paas_host_ip            127.0.0.1Add paas_manager_ip         127.0.0.1Add pod_namespace           defaultAdd pod_name                test-0Add pod_container_name      test 
[OUTPUT]Name fileMatch regex-input1Path /var/log/pods/logtest

input.conf

[INPUT]Name         tailTag          regex-input2DB           ./db/regex-fluent.dbRead_from_Head truePath  /vdata/logtest/input2/*.logPath_Key  pod_log_path

output.conf

[OUTPUT]Name fileMatch regex-input2Path /var/log/pods/logtest

測試命令

mkdir -p /vdata/logtest/input1 /vdata/logtest/input2
touch /vdata/logtest/input1/error.log /vdata/logtest/input2/error.log
./bin/fluent-bit-1.9.4 -c etc/9.2.2fluent-bit.conf &>./logs/fluent-bit.log &
#此處根據多個input修改腳本,讓日志文件同時輸出兩份到不同的目錄
timeout 1200 bash 9create_test_log.sh 40 &

Flb 3.0.2 INCLUDE配置測試

測試方案

這里設定了兩組輸入和輸出:一組從/var/log/pods/logtest/input1/.log收集日志,輸出到/home/logtest目錄;另一組從/var/log/pods/logtest/input2/.log收集日志,發送到Kafka。

測試配置文件

fluent-bit.conf
這里使用上一章節的INCLUDE配置文件,因為在3.0.2版本和1.9.4版本中,multiline處理參數有所不同。

@INCLUDE 9.2.2input.conf
@INCLUDE 9.2.2output.conf
[SERVICE]Flush 1Parsers_File parsers.confHTTP_Server  OnHTTP_Listen  0.0.0.0HTTP_PORT    3302
[INPUT]Name         tailTag          regex-input1DB           ./db/regex-fluent.dbRead_from_Head truePath  /vdata/logtest/input1/*.logPath_Key  pod_log_pathmultiline.parser      multiline-regex-go
[FILTER]Name modifyMatch *Add paas_log_belong         userAdd paas_log_type           middlewareAdd paas_collection_type    userfileAdd paas_account_id         123456789Add paas_region_id          lftstAdd paas_product_id         cccAdd paas_instance_name      test10Add paas_host_ip            127.0.0.1Add paas_manager_ip         127.0.0.1Add pod_namespace           defaultAdd pod_name                test-0Add pod_container_name      test 
[OUTPUT]Name fileMatch regex-input1Path /var/log/pods/logtest

啟動命令

mkdir -p /vdata/logtest/input1 /vdata/logtest/input2
touch /vdata/logtest/input1/error.log /vdata/logtest/input2/error.log
./bin/fluent-bit-3.0.2 -c etc/9.3.2fluent-bit.conf &>./logs/fluent-bit.log &
#此處根據多個input修改腳本,讓日志文件同時輸出兩份到不同的目錄
timeout 1200 bash 9create_test_log.sh 40 &

結論

監控數據匯總:
在這里插入圖片描述

結論一:

fluent-bit能夠根據 INCLUDE 配置的規則,將來自不同輸入源的日志條目發送到不同的輸出目標,實現靈活的日志處理和管理。

結論二:

使用多組 input 和 output 并沒有明顯提升 Fluent Bit 的采集性能。從測試結果可以看出,雖然不同版本的 Fluent Bit 在單獨配置 input 和 output 時表現出一定的性能差異,但在同時配置多組 input 和 output 時,并未表現出顯著的性能提升。這表明,增加多組配置可以簡化配置的閱讀性,但并不能顯著提高日志采集的效率。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/96351.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/96351.shtml
英文地址,請注明出處:http://en.pswp.cn/web/96351.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

行業學習【電商】:垂直電商如何理解?以專業寵物平臺為例

聲明:以下部分內容含AI生成 “寵物等愛好者的專業平臺”指的是垂直電商的一個具體例子。 “垂直電商” 就是指不賣所有東西,只深耕某一個特定領域(即“垂直”領域)的電商平臺。 “寵物愛好者的專業平臺”就是這樣一個專門為養寵…

GPT(Generative Pre-trained Transformer)模型架構與損失函數介紹

目錄 一、核心架構:Transformer Decoder 1. 核心組件:僅解碼器(Decoder-Only)的堆疊 2. 輸入表示:Token 位置 3. 輸出 二、訓練過程:兩階段范式 階段一:預訓練(Pre-training&…

GitHub 熱榜項目 - 日榜(2025-09-10)

GitHub 熱榜項目 - 日榜(2025-09-10) 生成于:2025-09-10 統計摘要 共發現熱門項目:15 個 榜單類型:日榜 本期熱點趨勢總結 本期GitHub熱榜呈現三大技術熱點:LLM智能體應用爆發(如parlant、AutoAgent)&a…

論文閱讀:arxiv 2023 Large Language Models are Not Stable Recommender Systems

總目錄 大模型相關研究:https://blog.csdn.net/WhiffeYF/article/details/142132328 https://arxiv.org/pdf/2312.15746 速覽 破解大語言模型在推薦系統中的不穩定性 該論文聚焦于大語言模型(LLMs)在推薦系統中的應用問題,指出…

Linux的使用——FinalShell下載使用及連接云服務器的教程

一、注冊免費阿里云服務器 1. 進入阿里云服務器官網 阿里云-計算,為了無法計算的價值https://www.aliyun.com/?spm5176.ecscore_server.console-base_top-nav.dlogo.39144df5uvPLOm 2. 點擊免費試用 這里我已經試用過了,大家選擇合適的云服務器點擊立…

如何清理 Docker 占用的巨大磁盤空間

我相信很多人在使用 Docker 一段時間后,都會遇到一個常見問題:磁盤空間被迅速吃光,尤其是在進行頻繁的鏡像構建、測試和運行容器時。以我自己為例,在 Ubuntu 24.04設備上,docker system df -v 一看,Docker …

【CMake】緩存變量

目錄 一. 緩存變量 二.創建緩存變量 2.1.使用set()來創建緩存變量 2.2.使用FORCE參數來覆蓋緩存變量 2.2.1.示例1——不帶force的set是不能覆蓋已經存在的緩存變量的 2.2.2.示例2——帶force的set才能覆蓋已經存在的緩存變量 2.2.3.對比示例 2.3.命令行 -D 創建/覆蓋緩…

vue2使用若依框架動態新增tab頁并存儲之前的tab頁的操作

1. 應用場景:點擊歷史記錄,要比較兩個tab頁的內容時,需要做到切換tab頁來回看左右對數據對比。2.開發難點若依項目正常是把路由配置到菜單管理里,都是設定好的。不過它也給我們寫好了動態新增tab頁的方,需要我們自己來…

論文閱讀-SelectiveStereo

文章目錄1 概述2 模塊2.1 SelectiveIGEV和IGEV的差異2.2 上下文空間注意力2.2.1 通道注意力2.2.2 空間注意力2.3 SRU3 效果參考資料1 概述 本文主要結合代碼對Selective的創新點進行針對性講解,相關的背景知識可以參考我寫的另兩篇文章論文閱讀-RaftStereo和論文閱…

深入分析神馬 M56S+ 202T 礦機參數與性能特點

引言在比特幣(BTC)和比特幣現金(BCH)等主流加密貨幣的挖掘過程中,礦機的選擇直接關系到挖礦的效率與收益。神馬 M56S 202T礦機是SHA-256算法的礦機,憑借其強大的算力和高效的能效比,成為了礦工們…

36.2Linux單總線驅動DS18B20實驗(詳細講解代碼)_csdn

想必看過我很多次博客的同學,都知道了編寫驅動的流程! 這里我們還是按照以前的習慣來一步一步講解! 單總線驅動,在F103和51單片機的裸機開發中是經常見的。 linux驅動代碼編寫實際上就是,端對端的編程! 就是…

【雜類】應對 MySQL 處理短時間高并發的請求:緩存預熱

一、什么是緩存預熱?1. 核心概念??緩存預熱(Cache Warm-up)?? 是指在系統??正式對外提供服務之前??,或??某個高并發場景來臨之前??,??主動??將后續極有可能被訪問的熱點數據從數據庫(MySQL…

點評項目(Redis中間件)第三部分短信登錄,查詢緩存

可以直接看后面Redis實現功能的部分基于session實現短信登錄發送短信驗證碼前端請求樣式業務層代碼Service public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {Overridepublic Result sendCode(String phone, HttpSession se…

線性方程求解器的矩陣分裂

大概思路是對的&#xff0c;但是查老師可能會出現幻覺&#xff0c;小心食用 &#x1f603;這段代碼是在初始化迭代法求解器&#xff0c;構建迭代矩陣和分裂矩陣。以下是詳細解釋&#xff1a; if init_from_func or init_from_input:# 1. 存儲剛度矩陣self.stiff_p stiff_p# 2.…

【Beetle RP2350】雷達模塊 CEM5861G-M11 開發使用指南

一、硬件介紹 1、產品特點 Beetle RP2350【RP2350A_QFN60】是一款基于RP2350微控制器的高性能迷你開發板&#xff0c;雙核雙架構設計&#xff08;支持 Arm Cortex-M33或Hazard3 RISC-V內核&#xff09;為開發者提供靈活的性能配置。 雙核雙架構&#xff0c;性能自由切換 采…

高通Android 13 開機黑屏問題深度剖析與解決方案

1. 問題概述 在 Android 13 系統定制化開發過程中&#xff0c;開機流程的調試與優化頗具挑戰性。一個典型問題是&#xff1a;當開機動畫播放完畢后&#xff0c;設備會先出現數秒黑屏&#xff0c;然后才進入鎖屏界面。本文基于開機日志分析&#xff0c;結合實際項目經驗&#x…

騰訊推出AI CLI工具CodeBuddy,國內首家同時支持插件、IDE和CLI三種形態的AI編程工具廠商

2025年9月9日&#xff0c;騰訊正式推出自研AI CLI工具CodeBuddy code&#xff0c;成為國內首家同時支持插件、IDE和CLI三種形態的AI編程工具廠商。這一創新不僅填補了國內市場在全形態AI編程工具領域的空白&#xff0c;更以編碼時間縮短40%、AI生成代碼占比超50%的硬核數據&…

零基礎學習QT的第二天-組件基礎知識

組件聲明以及設置屬性 所有的組件的基類為&#xff1a;QtObject&#xff0c;在c中名稱為&#xff1a;QObject。 在qml和c名稱有所區別&#xff0c;例如在Qml中QtObject&#xff0c;在C會省略一個t(QObject) 聲明組件的方式&#xff1a; 組件名 {屬性名:值}在實際應用中&#xf…

像素圖生成小程序開發全解析:從圖片上傳到Excel圖紙

像素圖生成小程序開發全解析&#xff1a;從圖片上傳到Excel圖紙 前言 在數字化創作和工藝設計領域&#xff0c;像素圖生成工具具有廣泛的應用價值&#xff0c;無論是十字繡設計、LED燈陣布置還是復古游戲美術創作。本文將詳細解析一個功能完整的像素圖生成小程序的開發過程&…

mac-intel操作系統go-stock項目(股票分析工具)安裝與配置指南

1. 項目基礎介紹 go-stock 是一個基于Wails和NaiveUI開發的AI賦能股票分析工具。旨在為用戶提供自選股行情獲取、成本盈虧展示、漲跌報警推送等功能。它支持A股、港股、美股等市場&#xff0c;能夠進行市場整體或個股的情緒分析、K線技術指標分析等功能。所有數據均保存在本地…