Warning: This page is a work in progress and is currently a rough draft based on Readarr
This page contains a list of health checks errors. These health checks are periodically performed performed by Lidarr and on certain events. The resulting warnings and errors are listed here to give advice on how to resolve them.
The branch you have set is not a valid release branch. You will not receive updates. Please change to one of the current release branches
- Newer versions of Lidarr are targeted for .NET6 or newer. We will no longer be providing legacy mono builds after 1.0 is released. You are running one of these legacy builds but your platform supports .NET.
¶ Fixing Standalone installs
- Back-Up your existing configuration before the next step.
- This should only happen on Linux hosts. Do not install .NET runtime or SDK from Microsoft.
- To remedy, download the correct build for your architecture and replace your existing binaries (application)
- In short you will need to delete your existing binaries (contents or folder of /opt/Lidarr) and replace with the contents of the .tar.gz you just downloaded.
DO NOT JUST EXTRACT THE DOWNLOAD OVER THE TOP OF YOUR EXISTING BINARIES.
YOU MUST DELETE THE OLD ONES FIRST.
- The below is a community developed script to remove your mono installation and replace it with the .NET installation. Contributions and corrections are welcome.
- This assumes you are on the
master
Lidarr branch update the variable if needed
- This assumes that Lidarr runs as the user
lidarr
update the variables if needed
- This assumes Lidarr is installed at
/opt/Lidarr
update the variables if needed
#!/bin/bash
## User Variables
installdir="/opt/Lidarr"
APPUSER="lidarr"
branch="master"
## /User Variables
app="lidarr"
ARCH=$(dpkg --print-architecture)
# Stop \*arr
sudo systemctl stop $app
# get arch
dlbase="https://$app.servarr.com/v1/update/$branch/updatefile?os=linux&runtime=netcore"
case "$ARCH" in
"amd64") DLURL="${dlbase}&arch=x64" ;;
"armhf") DLURL="${dlbase}&arch=arm" ;;
"arm64") DLURL="${dlbase}&arch=arm64" ;;
*)
echo_error "Arch not supported"
exit 1
;;
esac
echo "Downloading..."
wget --content-disposition "$DLURL"
tar -xvzf ${app^}.*.tar.gz
echo "Installation files downloaded and extracted"
echo "Moving existing installation"
sudo mv "$installdir/" "$installdir.old/"
echo "Installing..."
sudo mv "${app^}" "$installdir"
sudo chown $APPUSER:$APPUSER -R $installdir
sudo sed -i "s|ExecStart=/usr/bin/mono --debug /opt/${app^}/${app^}.exe|ExecStart=/opt/${app^}/${app^}|g" /etc/systemd/system/$app.service
sudo sed -i "s|ExecStart=/usr/bin/mono /opt/${app^}/${app^}.exe|ExecStart=/opt/${app^}/${app^}|g" /etc/systemd/system/$app.service
sudo systemctl daemon-reload
echo "App Installed"
sudo rm -rf "$installdir.old/"
rm -rf "${app^}.*.tar.gz"
sudo systemctl start $app
¶ Currently installed mono version is old and unsupported
- Lidarr is written in .NET and requires Mono to run on very old ARM processors. Please note that Mono builds are no longer supported after v1.0
- Mono 5.20 is the absolute minimum for Lidarr.
- The upgrade procedure for Mono varies per platform.
- Lidarr stores its data in an SQLite database. The SQLite3 library installed on your system is too old. Lidarr requires at least version 3.9.0. Note that Lidarr uses
libSQLite3.so
which may or may not be contained in a SQLite3 upgrade package.
- Rejoice, the developers have released a new update. This generally means awesome new features and squashed piles of bugs (right?). Apparently you don’t have Auto-Updating enabled, so you’ll have to figure out how to update on your platform. Pressing the Install button on the
System => Updates
page is probably a good starting point.
This warning will not appear if your current version is less than 14 days old
- This means Lidarr will be unable to update itself. You’ll have to update Lidarr manually or set the permissions on Lidarr’s Startup directory (the installation directory) to allow Lidarr to update itself.
-
Lidarr detected that AppData folder for your Operating System is located inside the directory that contains the Lidarr binaries. Normally it would be C:\ProgramData
for Windows and, ~/.config
for linux.
-
Please look at System => Info
to see the current AppData & Startup directories.
-
This means Lidarr will be unable to update itself without risking data loss.
-
If you’re on linux, you’ll probably have to change the home directory for the user that is running Lidarr and copy the current contents of the ~/.config/Lidarr
directory to preserve your database.
- The update branch setup in
Settings => General
is for a previous version of Lidarr, therefore the instance will not see correct update information in the System => Updates
feed and may not receive new updates when released.
-
signalR drives the dynamic UI updates, so if your browser cannot connect to signalR on your server you won’t see any real time updates in the UI.
-
The most common occurrence of this is use of a reverse proxy or cloudflare
-
Cloudflare needs websockets enabled.
- Nginx requires the following addition to the location block for the app:
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
Make sure you do not include proxy_set_header Connection "Upgrade";
as suggested by the nginx documentation. THIS WILL NOT WORK
See https://github.com/aspnet/AspNetCore/issues/17081
- For Apache2 reverse proxy, you need to enable the following modules: proxy, proxy_http, and proxy_wstunnel. Then, add this websocket tunnel directive to your vhost configuration:
RewriteEngine On
RewriteCond %{HTTP:Upgrade} =websocket [NC]
RewriteRule /(.*) ws://127.0.0.1:8686/$1 [P,L]
- For Caddy (V1) use this:
- Note: you will also need to add the websocket directive to your lidarr configuration
proxy /lidarr 127.0.0.1:8686 {
websocket
transparent
}
- Review your proxy settings and ensure they are accurate
- Ensure your proxy is up, running, and accessible
- Your configured proxy failed to test successfully, review the HTTP error provided and/or check logs for more details.
- System time is off by more than 1 day. Scheduled tasks may not run correctly until the time is corrected
- Review your system time and ensure it is synced to an authoritative time server and accurate
- Mono 4.x tls workaround still enabled, consider removing
MONO_TLS_PROVIDER=legacy
environment option
¶ Mono and x86 builds are ending
- Mono and x86 builds will no longer be supported in the next build of the application. If you are receiving this error then you are running the mono version of the application or the x86 version. Unfortunately, due to increasing difficulting in development support for these legacy versions we will be discontinuing their support and thus releases for them going forward. Thus it is advised you upgrade to a supported Operating System that does not require neither x86 nor mono. You may also be able to explore using Docker for your needs.
- Lidarr useschromaprint audio fingerprinting to identify tracks. This depends on an external binary
fpcalc
, which is distributed with Lidarr v1 for Windows, Linux and macOS, but must be provided independently on freeBSD.
- Ensure the fpcalc binary bundled with Lidarr is executable (755 permissions). This would be found in Lidarr's installation directory (e.g.
/opt/Lidarr/fpcalc
) If it is not executable, then correct it's permissions with the below command and then restart Lidarr.
- Note that for the fix
sudo
may be required or your path to Lidarr's binary folder may be different depending on your environment and setup.
chmod +x /opt/Lidarr/fpcalc
The below information is for legacy v0.8.0 builds only.
- To fix this on a native Linux instance, install the appropriate package using your package manager and make sure that fpcalc is on your PATH (this can be checked using which fpcalc and verifying that the correct location of fpcalc is returned):
Distribution |
Package |
Debian/Ubuntu |
libchromaprint-tools |
Fedora/CentOS |
chromaprint-tools |
Arch |
chromaprint |
OpenSUSE |
chromaprint-fpcalc |
Synology |
chromaprint |
- A properly configured and enabled download client is required for Lidarr to be able to download media. Since Lidarr supports different download clients, you should determine which best matches your requirements. If you already have a download client installed, you should configure Lidarr to use it and create a category. See
Settings=>Download Client
.
- Lidarr was unable to communicate with the configured download client. Please verify the download client is operational and double-check the URL. This could also indicate an authentication error.
- This is typically due to improperly configured download client. Things you can typically check:
- Your download client's IP Address - if it's all on the same bare metal machine, this is typically
127.0.0.1
- The Port number that your download client is using - these are filled out with the default port number but if you've changed it you will need to have the same one entered into Lidarr.
- Ensure that SSL encryption is not turned on if you're using both your Lidarr instance and your download client on a local network (i.e., over plain HTTP). See the SSL FAQ entry for more information.
- One or more of your download clients is not responding to requests made by Lidarr. Therefore Lidarr has decided to temporarily stop querying the download client on it’s normal 1 minute cycle, which is normally used to track active downloads and import finished ones. However, Lidarr will continue to attempt to send downloads to the client, but will in all likeliness fail.
- You should inspect
System=>Logs
to see what the reason is for the failures.
- If you no longer use this download client, disable it in Lidarr to prevent the errors.
¶ Enable Completed Download Handling
- Lidarr requires Completed Download Handling to be able to import files that were downloaded by the download client. It is recommended to enable Completed Download Handling. (Completed Download Handling is enabled by default for new users.)
-
This error is typically associated with bad docker paths within either your download client or Lidarr
-
An example of bad (inconsistent) paths would be:
- Download client:
/mnt/user/downloads:/downloads
- Lidarr:
/mnt/user/downloads:/data
-
In this example the download client places its downloads into /downloads
and tells Lidarr when its complete that the finished book is in /downloads
. Lidarr then comes along and says "Okay, cool, let me check in /downloads
." Well, inside Lidarr you did not allocate a /downloads
path you allocated a /data
path so it throws this error.
-
The easiest fix for this is CONSISTENCY - if you use one scheme in your download client, use it across the board.
-
Team Lidarr is a big fan of simply using /data.
- Download client:
/mnt/user/data/downloads:/data/downloads
- Lidarr:
/mnt/user/data:/data
-
Now within the download client you can specify where in /data
you'd like to place your downloads, now this varies depending on the client but you should be able to tell it "Yeah, download client, place my files into /data/downloads/movies
" and since you used /data
in Lidarr when the download client tells Lidarr it's done Lidarr will come along and say "Sweet, I have a /data
and I also can see /data/downloads/movies
, all is right in the world."
-
There are many great write ups: our wiki Docker Guide and TRaSH's Hard links and Instant Moves (Atomic-Moves). Now these guides place heavy emphasis on Hard links and Atomic moves, but the general concept of containers and how path mapping works is the core of these discussions.
-
If you're crossing operating systems or native and docker then you need a remote path map. See TRaSH's Remote Path Guide for Radarr and Sonarr for more information.
- Within the application, a root folder is defined as the configured media library folder. This is not the root folder of a mount. Your download client has an incomplete or complete (or is moving completed downloads) into your root (library) folder.
- This frequently causes issues - including data loss - and should not be done. To fix this change your download client so it is not placing downloads within your root folder. Note that 'placing' also includes if your download client category is set to your root folder or if NZBGet/SABnzbd have sort enabled and are sorting to your root folder.
- Please note that this check looks at all defined/configured root folders added not only root folders currently in use. In other words, the folder your download client downloads into or moves completed downloads to, should not be the same folder you have configured as your root/library/final media destination folder in the *arr application.
- Configured Root Folders (aka Library folders) can be found in Settings => Media Management => Root Folders
- One example is if your downloads are going into
\data\downloads
then you have a root folder set as \data\downloads
.
- It is suggested to use paths like
\data\media\
for your root folder/library and \data\downloads\
for your downloads.
- Review our Docker Guide and TRaSH's Hard links and Instant Moves (Atomic-Moves) Guide for more information on the correct and optimal path setup. Note that the concepts apply for docker and non-docker
Your download folder where your download client places the downloads and your root/library folder MUST be separate. *Arr will import the file(s) from your download client's folder into your library. The download client should not move anything or download anything to your library.
- The location your download client is downloading files to is causing problems. Check the logs for further information. This may be permissions or attempting to go from windows to linux or linux to windows without a remote path map.
- The location your download client is downloading files to is causing problems. Check the logs for further information. This may be permissions or attempting to go from windows to linux or linux to windows without a remote path map. See TRaSH's Remote Path Guide for more information.
- Lidarr (or the user lidarr is running as) cannot access the location your download client is downloading files to. This is typically a permission issue.
- A file accessible via a remote path map appears to have been removed prior to processing completing.
¶ Remote Path is Used and Import Failed
¶ Completed/Failed Download Handling
¶ Completed Download Handling is disabled
- Lidarr requires
Completed Download Handling
to be able to import files that were downloaded by the download client. It is recommended to enable Completed Download Handling
. (It is enabled by default for new users.)
- It's required that your download client retain its history of completed downloads until Lidarr has imported them. If history retention is disabled then *Arr may not see the completed download before it is removed from the download client. Your download client should be set to keep (usenet) and pause not remove (torrents) downloads after completion: either indefinitely or for at least 14 days.
- Sabnzbd: Switches => Post Processing => Keep Jobs must be set to 14 days or greater OR be set to Keep All History
- Removing completed downloads from your client can be managed by Lidarr and enabled via the download client settings in *Arr. Thus *Arr can ensure that your download client history is cleaned up.
- Simply put you do not have any of your indexers set to allow automatic searches
- Go into
Settings => Indexers
, select an indexer you'd like to allow Automatic Searches and then click save.
- Lidarr uses the RSS feed to pick up new releases as they come along. More info on that here
- To correct this issue go to
Settings => Indexers
, select an indexer you have and enable RSS Sync
- Lidarr requires indexers to be able to discover new releases. Please read the wiki on instructions how to add indexers.
- None of the indexers you have enabled support searching. This means Lidarr will only be able to find new releases via the RSS feeds. But searching for movies (either Automatic Search or Manual Search) will never return any results. Obviously, the only way to remedy it is to add another indexer.
- None of the indexers you have enabled support interactive searching. This means the application will only be able to find new releases via the RSS feeds or an automatic search.
- Errors occurs while Lidarr tried to use one of your indexers. To limit retries, Lidarr will not use the indexer for an increasing amount of time (up to 24h).
- This mechanism is triggered if Lidarr was unable to get a response from the indexer (could be caused DNS, proxy/VPN connection, authentication, or an indexer issue), or unable to fetch the nzb/torrent file from the indexer.
- Please inspect the logs to determine what kind of error causes the problem.
- You can prevent the warning by disabling the affected indexer.
- Run the Test on the indexer to force Lidarr to recheck the indexer, please note that the Health Check warning will not always disappear immediately.
- The Jackett
/all
endpoint is convenient, but that is its only benefit. Everything else is potential problems, so adding each tracker individually is now required.
- Even Jackett's Devs says it should be avoided and should not be used.
- Using the
/all
endpoint has no advantages, only disadvantages:
- you lose control over indexer specific settings (categories, search modes, etc.)
- mixing search modes (IMDB, query, etc.) might cause low-quality results
- indexer specific categories (>= 100000) cannot be used.
- slow indexers will slow down the overall result
- total results are limited to 1000
- if one of the trackers returns an error, *Arr will disable it and now you will not get any results.
- Add each tracker in Jackett manually as an indexer in *Arr
- Check out Prowlarr which can sync indexers to *Arr and from the Lidarr/Radarr/Readarr development team.
- Check out NZBHydra2 which can sync indexers to *Arr. But do not use their single aggregate endpoint and use
multi
if sync will be used.
-
This error is typically identified if a Artist is looking for a root folder but that root folder is no longer available.
-
This error may also be if a list is still pointed at a root folder but that root folder is no longer available.
-
If you would like to remove this warning simply find the album that is still using the old root folder and edit it to the correct root folder.
-
Easiest way to find the problem artist is to:
- Go to the Artist (Library) Tab
- Create a custom filter with the old root folder path
- Select mass edit on the top bar and from the Root Paths drop down select the new root path that you want these artist to be moved to.
- Next you will receive a pop-up that states Would you like to move the Artist folders to 'root path' ? This will also state This will also rename the Artist folder per the Artist folder format in settings. Simply select No if the you do not want Lidarr to move your files
- Run the Check Health Task in System => Tasks
-
Typically this simply means that Lidarr is no longer able to communicate via API or via logging in to your chosen list provider. Your best bet if the problem persists is to contact them in order to rule them out, as their systems maybe overloaded from time to time.
-
Review System => Events filtered for Warning (Warning & Errors) to see the historical failures or check logs for details.
-
Review System => Events filtered for Warning (Warning & Errors) to see the historical failures or check logs for details.
- This section will show you available disk space
- In docker this can be tricky as it will typically show you the available space within your Docker image
- This will tell you about your current install of Lidarr
- Home Page: Lidarr's home page
- Wiki: You're here already
- Reddit: r/lidarr
- Discord: Join our discord
- Donations: If you're feeling generous and would like to donate click here
- Donations to Sonarr: If you're feeling generous and would like to donate to the project that started it all click here
- Source: GitHub
- Feature Requests: Got a great idea drop it here
All these tasks can be ran manually outside their scheduled times by hitting the icon to the far right of each of the tasks.
- The queue will show you upcoming tasks as well as a history of recently ran tasks as well as how long those tasks took.
This section will be more tailored to the buttons and overall point of the page.
However, if you're looking for how to back/restore your Lidarr instance click here.
Within the Backup section you will be presented with previous backups (unless you have a fresh install that hasn't made any backups).
Here you will have two options at the top of the screen
- Backup Now - This option will trigger a manual backup of your Lidarr's database
- Restore Backup - This will open a new screen to restore from a previous backup
By selecting Choose File this will prompt your browser to open a dialog box to restore from a Lidarr Zip backup
Finally if you have any previous backups and would like to download them from Lidarr to be placed in a non standard location you simply can select one of these files to download them
Off to the right of each of the previous download you have two options.
- One - To restore from a previous backup - This will open a new window to confirm you want to restore from this backup
- Two - To delete a previous backup
The update screen will show the past 5 updates that have been made as well as the current version you are on.
This page will also display the update notes from the Developers telling you what has been fixed or added to Lidarr (Rejoice!)
A Maintenance Release contains bug fixes and other various improvements. Take a look at the commit history for specifics.
The events tab will show you what has been happening within your Lidarr. This can be used to diagnose some light issues. However, this does not replace Trace Logs discussed in Logging. Events are the equivalent of INFO Logs.
- Components - This column will tell you what component within Lidarr has been triggered
- Message - This column will tell you what message as been sent from the component from the previous column.
- Gear Icon - This option will allow you to change how many Components/Messages are displayed per page (Default is 50)
- Options at the top of the page
- Refresh - This option will refresh the current page, pulling a new events log
- Clear - This will clear the current events log allowing you to start from fresh
This page will allow you to download and see what current log files are available for Lidarr
On the top row there are several options to allow you to control your log files.
- The top row on the far left there is a dropdown that will allow you to switch from Log files and Updater Log Files
- Log Files - The bread and butter of any support issue more on log files can be found here.
- Updater Log Files - This will show the log files associated with Lidarr's updater script
If you're on docker this will be empty as you should be updating by downloading a new docker image
- Refresh - This will refresh the current page and display any newly created logs
- Delete - This will clear all logs allowing you to start from fresh
- File Name - This will display the file name associated with the log
- Last Written - This is the local time that this particular log file was written to.
- Lidarr uses rolling log files limited to 1MB each. The current log file is always lidarr.txt, for the the other files lidarr.0.txt is the next newest (the higher the number the older it is) up to 51 log files total. This log file contains
fatal
, error
, warn
, and info
entries.
- When Debug log level is enabled, additional lidarr.debug.txt rolling log files will be present, up to 51 files. This log files contains
fatal
, error
, warn
, info
, and debug
entries. It usually covers a ~40h period.
- When Trace log level is enabled, additional lidarr.trace.txt rolling log files will be present, up to 51 files. This log files contains
fatal
, error
, warn
, info
, debug
, and trace
entries. Due to trace verbosity it only covers a couple of hours at most.