Logstash 自定義模板不生效問題

2021-10-12 13:53:59 字數 663 閱讀 1177

遇到自定義模板不生效的問題後:

這個原因是:logstash 缺省會上傳乙個名叫 logstash 的模板到 es 裡。如果你在使用自定義模板之前,曾經執行過 logstash(一般來說都會),那麼 es 裡就已經存在這麼乙個模板了。你可以curl -xget '' 驗證。

這個時候,es 裡就變成有兩個模板,logstash 和 myname,都匹配 logstash-* 索引名,要求設定一定的對映規則了。

es 會按照一定的規則來嘗試自動 merge 多個都匹配上了的模板規則,最終運用到索引上

其中要點就是:template 是可以設定 order 引數的!而不寫這個引數,預設的 order 值就是 0。order 值越大,在 merge 規則的時候優先順序越高。

如果用的7.x版本的,大概率是沒有配置 document_type

output "

#如果設定為true,模板名字一樣的時候,新的模板會覆蓋舊的模板

template_overwrite => true

template_name => "tb_tool"

#對映配置檔案的位置

template => "../config/test.json"

}stdout

}}

上面兩種方法分別來自以下兩篇文章:

自定義模板

規則 不管是函式末班還是類模板,在證明或定義時,只能在全域性命名空間或類範圍內進行,不能在區域性範圍內,不能在函式內 包括main函式 宣告或定義乙個模板。模板定義完成後,使用時需要進行例項化操作,編譯器在編譯時會確認模板引數具體時間哪種型別的,這個過程稱為模板的實力化 函式模板的標準定義如下 te...

自定義模板

建立乙個自定義列表 如何建立乙個註腳 注釋也是必不可少的 katex數學公式 新的甘特圖功能,豐富你的文章 uml 圖表 flowchart流程圖 匯出與匯入 你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下mar...

logstash自定義外掛程式和資料

乙個標準的 logstash 輸入外掛程式格式如下 require logstash namespace require logstash inputs base class logstash inputs myplugin logstash inputs base config name mypl...