Exports Speedtest CLI metrics in the prometheus format, caching the results.

Owner
Carlos Alexandro Becker
Creator @goreleaser; SRE @totvslabs; I try to delete more code than I write.
Carlos Alexandro Becker
Similar Resources

The metrics-agent collects allocation metrics from a Kubernetes cluster system and sends the metrics to cloudability

metrics-agent The metrics-agent collects allocation metrics from a Kubernetes cluster system and sends the metrics to cloudability to help you gain vi

Jan 14, 2022

Speedtest - Simple package to measure internet speed

Speedtest Simple package to measure internet speed Provides a simple API to meas

Oct 12, 2022

Prometheus metrics for Go database/sql via VictoriaMetrics/metrics

sqlmetrics Prometheus metrics for Go database/sql via VictoriaMetrics/metrics Features Simple API. Easy to integrate. Install Go version 1.16+ go get

Dec 16, 2022

Export Prometheus metrics from journald events using Prometheus Go client library

journald parser and Prometheus exporter Export Prometheus metrics from journald events using Prometheus Go client library. For demonstration purposes,

Jan 3, 2022

Vilicus is an open source tool that orchestrates security scans of container images(docker/oci) and centralizes all results into a database for further analysis and metrics.

Vilicus is an open source tool that orchestrates security scans of container images(docker/oci) and centralizes all results into a database for further analysis and metrics.

Vilicus Table of Contents Overview How does it work? Architecture Development Run deployment manually Usage Example of analysis Overview Vilicus is an

Dec 6, 2022

Prometheus Common Data Exporter can parse JSON, XML, yaml or other format data from various sources (such as HTTP response message, local file, TCP response message and UDP response message) into Prometheus metric data.

Prometheus Common Data Exporter can parse JSON, XML, yaml or other format data from various sources (such as HTTP response message, local file, TCP response message and UDP response message) into Prometheus metric data.

Prometheus Common Data Exporter Prometheus Common Data Exporter 用于将多种来源(如http响应报文、本地文件、TCP响应报文、UDP响应报文)的Json、xml、yaml或其它格式的数据,解析为Prometheus metric数据。

May 18, 2022

Jswhois - Whois lookup results in json format

jswhois -- whois lookup results in json format jswhois(1) is a tool to look up a

Nov 30, 2022

Convert data exports from various services to a single SQLite database

Convert data exports from various services to a single SQLite database

Bionic Bionic is a tool to convert data exports from web apps to a single SQLite database. Bionic currently supports data exports from Google, Apple H

Dec 9, 2022

An RRDtool api server that exports a subset of rrdtool commands over http(s).

rrdsrv An RRDtool api server that exports a subset of rrdtool commands over http(s). Be sure to checkout the grafana plugin. Demo video. Usage Usage o

Dec 7, 2022

This command line tool exports .eml files from POP3 account.

export-mail This command line tool exports .eml files from POP3 account. Install go get github.com/gonejack/export-mail Usage export-mail --host i

Dec 6, 2021

Tfcmt-gitlab is a CLI command to parse and notify Terraform execution results

Tfcmt-gitlab is a CLI command to parse and notify Terraform execution results. This command supports GitLab as a CI and notification platform.

Dec 23, 2022

Go http.RoundTripper that emits open telemetry metrics. This helps you easily get metrics for all external APIs you interact with.

go-otelroundtripper This package provides an easy way to collect http related metrics (e.g Response times, Status Codes, number of in flight requests

Jan 8, 2023

cluster-api-state-metrics (CASM) is a service that listens to the Kubernetes API server and generates metrics about the state of custom resource objects related of Kubernetes Cluster API.

Overview cluster-api-state-metrics (CASM) is a service that listens to the Kubernetes API server and generates metrics about the state of custom resou

Oct 27, 2022

AutoK3s GEO collects metrics about locates remote IP-address and exposes metrics to InfluxDB.

AutoK3s GEO AutoK3s GEO collects metrics about locates remote IP-address and exposes metrics to InfluxDB. Thanks to https://freegeoip.live/ which prov

Jun 16, 2022

Flash-metrics - Flash Metrics Storage With Golang

Flash Metrics Storage bootstrap: $ echo -e "max-index-length = 12288" tidb.con

Jan 8, 2022

This library provides a metrics package which can be used to instrument code, expose application metrics, and profile runtime performance in a flexible manner.

This library provides a metrics package which can be used to instrument code, expose application metrics, and profile runtime performance in a flexible manner.

Jan 18, 2022

Using NFP (Number Format Parser) you can get an Abstract Syntax Tree (AST) from Excel number format expression

NFP (Number Format Parser) Using NFP (Number Format Parser) you can get an Abstract Syntax Tree (AST) from Excel number format expression. Installatio

Feb 4, 2022

Type-safe Prometheus metrics builder library for golang

gotoprom A Prometheus metrics builder gotoprom offers an easy to use declarative API with type-safe labels for building and using Prometheus metrics.

Dec 5, 2022

Turn Nginx logs into Prometheus metrics

Nginx log parser and Prometheus exporter This service parses incoming syslog messages from Nginx sent over UDP and converts them into Prometheus metri

Dec 13, 2022
Comments
  • v1.1.3 exec format error

    v1.1.3 exec format error

    > docker run --network=host --rm ghcr.io/caarlos0/speedtest-exporter:v1.1.3
    5:53PM INF starting speedtest-exporter 1.1.3
    5:53PM INF listening on :9876
    5:53PM ERR failed to collect error="speedtest failed: fork/exec /usr/local/bin/speedtest: exec format error"
    

    Same with sh or any other program

    > docker run --network=host -it --entrypoint sh --rm ghcr.io/caarlos0/speedtest-exporter:v1.1.3
    {"msg":"exec container process `/bin/sh`: Exec format error","level":"error","time":"2021-08-11T17:54:14.000970248Z"}
    
  • Adds optional flags to specify a server, and include server details in metrics

    Adds optional flags to specify a server, and include server details in metrics

    --server <ID>, or -s <ID> will force the Speedtest CLI to use the specified server. You can run speedtest -L to get a list of some of your local servers.

    --showServerLabels will include details of the server in the metrics output. For example, without this:

    speedtest_download_bytes 1.31984368e+08
    speedtest_download_bytes_second 2.7792423e+07
    

    And with:

    speedtest_download_bytes{server_country="United Kingdom",server_host="speedtest.tnp.net.uk",server_location="Manchester",server_name="TNP Ltd."} 1.31984368e+08
    speedtest_download_bytes_second{server_country="United Kingdom",server_host="speedtest.tnp.net.uk",server_location="Manchester",server_name="TNP Ltd."} 2.7792423e+07
    

    Closes https://github.com/caarlos0/speedtest-exporter/issues/10

  • Allow for optionally specifying the speedtest server ID

    Allow for optionally specifying the speedtest server ID

    For whatever reason, I've found that the nearest speedtest servers cap out at about 100Mbps down, but some others I'm able to get upwards of 550Mbps down (which therefore feels more accurate).

    As such, being able to specify which specific server ID I want to use would be useful.

    Doesn't look particularly complex to implement:

    • A new flag here - https://github.com/caarlos0/speedtest-exporter/blob/main/main.go#L18-L24
    • Optionally specifying the -s ID parameter to the exec.Command

    So happy to provide a PR for this :)

  • Build and release for arm7

    Build and release for arm7

    I love your projects @caarlos0 . Currently, I'm setting up my raspi, however, I get the error

    Failed to pull image "ghcr.io/caarlos0/speedtest-exporter:v1.1.4": rpc error: code = NotFound desc = failed to pull and unpack image "ghcr.io/caarlos0/speedtest-exporter:v1.1.4": no match for platform in manifest: not found
    

    and arch gives me armv7l. AFAICS you are using a general file https://github.com/caarlos0/goreleaserfiles/blob/main/docker.yml, so you might know best how to extend it properly because the effect might then be bigger.

    Best Manuel

A golang implementation of endlessh exporting Prometheus metrics, visualized by a Grafana dashboard.
A golang implementation of endlessh exporting Prometheus metrics, visualized by a Grafana dashboard.

endlessh-go A golang implementation of endlessh exporting Prometheus metrics, visualized by a Grafana dashboard. Introduction Endlessh is a great idea

Dec 23, 2022
gosivy - Another visualization tool for Go process metrics
gosivy - Another visualization tool for Go process metrics

gosivy Another visualization tool for Go process metrics. Gosivy tracks Go process's metrics and plot their evolution over time right into your termin

Nov 27, 2022
Plot 3D math equation z=f(x, y) with SVG format.
Plot 3D math equation z=f(x, y) with SVG format.

plot-function-svg Plot 3D math equation z=f(x, y) with SVG format. Some codes are referred from https://github.com/adonovan/gopl.io licensed under a C

Dec 30, 2021
Exports Fast.com metrics in the prometheus format, caching the results.
Exports Fast.com metrics in the prometheus format, caching the results.

fastcom-exporter Exports Fast.com metrics in the prometheus format, caching the results.

Nov 14, 2022
A simple script to run speedtest(offical) CLI tool and store the results in CSV

PeriodicBW A script made to run official speedtest.net binary periodically and store the results in a CSV file Installation Get the official speedtest

Aug 10, 2021
LLS-Exporter exports fuel level sensor data (rs-485 lls protocol) as prometheus metrics

LLS Exporter LLS Exporter reads rs485/rs232 data from serial port, decodes lls protocol and exports fuel level sensor data as prometheus metrics. Lice

Dec 14, 2021
Monitors the expiry time of tls certificates and exports prometheus metrics

Certificate Monitor Monitors the expiry time of tls certificates and exports prometheus metrics. Target domains can be automatically discovered via in

Feb 7, 2022
Kepler (Kubernetes-based Efficient Power Level Exporter) uses eBPF to probe energy related system stats and exports as Prometheus metrics
Kepler (Kubernetes-based Efficient Power Level Exporter) uses eBPF to probe energy related system stats and exports as Prometheus metrics

kepler Kepler (Kubernetes Efficient Power Level Exporter) uses eBPF to probe energy related system stats and exports as Prometheus metrics Architectur

Dec 26, 2022
Read metrics from a Message Queue in Json format and expose them in a Prometheus compatible format

mq2prom Read metrics from a Message Queue in Json format and expose them in a Prometheus compatible format. Currently only works for MQTT compatible M

Jan 24, 2022
Sensu-go-postgres-metrics - The sensu-go-postgres-metrics is a sensu check that collects PostgreSQL metrics

sensu-go-postgres-metrics Table of Contents Overview Known issues Usage examples

Jan 12, 2022