中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

如何寫prober插件

發布時間:2022-01-12 14:34:51 來源:億速云 閱讀:153 作者:柒染 欄目:云計算

本篇文章給大家分享的是有關如何寫prober插件,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

prober插件通過API方式采集打點數據,目前已有插件:

prober插件是使用telegraf

(https://www.influxdata.com/time-series-platform/telegraf/T) 插件接口封裝而成,你可以:

  • 直接封裝一個telegraf

  • 寫一個telegraf插件,然后再封裝成prober插件

接下來用src/modules/monapi/plugins/demo為例,介紹插件的開發。

Telegraf插件 開發

安全提示

需要實現一個這樣的接口類型:

如何寫prober插件  

如何寫prober插件  

下面是demo插件的實現:

如何寫prober插件  

如何寫prober插件  

這樣就有了一個telegraf的插件, 接下來將它封裝成 prober 插件。

插件中Gather方法中的acc是一個接口,具體的實例由運行環境提供的, 在prober中運行插件時,acc的實現在src/modules/prober/manager/accumulator.go

Prober

prober會定期從monapi獲取collectRule列表,檢查更新自己的插件實例。

  • create rule collector

  • update rule collector

  • delete rule collector

其中,update rule是由delete old,create new來實現的。

monapi之所以需要加載插件,是因為需要獲取插件的參數描述,這樣才能渲染出合適的UI界面,方便用戶輸入。 這是demo的參數描述:

如何寫prober插件  

有關ui的信息描述,放在了structField的tag中,詳細的tag如下:

如何寫prober插件  

這樣,mapapi拿到結構體后,就可以知道如何渲染,填充結構體里的參數,然后將用戶輸入的數據存入數據庫后,分發到各個prober上執行。

prober獲取規則后,通過插件的TelegrafInput方法,將rule轉換成telegraf.Input實例。

如何寫prober插件  

測試

src/modules/monapi/plugins/demo/demo_test.go

如何寫prober插件  

如何寫prober插件  

部署

內置編譯

  • 修改src/modules/monapi/plugins/all/all.go,添加demo

  • 重新編譯monapi & prober

外掛加載

將自己的插件編譯成動態庫文件(.so), 復制到monapi &prober工作目錄下的plugins/

如何寫prober插件  

如何寫prober插件  

以上就是如何寫prober插件,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

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

AI

安泽县| 镇平县| 陈巴尔虎旗| 阿勒泰市| 永仁县| 樟树市| 德兴市| 高阳县| 工布江达县| 平舆县| 惠安县| 明星| 娄底市| 抚宁县| 南康市| 琼结县| 安达市| 民权县| 咸丰县| 林芝县| 重庆市| 定兴县| 谢通门县| 浪卡子县| 合阳县| 拜城县| 上思县| 郁南县| 永安市| 汪清县| 敦煌市| 海丰县| 瑞安市| 衡水市| 兰州市| 花垣县| 分宜县| 新和县| 宁阳县| 泸水县| 隆化县|