基于metricbeat構(gòu)建屬于自己的beat

簡述

Beats是開源數(shù)據(jù)發(fā)送者,可以將其作為代理安裝在您的服務器上,以將不同類型的運營數(shù)據(jù)發(fā)送到Elasticsearch。Beats可以直接發(fā)送數(shù)據(jù)到Elasticsearch或通過Logstash發(fā)送到Elasticsearch,可以使用它來分析和轉(zhuǎn)換數(shù)據(jù)。
Metricbeat是一個服務器監(jiān)視代理程序,它定期從服務器上運行的操作系統(tǒng)和服務中收集指標。配合kibana的dashboard可以直觀的監(jiān)控系統(tǒng)狀態(tài)。

依賴:

  1. Golang 1.9.2 或更高版本,$GOPATH 正確配置
  2. python
  3. virtualenv

Step 1 - 獲取metricbeat源碼

go get github.com/elastic/beats/metricbeat
git checkout v6.2.4

Step 2 - 新建beat

python ${GOPATH}/src/github.com/elastic/beats/script/generate.py --type=metricbeat

按照提示輸入beat的名稱和路徑

Step 3 - 初始化beat并創(chuàng)建metricset

make setup

setup主要完成了以下三個操作

  1. 復制依賴包
  2. make ceate metricbeat
  3. make collect
    每個操作具體執(zhí)行了什么,可以通過查看Makefile來確定

如果使用的是python2的話,執(zhí)行makesetup時會報錯
解決方法:
1.將raw_input改為input
2.復制vendor/github.com/elastic/beats/metricbeat/scripts/generate_imports_helper.py 到 vendor/github.com/elastic/beats/script/

Step 4 - 構(gòu)建和運行

make
make update

在操作過程中需使用自己定義的beat的名稱對{beatname}進行替換
修改配置文件將metricbeat替換成{beatname}

./beatname  -e -f {beatname}.yml -d "*"

Step 5 - 打包

make package

打包過程中可能會遇到如下問題:
Q1:獲取docker鏡像失敗
A1: 配置docker鏡像加速器

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容