您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“怎么安裝使用go監(jiān)控方案的telegraf”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!
telegraf 整個包非常大,在這個方案只用了statsd插件部分的修改,所以更具體的需要根據(jù)自己需要進行學習,如果只是使用本方案就可以略過。
Telegraf是一個插件驅(qū)動的服務(wù)器代理,用于收集和報告指標,是TICK堆棧的第一部分。 Telegraf具有直接從其運行的系統(tǒng)中提取各種指標的插件,從第三方API提取指標,甚至通過statsd和Kafka消費者服務(wù)監(jiān)聽指標。 它還具有輸出插件,可將指標發(fā)送到各種其他數(shù)據(jù)存儲,服務(wù)和消息隊列,包括InfluxDB,Graphite,OpenTSDB,Datadog,Librato,Kafka,MQTT,NSQ等等。
download
mac 版本
安裝
brew update brew install telegraf
下次登錄啟動telegraf
ln -sfv /usr/local/opt/telegraf/*.plist ~/Library/LaunchAgents
加載 telegraf
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.telegraf.plist
如果不用launchctl, 只需要使用下面命令啟動
telegraf -config /usr/local/etc/telegraf.conf
/etc/telegraf/telegraf.conf
啟動
sudo service telegraf start systemctl start telegraf
Telegraf提供多個服務(wù)輸入插件,可能需要自定義端口。
配置文件: /etc/telegraf/telegraf.conf
Telegraf使用主機的UTC本地時間為數(shù)據(jù)分配時間戳。 使用網(wǎng)絡(luò)時間協(xié)議(NTP)同步主機之間的時間; 如果主機的時鐘與NTP不同步,則數(shù)據(jù)的時間戳可能不準確。
使用默認輸入和輸出插件創(chuàng)建配置文件。
telegraf config > telegraf.conf
創(chuàng)建具有特定輸入和輸出的配置文件
telegraf --input-filter <pluginname>[:<pluginname>] --output-filter <outputname>[:<outputname>] config > telegraf.conf
在啟動Telegraf服務(wù)器之前,您需要編輯和/或創(chuàng)建一個初始配置,指定所需的輸入(指標來自哪里)和輸出(指標所在的位置)。
在這里,我們將生成一個配置文件,同時使用-input-filter標志指定所需的輸入,并使用-output-filter標志指定所需的輸出。
在下面的示例中,我們創(chuàng)建了一個名為telegraf.conf
的配置文件,其中包含兩個輸入: 一個讀取有關(guān)系統(tǒng)cpu使用情況(cpu
)的指標,另一個讀取有關(guān)系統(tǒng)內(nèi)存使用情況(mem
)的指標。 我們將InfluxDB指定為所需的輸出。
telegraf -sample-config -input-filter cpu:mem -output-filter influxdb > telegraf.conf
一旦Telegraf啟動并運行,它將開始收集數(shù)據(jù)并將其寫入所需的輸出。
我們將在下面的InfluxDB中展示cpu和mem數(shù)據(jù)的樣子。
influxdb 查看 measurements
> SHOW MEASUREMENTS name: measurements ------------------ name cpu mem
查看 field keys
在
> SHOW FIELD KEYS name: cpu --------- fieldKey fieldType usage_guest float usage_guest_nice float usage_idle float usage_iowait float usage_irq float usage_nice float usage_softirq float usage_steal float usage_system float usage_user float name: mem --------- fieldKey fieldType active integer available integer available_percent float buffered integer cached integer free integer inactive integer total integer used integer used_percent float
選擇一個數(shù)據(jù)樣本 field
usage_idle
在 cpu_usage_idle
:
> SELECT usage_idle FROM cpu WHERE cpu = 'cpu-total' LIMIT 5 name: cpu --------- time usage_idle 2016-01-16T00:03:00Z 97.56189047261816 2016-01-16T00:03:10Z 97.76305923519121 2016-01-16T00:03:20Z 97.32533433320835 2016-01-16T00:03:30Z 95.68857785553611 2016-01-16T00:03:40Z 98.63715928982245
請注意,時間戳以十舍五入的間隔發(fā)生(即:00
,:10
,:20
,依此類推) - 這是一個可配置的設(shè)置。
Telegraf指標是用于在處理期間對數(shù)據(jù)建模的內(nèi)部表示。 這些指標非?;贗nfluxDB的數(shù)據(jù)模型,包含四個主要組件:
Measurement name 度量名稱:度量標準的描述和命名空間。 Tags 標簽:鍵/值字符串對,通常用于標識度量標準。 Fields 字段:鍵入的鍵/值對,通常包含度量標準數(shù)據(jù)。 Timestamp 時間戳:與字段關(guān)聯(lián)的日期和時間。
此度量標準類型僅存在于內(nèi)存中,必須轉(zhuǎn)換為具體表示才能傳輸或查看。
Telegraf為這些轉(zhuǎn)換提供輸出數(shù)據(jù)格式(也稱為序列化器)。
Telegraf的默認串行器轉(zhuǎn)換為InfluxDB線路協(xié)議,該協(xié)議提供Telegraf指標的高性能和一對一直接映射。
┌───────────┐ │ │ │ CPU │───┐ │ │ │ └───────────┘ │ │ ┌───────────┐ │ ┌───────────┐ │ │ │ │ │ │ Memory │───┤ ┌──?│ InfluxDB │ │ │ │ │ │ │ └───────────┘ │ ┌─────────────┐ ┌─────────────┐ │ └───────────┘ │ │ │ │Aggregate │ │ ┌───────────┐ │ │Process │ │ - mean │ │ ┌───────────┐ │ │ │ │ - transform │ │ - quantiles │ │ │ │ │ MySQL │───┼──? │ - decorate │────?│ - min/max │───┼──?│ File │ │ │ │ │ - filter │ │ - count │ │ │ │ └───────────┘ │ │ │ │ │ │ └───────────┘ │ └─────────────┘ └─────────────┘ │ ┌───────────┐ │ │ ┌───────────┐ │ │ │ │ │ │ │ SNMP │───┤ └──?│ Kafka │ │ │ │ │ │ └───────────┘ │ └───────────┘ │ ┌───────────┐ │ │ │ │ │ Docker │───┘ │ │ └───────────┘
處理器插件(Processor plugins)在通過時處理指標,并根據(jù)它們處理的值立即發(fā)出結(jié)果。例如,這可能是打印所有指標或向所有通過的指標添加標記。
聚合器(Aggregator plugins)通常用于發(fā)出新的聚合度量,例如運行平均值,最小值,最大值,分位數(shù)或標準偏差。 因此,所有聚合器插件都配置了句點。周期是每個聚合表示的度量窗口的大小。換句話說,發(fā)出的聚合度量將是過去時段秒的聚合值。 由于許多用戶只關(guān)心他們的聚合而不是每個收集的度量標準,因此還有一個drop_original參數(shù),它告訴Telegraf只發(fā)出聚合而不是原始指標。
注意:由于聚合器插件僅在其句點內(nèi)聚合度量標準,因此不支持歷史數(shù)據(jù)。換句話說,如果您的指標時間戳超過now() - period
過去的時間段,則不會對其進行匯總。
代理是Telegraf的核心部分,它從聲明的輸入插件收集指標,并根據(jù)給定配置啟用的插件將指標發(fā)送到聲明的輸出插件。
Aggregator插件從輸入插件接收原始指標并從中創(chuàng)建聚合指標。 然后將聚合度量傳遞給配置的輸出插件。
Telegraf代理會批量發(fā)送指標到輸出插件,而不是單獨發(fā)送。 批處理大小控制Telegraf發(fā)送到輸出插件的每個寫批處理的大小。
從每個輸入插件收集數(shù)據(jù)的默認全局間隔。 每個輸入插件的配置都可以覆蓋收集間隔。
集合抖動用于防止每個輸入插件同時收集指標,這可能對系統(tǒng)產(chǎn)生可測量的影響。 每個收集間隔,每個輸入插件將在收集指標之前在零和收集抖動之間休眠一段隨機時間。
將數(shù)據(jù)從每個輸出插件刷新到其目標的全局間隔。 不應(yīng)將此值設(shè)置為低于收集間隔。
輸入插件主動收集指標并將其交付給核心代理,其中聚合器,處理器和輸出插件可以對指標進行操作。 要激活輸入插件,需要在Telegraf的配置文件中啟用和配置。
當寫入輸出插件失敗時,度量緩沖區(qū)會緩存各個度量標準。 Telegraf將在成功寫入輸出后嘗試刷新緩沖區(qū)。 當此緩沖區(qū)填滿時,將首先刪除最舊的度量標準。
輸出插件將指標傳遞到其配置的目標。 要激活輸出插件,需要在Telegraf的配置文件中啟用和配置。
精度配置設(shè)置確定從輸入插件接收的點中保留多少時間戳精度。 所有傳入的時間戳都被截斷為給定的精度。 然后,Telegraf用零填充截斷的時間戳以創(chuàng)建納秒時間戳; 輸出插件將以納秒為單位發(fā)出時間戳。 有效精度為ns,us或μs,ms和s。
例如,如果精度設(shè)置為ms,則納秒時間戳1480000000123456789將以毫秒精度截斷為1480000000123,然后用零填充以生成新的,不太精確的納秒時間戳1480000000123000000.輸出插件不會進一步改變時間戳。 服務(wù)的輸入插件忽略精度設(shè)置。
處理器插件轉(zhuǎn)換,修飾和/或過濾由輸入插件收集的指標,將轉(zhuǎn)換后的指標傳遞給輸出插件。
服務(wù)輸入插件是在Telegraf代理運行時以被動收集模式運行的輸入插件。 他們在套接字上偵聽已知的協(xié)議輸入,或者在將它們提供給Telegraf代理之前將其自己的邏輯應(yīng)用于攝取的度量標準。
Telegraf輸入插件與InfluxData時間序列平臺一起使用,以從系統(tǒng),服務(wù)或第三方API收集指標。 所有指標都是從您在配置文件中啟用和配置的輸入中收集的。
通過運行telegraf --usage <service-input-name>
查看每個服務(wù)輸入的使用說明。
支持的Telegraf輸入插件Telegraf input plugins
Telegraf允許用戶在配置文件中指定多個輸出接收器。
支持的Telegraf輸出插件Telegraf output plugins
插件ID: basicstats
所述BasicStats聚合器插件給出count,max,min,mean,s2(方差),和stdev用于一組值,發(fā)光聚合每個周期秒
插件ID: histogram
所述直方圖聚合器插件創(chuàng)建包含的范圍內(nèi)的字段值的計數(shù)的直方圖。
添加到存儲桶的值也會添加到分發(fā)中的較大存儲桶中。這會創(chuàng)建累積直方圖。
與其他Telegraf聚合器插件一樣,度量標準每秒都會發(fā)出。但是,存儲桶計數(shù)不會在不同時段之間重置,并且在Telegraf運行時將非嚴格增加。
插件ID: minmax
在極大極小聚合器插件聚集體min和max它看到每個字段的值,發(fā)射都匯集每個周期秒。
插件ID: valuecounter
該ValueCounter聚合插件計算值的領(lǐng)域中發(fā)生并發(fā)出計數(shù)器一次“期間”秒。
ValueCounter聚合器插件的用例是當您使用Logparser輸入插件處理HTTP訪問日志并想要計算HTTP狀態(tài)代碼時。
必須使用fields配置指令配置要計數(shù)的字段。如果未提供任何字段,則插件不會計算任何字段。結(jié)果以字段形式發(fā)出,格式為originalfieldname_fieldvalue = count。
ValueCounter只能在類型的字段int,bool或string。正在刪除浮動字段以防止創(chuàng)建太多字段。
Telegraf processor plugins
“怎么安裝使用go監(jiān)控方案的telegraf”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。