A prometheus exporter for torrent downloader like qbittorrent/transmission/deluge

Overview

downloader-exporter

A prometheus exporter for qBitorrent/Transmission/Deluge. Get metrics from multiple servers and offers them in a prometheus format.

How to use it

You can install this exporter with the following command:

pip3 install downloader-exporter

Then you can run it with

downloader-exporter -c CONFIG_FILE_PATH -p 9000

Another option is run it in a docker container.

docker run -d -v CONFIG_FILE_PATH:/config/config.yml -e EXPORTER_PORT=9000 -p 9000:9000 leishi1313/downloader-exporter

Add this to your prometheus.yml

  - job_name: "downloader_exporter"
    static_configs:
        - targets: ['yourdownloaderexporter:port']

The exporter is running too slow

You can use an options to expose multiple ports for each downloader you're watching. Then the exporter will open a range of ports starting from the one you set, each port for each downloader

With command line

downloader-exporter -c CONFIG_FILE_PATH -p 9000 --multi true

With docker

docker run -d -v CONFIG_FILE_PATH:/config/config.yml -e EXPORTER_PORT=9000 -e USE_MULTI_PORTS=true -p 9000-9010:9000-9010 leishi1313/downloader-exporter

Config file

The config file is compatible with autoremove-torrents, you can also refer to example.yml to see how to write it.

Grafana

You can use the provided docker-compose.yml to host your own stack of Grafana/Prometheus/downloader-exporter.

Simplely clone this project, add or edit config.yml, then start the docker-compose:

cp example.yml config.yml
docker-compose up -d

Use localhost:3000 and admin/admin to access the dashboard.

First you will need to add a data source, select Prometheus with URL prometheus:9090, Then go and add a new dashboard with ID 15006, the dashboard should look like

You might also like...
A Udemy downloader that can download DRM protected videos and non-DRM protected videos.
A Udemy downloader that can download DRM protected videos and non-DRM protected videos.

Udemy Downloader with DRM support NOTE This program is WIP, the code is provided as-is and i am not held resposible for any legal repercussions result

Music and video downloader, Made with love by Bryan Herrera

Python-Mp3Mp4-Downloader Music and video downloader, Made with love by Bryan Herrera Requirements CHOCOLATELY windows command If your system does not

 📺 YouTube Song Downloader Bot For Telegram 🔮
📺 YouTube Song Downloader Bot For Telegram 🔮

📺 YouTube Song Downloader Bot For Telegram 🔮 Powerd By TamilBots.

music downloader written in python.   (Uses jiosaavn API)
music downloader written in python. (Uses jiosaavn API)

music downloader written in python. (Uses jiosaavn API)

MMDL (Mega Music Downloader) - A tool to easily download music.
MMDL (Mega Music Downloader) - A tool to easily download music.

mmdl - Mega Music Downloader What is mmdl ❓ TLDR: MMDL is a cli app which allows you to quickly and efficiently download one or multiple songs from Yo

apkizer is a mass downloader for android applications for all available versions.

apkizer apkizer collects all available versions of an Android application from apkpure.com Purpose Sometimes mobile applications can be useful to dig

Pantheon - The fastest YouTube downloader.
Pantheon - The fastest YouTube downloader.

A Youtube downloader written in Python3, using HTTP requests and an API.

Terminal based YouTube player and downloader
Terminal based YouTube player and downloader

termitube NOTE: THIS REPOSITORY IS A FORK OF mps-youtube as mps-youtube has been unmaintained for almost a year now. Features Search and play audio/vi

Youtube playlist downloader with full metadata support
Youtube playlist downloader with full metadata support

ytrake GUI tool to embed metadata for albums on Youtube with youtube-dl. Requires youtube-dl v2021.06.06. Post-processing Album metadata: Usage ytrake

Comments
  • Document how to configure Deluge user/password

    Document how to configure Deluge user/password

    1. You have to open the file deluge_folder/auth
    2. The file format is <user>:<password>:10
    3. Edit the config.yml in downloader-exporter
    deluge:
        client: deluge
        host: deluge:58846
        username: <user>
        password: <pass>
    
    opened by ngosang 0
  • Error traces in Deluge 2.1.1

    Error traces in Deluge 2.1.1

    Deluge exporter: 2.4.0

    Deluge exporter is working fine and it's exposing the metrics as usual. There are no traces in Deluge exporter. The traces in Deluge only happen in version > 2.0

    Traces in Deluge 2.1.1 every 30 seconds:

    22:36:37 [INFO    ][deluge.core.rpcserver         :179 ] Deluge Client connection made from: 172.18.0.2:55974
    22:36:37 [WARNING ][deluge.transfer               :111 ] Error occurred when parsing message header: Received invalid protocol version: 120. PROTOCOL_VERSION is 1..
    22:36:37 [WARNING ][deluge.transfer               :112 ] This version of Deluge cannot communicate with the sender of this data.
    22:36:37 [WARNING ][deluge.transfer               :130 ] Failed to decompress (0 bytes) and load serialized data with rencode: Error -5 while decompressing data: incomplete or truncated stream
    22:36:37 [WARNING ][deluge.transfer               :111 ] Error occurred when parsing message header: Received invalid protocol version: 68. PROTOCOL_VERSION is 1..
    22:36:37 [WARNING ][deluge.transfer               :112 ] This version of Deluge cannot communicate with the sender of this data.
    22:36:37 [WARNING ][deluge.transfer               :130 ] Failed to decompress (0 bytes) and load serialized data with rencode: Error -5 while decompressing data: incomplete or truncated stream
    22:36:37 [WARNING ][deluge.transfer               :111 ] Error occurred when parsing message header: Received invalid protocol version: 120. PROTOCOL_VERSION is 1..
    22:36:37 [WARNING ][deluge.transfer               :112 ] This version of Deluge cannot communicate with the sender of this data.
    22:36:37 [WARNING ][deluge.transfer               :130 ] Failed to decompress (0 bytes) and load serialized data with rencode: Error -5 while decompressing data: incomplete or truncated stream
    22:36:37 [INFO    ][deluge.core.rpcserver         :205 ] Deluge client disconnected: [('SSL routines', '', 'unexpected eof while reading')]
    

    Related issues:

    • https://github.com/tobbez/deluge_exporter/issues/22
    • https://github.com/JohnDoee/deluge-client/issues/40
    opened by ngosang 0
  • 无法使用快校版tr读取信息

    无法使用快校版tr读取信息

    你好,作者。感谢你的分享。我在使用downloader-exporter遇到无法使用快校版tr和正常版tr,但能使用qb的问题。希望能够得到解答。 以下是一些具体信息。

    #config
    qb:
      client: qbittorrent
      host: http://192.168.50.100:8999/
      username: admin
      password: *********
    tr2:
      client: transmission
      host: 192.168.50.100:9091
      username: admin
      password: *********
    
    #日志报错
    | ERROR    | downloader_exporter.transmission_exporter:get_status_metrics:85 - [tr2] Can not get client session: quote() doesn't support 'encoding' for bytes
    
    #页面显示
    # HELP downloader_up Whether if server is alive or not
    # TYPE downloader_up gauge
    downloader_up{client="transmission",host="192.168.50.100:9091",name="tr2",version=""} 0.0
    # HELP downloader_download_bytes_total Data downloaded this session (bytes)
    # TYPE downloader_download_bytes_total counter
    downloader_download_bytes_total{client="transmission",host="192.168.50.100:9091",name="tr2",version=""} 0.0
    # HELP downloader_download_speed_bytes Data download speed (bytes)
    # TYPE downloader_download_speed_bytes gauge
    downloader_download_speed_bytes{client="transmission",host="192.168.50.100:9091",name="tr2",version=""} 0.0
    # HELP downloader_upload_bytes_total Data uploaded this session (bytes)
    # TYPE downloader_upload_bytes_total counter
    downloader_upload_bytes_total{client="transmission",host="192.168.50.100:9091",name="tr2",version=""} 0.0
    # HELP downloader_upload_speed_bytes Data upload speed (bytes)
    # TYPE downloader_upload_speed_bytes gauge
    downloader_upload_speed_bytes{client="transmission",host="192.168.50.100:9091",name="tr2",version=""} 0.0```
    
    
    
    
    opened by CytsOn 3
Owner
Lei Shi
咸鱼一个
Lei Shi
Scripts to download files and folders programmatically from Google Drive

Google Drive Downloader Scripts Every time I need to download a lot of files from Google Drive (e.g. a dataset), it's always incredibly frustrating an

Ivan Evtimov 6 Jul 22, 2021
A cross-platform python based utility to download courses from udemy for personal offline use.

udemy-dl A cross-platform python based utility to download courses from udemy for personal offline use. Warning Udemy has started to encrypt many of t

Nasir Khan 4.6k Dec 31, 2022
A股tick下载,自动判断交易日历,获取全市场level1数据

TickDown A股tick下载,自动判断交易日历,获取全市场level1数据 依赖项 func_timeout requests some_tool(仓库里) akshare 使用 定时任务在上午 09:07开始运行 参数调节 max_num 单批次提交的股票数,当前为800,可以自行尝试多个数

Demon Finch 7 Jul 06, 2022
Throttle qBittorrent on Plex stream Start/Stop

Dependencies Python 3.6+ 'qbittorrent-api' Python Library Tautulli Script Setup Edit qbittorrent_throttle.py and set qBittorrent username, password an

6 Sep 24, 2022
Source code of paper: "HRegNet: A Hierarchical Network for Efficient and Accurate Outdoor LiDAR Point Cloud Registration".

HRegNet: A Hierarchical Network for Efficient and Accurate Outdoor LiDAR Point Cloud Registration Environments The code mainly requires the following

Intelligent Sensing, Perception and Computing Group 3 Oct 06, 2022
This package helps you to directly download an APK from Google Play by providing the package id of the app

Apk Downloader About | Features | Technologies | Requirements | Starting | License | Author 🎯 About This package helps you to directly download an AP

Daniel Agyapong 9 Dec 11, 2022
Tool To download 4KHDR DV SDR from AppleTV

# APPLE-TV 4K Downloader Tool To download 4K HDR DV SDR from AppleTV Hello Fellow Developers/ ! Hi! My name is WVDUMP. I am Leaking the scripts to

5 Dec 25, 2021
squid-dl is a massively parallel yt-dlp-based YouTube downloader.

squid-dl squid-dl is a massively parallel yt-dlp-based YouTube downloader. Installation Run the setup.py, which will install squid-dl and its two depe

tuxlovesyou 51 Jan 05, 2023
Open Source application for downloading and playing music.

Musifre Greetings For HackHeist(Wartex) Judges: Synopsis, Promotion Video & Product Functioning Video are present in Documentation Folder. A Star woul

Yash Dhingra 9 Mar 22, 2022
Tool to get Canvas cover videos from Spotify tracks.

Spotify Canvas Downloader Tool to get Canvas cover videos from Spotify tracks. ✨ Try it out Building Clone the repository git clone https://github.com

Gabriel 35 Dec 28, 2022
Simple python script to download .mp3 formatted files from YouTube video URLs

Introduction: Simple python script to download .mp3 formatted files from YouTube video URLs Requirements: Requires: youtube_dl module Requires: ffmpeg

Pat 2 Aug 18, 2022
music downloader written in python. (Uses jiosaavn API)

music downloader written in python. (Uses jiosaavn API)

Rohn Chatterjee 35 Jul 20, 2022
Download YouTube videos/music and images in MP4, JPG with this tool.

ABOUT THE TOOL Download YouTube videos, music and images in MP4, JPG with this tool, with an easy to understand interface. This tool works with both,

TrollSkull 5 Jan 02, 2023
A tool to make easy to search for directories in the URL.

Welcome to Brutos Directory Scanner 🚀 The Brutos is a python script used to provide agility in obtaining verifications to informations about related

Sérgio Corrêa 4 Apr 14, 2022
Utility for downloading works from AO3 (Archive Of Our Own)

froyo A small graphical application for batch downloading works from Archive Of Our Own (AO3). Curate a fic repo of your own today :) Features Batch d

flux 24 Dec 09, 2022
Most versatile Telegram torrent and youtube-dl bot.

TorToolkit Telegram So basically Tortoolkit is aimed to be the most versatile torrent leecher and Youtube-DL bot for telegram. This bot is highly cust

Yash Khadse 541 Dec 22, 2022
Python Youtube Video-Playlist Downloader

Youtube-Video-Playlist-Downloader-PyQt5 You can download videos and playlists on YouTube with this script. Script has GUI. Enjoy. Setup git clone http

Yunus Emre Öztürk 2 Jun 06, 2022
Python module to download all media from a GoFile gallery.

GoFile Downloader Setup First of all, clone this repository : ~$ git clone https://github.com/quatrecentquatre-404/gofile-downloader Second, oh wait..

Quatrecentquatre 61 Jan 01, 2023
Get the latest updates around you as they happen

Adherent We all are different, experience various things happening around us but we stick together. We are all a part of a greater community. As human

Shreyas Daniel 1 Nov 10, 2022
Mobile based API for Crunchyroll BETA (and Downloader).

Mobile based API for Crunchyroll BETA (and Downloader). Not restricted on servers and NO CLOUDFLARE

27 Dec 11, 2022