Skip to content

Instantly share code, notes, and snippets.

@kevinkupski
Created March 24, 2021 14:29
Show Gist options
  • Save kevinkupski/eb07e5d888d7b71f3299c8ea535e8c74 to your computer and use it in GitHub Desktop.
Save kevinkupski/eb07e5d888d7b71f3299c8ea535e8c74 to your computer and use it in GitHub Desktop.
Starlink Monitoring
FROM telegraf:1.16
RUN apt update && apt install -y --no-install-recommends speedtest-cli mtr && \
rm -rf /var/lib/apt/lists/*
COPY telegraf.conf /etc/telegraf/telegraf.conf
[global_tags]
[agent]
interval = "1m"
round_interval = true
metric_batch_size = 1000
metric_buffer_limit = 10000
collection_jitter = "0s"
flush_interval = "10s"
flush_jitter = "0s"
precision = ""
hostname = "${HOSTNAME}"
omit_hostname = false
quiet = false
debug = false
[[outputs.influxdb_v2]]
urls = ["${INFLUX_HOST}"]
token = "${INFLUX_TOKEN}"
organization = "${INFLUX_ORG}"
bucket = "${INFLUX_BUCKET}"
[[inputs.dns_query]]
servers = ["1.1.1.1", "8.8.8.8"]
domains = ["www.google.com", "www.twitter.com", "www.amazon.com", "www.wikipedia.org"]
record_type = "A"
port = 53
timeout = 3
[[inputs.http_response]]
urls = [
"http://www.google.com",
"http://www.twitter.com",
"http://www.amazon.de"
]
response_timeout = "5s"
method = "GET"
follow_redirects = true
[[inputs.ping]]
urls = [
"google.com",
"twitter.com",
"amazon.de"
]
method = "exec"
count = 1
ping_interval = 1.0
timeout = 5.0
deadline = 10
binary = "ping"
ipv6 = false
[[inputs.exec]]
commands=["mtr -C google.com s3-website.ap-northeast-2.amazonaws.com s3-website.eu-central-1.amazonaws.com s3-website.af-south-1.amazonaws.com"]
timeout = "3m"
interval = "10m"
data_format = "csv"
csv_skip_rows = 1
csv_column_names=[ "", "", "status","dest","hop","ip","loss","","", "","avg","best","worst","stdev"]
name_override = "mtr"
csv_tag_columns = ["dest", "hop", "ip"]
[[inputs.exec]]
commands = ["/usr/bin/speedtest-cli --csv --bytes"]
name_override = "speedtest"
timeout = "3m"
interval = "10m"
data_format = "csv"
csv_column_names = ['Server ID','Sponsor','Server Name','Timestamp','Distance','Ping','Download','Upload','Share','IP Address']
csv_timestamp_column = "Timestamp"
csv_timestamp_format = "2006-01-02T15:04:05Z07:00"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment