Prometheus exporter for Transmission metrics, written in Go.
$ go get github.com/metalmatze/transmission-exporter
ENV Variable | Description |
---|---|
WEB_PATH | Path for metrics, default: /metrics |
WEB_ADDR | Address for this exporter to run, default: :19091 |
TRANSMISSION_ADDR | Transmission address to connect with, default: http://localhost:9091 |
TRANSMISSION_USERNAME | Transmission username, no default |
TRANSMISSION_PASSWORD | Transmission password, no default |
CLIENT_NAME | Transmission client name, this value will be should in each metric item, default: equal to TRANSMISSION_ADDR |
CONFIG_FILE | Transmission-exporter's config file path, no default |
Transmission-exporter support config file in yaml format. Note that configuration item: addr is required.
webaddr: :19091
webpath: /metrics
clients:
- name: local
addr: http://localhost:9091
- name: remote
addr: http://localhost:8080
username: admin
password: password
docker pull metalmatze/transmission-exporter
docker run -d -p 19091:19091 metalmatze/transmission-exporter
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
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: metalmatze/transmission-exporter
restart: always
links:
- transmission
ports:
- "127.0.0.1:19091:19091"
environment:
TRANSMISSION_ADDR: http://transmission:9091
make
For development we encourage you to use make install
instead, it's faster.
Now simply copy the .env.example
to .env
, like cp .env.example .env
and set your preferences.
Now you're good to go.
Tobias Blom (https://github.com/tubbebubbe/transmission)
Long Nguyen (https://github.com/longnguyen11288/go-transmission)