Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

Prometheus exporter for Transmission metrics, written in Go.

License

Notifications You must be signed in to change notification settings

theopsguy/transmission-exporter

Repository files navigation

Transmission Exporter for Prometheus

Test Docker Build Release Docker Pulls Go Report Card

Prometheus exporter for Transmission metrics, written in Go.

This project is a fork of metalmatze/transmission-exporter, which is no longer maintained. It is now actively maintained, and contributions are welcome.

Running this exporter

From binaries

Download a suitable binary from the releases tab.

Then:

./transmission-exporter <flags>

Docker

docker pull theopsguy/transmission-exporter
docker run -d -p 19091:19091 metalmatze/transmission-exporter

Kubernetes (Prometheus)

A sample kubernetes manifest is available in example/kubernetes

Please run: kubectl apply -f examples/kubernetes/transmission.yml

You should:

  • Attach the config and downloads volume
  • Configure the password for the exporter

Your prometheus instance will start scraping the metrics automatically. (if configured with annotation based discovery). more info

Docker Compose

Example docker-compose.yml with Transmission also running in docker.

transmission:
  image: linuxserver/transmission
  restart: always
  ports:
    - "127.0.0.1:9091:9091"
    - "51413:51413"
    - "51413:51413/udp"
transmission-exporter:
  image: theopsguy/transmission-exporter
  restart: always
  links:
    - transmission
  ports:
    - "127.0.0.1:19091:19091"
  environment:
    TRANSMISSION_ADDR: http://transmission:9091

Building the Exporter

Local Build

This project uses promu to build the binary.

To build locally, run:

make build

Building with Docker

After a successful local build:

docker build -t transmission-exporter .

Configuration

ENV Variable Description
WEB_PATH Path for metrics, default: /metrics
WEB_ADDR Address for this exporter to run, default: :19091
WEB_CONFIG_FILE Configuration file to protect exporter with TLS and/or basic auth, no default
TRANSMISSION_ADDR Transmission address to connect with, default: http://localhost:9091
TRANSMISSION_USERNAME Transmission username, no default
TRANSMISSION_PASSWORD Transmission password, no default
LOG_FORMAT Specify log output format. Options are 'text' (default) or 'json'

TLS and Basic Authentication

This exporter uses the Prometheus exporter-toolkit to provide TLS and basic authentication support.

See the exporter-toolkit web configuration for more details.

Original authors of the Transmission package

Tobias Blom (https://github.com/tubbebubbe/transmission)
Long Nguyen (https://github.com/longnguyen11288/go-transmission)

About

Prometheus exporter for Transmission metrics, written in Go.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 10