Logstash 參考指南(多個管道)

2021-09-13 03:25:27 字數 1078 閱讀 7547

如果需要在同一程序中執行多個管道,logstash提供了一種通過名為pipelines.yml的配置檔案完成此操作的方法,這個檔案必須放在path.settings資料夾,並遵循此結構:

- pipeline.id: my-pipeline_1

path.config: "/etc/path/to/p1.config"

pipeline.workers: 3

- pipeline.id: my-other-pipeline

path.config: "/etc/different/path/p2.cfg"

queue.type: persisted

該檔案在yaml中格式化幷包含乙個字典列表,其中每個字典描述乙個管道,每個鍵/值對指定該管道的設定。這個示例展示了兩個不同的管道,它們由id和配置路徑描述,對於第乙個管道,pipeline.workers的值被設定為3,而在另乙個則啟用持久佇列特性,在pipelines.yml檔案中未顯式設定的設定值將退回到pipelines.yml設定檔案中指定的預設值。

在沒有引數的情況下啟動logstash時,它將讀取pipelines.yml檔案並例項化檔案中指定的所有管道,另一方面,當你使用-e-f時,logstash會忽略pipelines.yml檔案,並記錄對此的警告。

如果當前配置的事件流不共享相同的輸入/過濾器和輸出,並且使用標記和條件將它們彼此分離,那麼使用多個管道尤其有用。

在乙個例項中有多個管道還允許這些事件流具有不同的效能和耐久性引數(例如,管道工作人員和持久佇列的不同設定),這種分離意味著,乙個管道中的阻塞輸出不會對另乙個管道產生反壓力。

也就是說,考慮管道之間的資源競爭是很重要的,因為預設值是為單個管道調優的,因此,例如,考慮減少每個管道使用的管道工人的數量,因為預設情況下每個管道每個cpu核心將使用1個工人。

每個管道都隔離了持久佇列和死信佇列,它們位置的命名空間為pipeline.id值。

Logstash 參考指南

要從命令列執行logstash,請使用以下命令 bin logstash options 命令列標記選項是你可以指定它們來控制logstash的執行,bin目錄的位置因平台而異,檢視logstash目錄布局以找到你系統上bin logstash的位置。下面的示例執行logstash配置,並載入myp...

Logstash 參考指南(輸入外掛程式)

輸入外掛程式允許logstash讀取特定的事件源。下面是一些可用的輸入外掛程式,有關elastic支援外掛程式的列表,請參閱支援矩陣。外掛程式描述 github倉庫 azure event hubs 從azure事件中心接收事件 azure event hubs beats 從elastic bea...

Logstash 參考指南(過濾器外掛程式)

過濾器外掛程式對事件執行中間處理,過濾器通常根據事件的特徵有條件地應用。下面是一些過濾器外掛程式,有關elastic支援外掛程式的列表,請參閱支援矩陣。外掛程式描述 github倉庫 aggregate 聚合來自單個任務的多個事件的資訊 logstash filter aggregate alter...