Files
Zabbix-Speedtest-Template/zbx_speedtest_net.yaml
2025-10-15 23:48:19 +02:00

112 lines
3.9 KiB
YAML

zabbix_export:
version: '7.0'
template_groups:
- uuid: 0ebbb8bd230c4105a00a0d6f1a319b15
name: David
templates:
- uuid: ee57ce6d065d4d9690de6601d7dca87a
template: Speedtest
name: Speedtest
vendor:
name: David Leutgeb
version: "1.0"
description: 'Uses the speedtest.net CLI client'
groups:
- name: David
items:
- uuid: 92929609f7704e9cbbecffd90ba82132
name: 'Speedtest Download speed'
type: DEPENDENT
key: speedtest.download.speed
delay: '0'
units: bps
preprocessing:
- type: JSONPATH
parameters:
- $.download.bandwidth
- type: MULTIPLIER
parameters:
- '8'
master_item:
key: 'vfs.file.contents[/home/zabbix/speedtest.json]'
triggers:
- uuid: 4075e0a3c2a64e6e9d035f99f7bec0ad
expression: 'last(/Speedtest/speedtest.download.speed,#1)<{$SPEEDTEST.DOWNLOAD.MIN} and last(/Speedtest/speedtest.download.speed,#2)<{$SPEEDTEST.DOWNLOAD.MIN}'
recovery_mode: RECOVERY_EXPRESSION
recovery_expression: 'last(/Speedtest/speedtest.download.speed)>{$SPEEDTEST.DOWNLOAD.MIN}'
name: 'Download Speedtest too low'
priority: AVERAGE
- uuid: 7241c7b470fd420e977449265815e401
name: 'Speedtest latency'
type: DEPENDENT
key: speedtest.latency
delay: '0'
value_type: FLOAT
units: ms
preprocessing:
- type: JSONPATH
parameters:
- $.ping.latency
master_item:
key: 'vfs.file.contents[/home/zabbix/speedtest.json]'
- uuid: 1376fac46730425e987d77846c7d502e
name: 'Speedtest Timestamp'
type: DEPENDENT
key: speedtest.timestamp
delay: '0'
history: '0'
value_type: TEXT
trends: '0'
preprocessing:
- type: JSONPATH
parameters:
- $.timestamp
master_item:
key: 'vfs.file.contents[/home/zabbix/speedtest.json]'
- uuid: cb1a50514c1e4deaa95edcdbb8aa2300
name: 'Speedtest Upload speed'
type: DEPENDENT
key: speedtest.upload.speed
delay: '0'
units: bps
preprocessing:
- type: JSONPATH
parameters:
- $.upload.bandwidth
- type: MULTIPLIER
parameters:
- '8'
master_item:
key: 'vfs.file.contents[/home/zabbix/speedtest.json]'
triggers:
- uuid: 571991ae4ed34632b3cffb225e6bcf1b
expression: 'last(/Speedtest/speedtest.upload.speed,#1)<{$SPEEDTEST.UPLOAD.MIN} and last(/Speedtest/speedtest.upload.speed,#2)<{$SPEEDTEST.UPLOAD.MIN}'
recovery_mode: RECOVERY_EXPRESSION
recovery_expression: 'last(/Speedtest/speedtest.upload.speed)>{$SPEEDTEST.UPLOAD.MIN}'
name: 'Upload Speedtest too low'
priority: AVERAGE
- uuid: f3e86712c62b49fb87b49131159aae9f
name: 'RAW data'
key: 'vfs.file.contents[/home/zabbix/speedtest.json]'
delay: 30m
history: '0'
value_type: TEXT
trends: '0'
- uuid: d452d59eb9c2488da850f0edfdd9f608
name: 'RAW data file md5 sum'
key: 'vfs.file.md5sum[/home/zabbix/speedtest.json]'
delay: 30m
history: 5d
value_type: CHAR
trends: '0'
macros:
- macro: '{$SPEEDTEST.DOWNLOAD.MIN}'
value: '600'
description: 'Mbit/s min, before Trigger'
- macro: '{$SPEEDTEST.LATENCY.MAX}'
value: '50'
description: 'ms, max Latency before Trigger'
- macro: '{$SPEEDTEST.UPLOAD.MIN}'
value: '600'
description: 'Mbit/s min, before Trigger'