Skip to content

Scraparr is a Prometheus Exporter for various components of the *arr Suite

License

Notifications You must be signed in to change notification settings

thecfu/scraparr

 
 

Repository files navigation

scraparr-logo Scraparr

A Exporter for the *arr Suite

Project Status: Active Pylint


Scraparr is a Prometheus exporter for the *arr suite (Sonarr, Radarr, Lidarr, etc.). It provides metrics that can be scraped by Prometheus to monitor and visualize the health and performance of your *arr applications.

Features

  • Exposes detailed *arr metrics
  • Easy integration with Prometheus
  • Lightweight and efficient
  • Built for extensibility

Installation

Local Setup

  1. Clone this repository:
git clone https://github.com/thecfu/scraparr.git
cd scraparr/src
  1. Install dependencies:
pip install -r scraparr/requirements.txt
  1. Run the exporter:
python -m scraparr.scraparr

Docker Setup

You can either Clone the Repo and build the Docker Image locally or you can use the Image published in the Github Registry You can also check the Docker-Compose.

Github Registry: docker run -v ./config.cnf:/scraparr/config/config.cnf -p 7100:7100 ghcr.io/thecfu/scraparr

Configuration

Scraparr needs's to be configured using a config.cnf file. Ensure the configuration specifies the URLs, API Version and API keys for the *arr services you want to monitor.

Template for Service inside the config.cnf:

[SONARR]
url = http://localhost:8989
api_key = YOUR_KEY
; (Optional) specify API version
; api_version = v3
; (Optional) Get Data per Series
; detailed = true

Note

If using the Docker Variant you need to use the IP or configure & use the extra_host host.docker.internal:host-gateway

Usage

Once the service is running, it will expose metrics at http://localhost:7100/metrics (default port). You can configure Prometheus to scrape these metrics by adding the following job to your Prometheus configuration:

scrape_configs:
  - job_name: 'scraparr'
    static_configs:
      - targets: ['localhost:7100']

Grafana Dashboards

For example Grafana Dashboards have a look at Dashboards

Contributing

Contributions are welcome! Please open an issue or submit a pull request. Make sure to follow the contribution guidelines.

License

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.


___________.__           _________   _____ ____ ___ 
\__    ___/|  |__   ____ \_   ___ \_/ ____\    |   \
  |    |   |  |  \_/ __ \/    \  \/\   __\|    |   /
  |    |   |   Y  \  ___/\     \____|  |  |    |  / 
  |____|   |___|  /\___  >\______  /|__|  |______/  
                \/     \/        \/