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
Download your Spotify playlists and songs along with album art and metadata

spotDL Download your Spotify playlists and songs along with album art and metadata The fastest, easiest, and most accurate command-line music download

10.6k Jan 03, 2023
Downloads .ksy files and their dependencies straight from the official kaitai-struct format gallery.

ksy-dl Downloads .ksy files and their dependencies straight from the official kaitai-struct format gallery. This tool will: Fetch any of the official

3 Jun 20, 2022
A script that downloads YouTube videos/audio

YouTube-Downloader A script that downloads YouTube videos/audio from youtube. Usage Download the script by executing the following in your terminal :

Debayan Sarkar 2 Jan 04, 2022
music downloader written in python. (Uses jiosaavn API)

music downloader written in python. (Uses jiosaavn API)

Rohn Chatterjee 35 Jul 20, 2022
Persepolis Download Manager is a GUI for aria2.

Persepolis Download Manager Content About FAQ Screenshots Credits About Persepolis is a download manager & a GUI for Aria2. It's written in Python. Pe

Persepolis 5.6k Dec 31, 2022
Download clips from youtube videos with a few clicks and a GUI!

YouClip v2.0.0 Table Of Contents: What Is YouClip Installation Usage Stuff To Fix Changelog What Is YouClip? ! IMPORTANT: The source files are a total

ador 2 Oct 05, 2021
AkShare is an elegant and simple financial data interface library for Python, built for human beings! 开源财经数据接口库

Overview AkShare requires Python(64 bit) 3.7 or greater, aims to make fetch financial data as convenient as possible. Write less, get more! Documentat

Albert King 5.8k Jan 03, 2023
A lightweight, dependency-free Python library (and command-line utility) for downloading YouTube Videos.

A lightweight, dependency-free Python library (and command-line utility) for downloading YouTube Videos.

pytube 7.9k Jan 02, 2023
Um projeto modesto para baixar vídeos do youtube usando tkinter como gui

Youtube Downloader Um projeto modesto para baixar vídeos do youtube usando tkinter como gui Instalação dos requirements: python3 setup.py ou python se

Sunlyx 2 Nov 25, 2021
Simple Python script to download images and videos from public subreddits without using Reddit's API 😎

Subreddit Media Downloader Download images and videos from any public subreddit without using Reddit's API Made with ❤ by Nico 💬 About: This script a

Nico 106 Jan 07, 2023
Simple tool downloads public PoC (refer from nomi-sec)

PoC Collection This is the little script to collect the proof-of-concept which is refered from nomi-sec. The repository now is only develop for linux-

2 Aug 17, 2022
The sole purpose of this script is to download any NFT collection from OpenSea

OpenSea NFT Stealer The sole purpose of this script is to download any NFT collection from OpenSea. Setup Prerequisites: Python 3 Python requests libr

Phillip 9 Sep 04, 2022
Stremio addon for fetching videos from your google drive.

stremio-gdrive Instructions: There are two ways to go about: Method 1 is hard and long but might give you better performance and you need to make your

72 Dec 31, 2022
抖音去水印视频批量下载,完全使用抖音官方接口

TikTokDownload 抖音去水印视频下载,使用抖音官方接口 使用教程(Win7) Win10环境暂时没测,bug情况应该比Win7少 运行软件前先打开目录下 conf.ini 文件按照要求进行配置 批量下载可直接修改配置文件,单一视频下载请直接打开粘贴视频链接即可

JohnserfSeed 2k Jan 04, 2023
Python utility to download jobs at seek.com.au

Job Seeker job_seeker is an utility to download data of a job search from seek.com.au into a csv file for data analysis and exploration Install using

PyBites 3 May 14, 2022
⚙️ A CLI tool that can download songs from youtube.

⚙️ Music Downloader Music Downloader is a tool that can download songs from Youtube. Installation Base requirements: Python 3.7+ If you have Python 3.

matjs 4 Nov 03, 2021
A modern CLI to download animes automatically from Twist

Kurby Kurby is a nice and simple CLI that use Twist website, and their huge collection to download animes for free and automatically Animes from Twist

Alain BERRIER 48 Dec 22, 2022
A Quick demo of how to use the youtube_dl module in python.

youtube_dl python module demo A Quick demo of how to use the youtube_dl module in python. Whole documentation for the youtube_dl Installation git

7 Aug 27, 2021
A standalone pytube wrapper for downloading individual videos from YouTube.

pytube-runner This is a Python CLI script for downloading individual videos from YouTube. The pytube project is the core of this runner, so naturally

Shiva 2 Jun 21, 2022
Desktop utility to download images/videos/music/text from various websites, and more

Desktop utility to download images/videos/music/text from various websites, and more

Kurt Bestor 11.2k Jan 08, 2023