Note: this is the Legacy v2 Wiki. The new V3 Wiki can be found at the Servarr Wiki.
Troubleshooting
Turn logging up to trace
The first step is to turn logging up to Trace, see Logging and Log Files for details. You'll then reproduce the issue and use the trace level logs from that time frame to examine the issue. If someone is helping you, put context from before/after in a pastebin to show them. It doesn't need to be the whole file and it shouldn't just be the error. You should also reproduce the issue while tasks that spam the log file aren't running.
Testing an Indexer or Tracker
When you test an indexer or tracker, in debug or trace logs you can find the URL used. An example of a successful test is below, you can see it query the indexer via a specific URL with specific parameters and then the response. You test this url in your browser like https://api.nzbgeek.info/api?t=tvsearch&cat=5030,5040,5045,5080,5070&extended=1&apikey=(removed)&offset=0&limit=100
replacing the apikey=(removed)
with the correct apikey like apikey=123
. You can experiment with the parameters if you're getting an error from the indexer or see if you have connectivity issues if it doesn't even work. After you've tested in your own browser, you should test from the system Sonarr is running on if you haven't already.
19-11-12 13:27:28.8|Debug|Newznab|Downloading Feed https://api.nzbgeek.info/api?t=tvsearch&cat=5030,5040,5045,5080,5070&extended=1&apikey=(removed)&offset=0&limit=100
19-11-12 13:27:28.8|Trace|HttpClient|Req: [GET] https://api.nzbgeek.info/api?t=tvsearch&cat=5030,5040,5045,5080,5070&extended=1&apikey=(removed)&offset=0&limit=100
19-11-12 13:27:28.8|Trace|ConfigService|Using default config value for 'proxyenabled' defaultValue:'False'
19-11-12 13:27:29.9|Trace|HttpClient|Res: [GET] https://api.nzbgeek.info/api?t=tvsearch&cat=5030,5040,5045,5080,5070&extended=1&apikey=(removed)&offset=0&limit=100: 200.OK (1093 ms)
19-11-12 13:27:30.0|Trace|NewznabRssParser|Parsed: Shetland.S04E06.1080p.AMZN.WEB-DL.DDP2.0.H.264.1-Cinefeel-Obfuscated
...
19-11-12 13:27:30.0|Trace|NewznabRssParser|Parsed: James.Corden.2019.11.11.Kate.Beckinsale.1080p.WEB.x264.1-TBS-Obfuscated
19-11-12 13:27:30.0|Trace|NewznabRssParser|Parsed: [BakedFish] Black Clover (2017) - 109 [720p][AAC]
19-11-12 13:27:30.0|Trace|Http|Res: 108939 [POST] /api/v3/indexer/test: 200.OK (1404 ms)
19-11-12 13:27:30.0|Debug|Api|[POST] /api/v3/indexer/test: 200.OK (1404 ms)
Testing a Search
Just like the indexer/tracker test above, when you trigger a search while at Debug or Trace level logging, you can get the URL used from the log files. While testing, it is best to use as narrow a search as possible. A manual episode search is good because it is specific and you can see the results in the UI while examining the logs.
In this test, you'll be looking for obvious errors and running some simple tests. You can see the search used the url https://api.nzbgeek.info/api?t=tvsearch&cat=5030,5040,5045,5080&extended=1&apikey=(removed)&offset=0&limit=100&tvdbid=354629&season=1&ep=1
, which you can try yourself in a browser after replacing (removed)
w/ your apikey for that indexer. Does it work? Do you see the expected results? In that URL, you can see that it set specific categories with cat=5030,5040,5045,5080
, so if you're not seeing expected results, this is one likely reason. You can also see that it searched by tvdbid w/ tvdbid=354629
, so if the episode isn't properly categorized on the indexer, it will need to be fixed. You can also see that it searches by specific season and episode with season=1
and ep=1
, so if that isn't correct on the indexer, you won't see those results. Look at Manual Episode Search XML Output to see an example of a working query's output.
19-11-20 13:15:23.6|Info|NzbSearchService|Searching 1 indexers for [The Fix : S01E01]
19-11-20 13:15:23.6|Debug|Newznab|Downloading Feed https://api.nzbgeek.info/api?t=tvsearch&cat=5030,5040,5045,5080&extended=1&apikey=(removed)&offset=0&limit=100&tvdbid=354629&season=1&ep=1
19-11-20 13:15:23.6|Trace|HttpClient|Req: [GET] https://api.nzbgeek.info/api?t=tvsearch&cat=5030,5040,5045,5080&extended=1&apikey=(removed)&offset=0&limit=100&tvdbid=354629&season=1&ep=1
You can find this full trace log at Manual Episode Search Trace Log along with a pastebin link that is easier to read.
Common Problems
Wrong categories
Incorrect categories is probably the most common cause of results showing in manual searches of an indexer/tracker, but not in Sonarr. The indexer/tracker should show the category in the search results, which should help you figure out what is missing. If you're using Jackett, each tracker has a list of specifically supported categories. Make sure you're using the correct ones for Categories and Anime Categories. I find it helpful to have the list visible in one browser window while I edit the entry in Sonarr.
Wrong show type
The show type is another cause of poor search results. Most shows should be Standard
. For daily shows which are typically released with a date, Daily
should be used. Finally, there is anime where using Anime
is usually right, but sometimes Standard
can work better, so try the other one if you're having issues.
Wrong results
Sometimes indexers will return completely unrelated results, Sonarr will feed in parameters to limit the search to a tvdbid, season and/or episode... but the results returned are completely unrelated. Or sometimes, mostly related with a few incorrect results. The first is usually an indexer problem and you'll be able to tell from the trace logs which is causing it. You can disable that indexer and report the problem. The other is usually categorized releases which should be reportable on the indexer/tracker.
Certificate validation
You'll be connecting to most indexers/trackers via https, so you'll need that to work properly on your system. That means your time zone and time both need to be set correctly. It also means your system certificates need to be up to date. And if you're using Mono, MONO_TLS_PROVIDER=legacy
was a fix from years ago that should not be used anymore, so make sure you're not setting that accidentally.
Hitting rate limits
If you run your Sonarr through a VPN or proxy, you may be competing with 10s or 100s or 1000s of other people all trying to use services like TVDB, Xem and/or your indexers and trackers. Rate limiting and ddos protection are often done by IP address and your VPN/proxy exit point is one IP address. Unless you're in a repressive country like China, Australia or South Africa you don't need to VPN/proxy your Sonarr/Radarr.
Using the Jackett /all endpoint
The Jackett /all
endpoint is convenient, but that is essentially its only benefit. Everything else is potential problems, so adding each tracker individually is preferred. It allows for fine tuning of categories on a per tracker basis, which can be a problem w/ the /all
end point if using the wrong category causes errors on some. In Sonarr, each indexer/tracker is limited to 1000 results if pagination is supported or 100 if not, which means as you add more and more trackers to Jackett, you're more and more likely to clip results. Finally, if one of the trackers in /all
returns an error, Sonarr will disable it and now you don't get any results.
Errors
These are some of the common errors you may see when adding an indexer
The underlying connection was closed: An unexpected error occurred on a send.
This is caused by the indexer using a SSL protocol not supported by .net 4.5, to resolve this you will need to install .net 4.5, which is available on Vista/Server 2008 and above (if you're on XP/Server 2003 its time to upgrade).
Error getting response stream (Write: The authentication or decryption has failed.): SendFailure
This is caused by the indexer using a new certificate authority that is not trusted by mono 2.10. The solution is to upgrade to mono 3.x, on Ubuntu this can be done via this method: http://stackoverflow.com/a/13384233/882971 We recommend upgrading to mono 3.x to fix a number of bugs and add support for .net 4.5 features.
The request timed out
Sonarr seems to have issues with certain TLS versions or configurations. If you get the following error messages in your log:
System.Net.WebException: The request timed out: 'https://example.org/api?t=caps&apikey=(removed) ---> System.Net.WebException: The request timed out
And you can see the following in the trace logfile:
<DATE&TIME>|Trace|FallbackHttpDispatcher|Curl not available, using default WebClient.
You might fix it by installing libcurl3. On Ubuntu/Debian use
apt install libcurl3
Getting Started
Troubleshooting
- Asking for Help
- Logging and Log Files
- AppData Directory
- Searches Indexers and Trackers
- Downloads and Importing
- Recovering from a Failed Update
Additional Configuration
More Information
- Completed Download Handling
- Failed Download Handling
- Indexer Integration
- Backup and Restore
- PushOver
- Sorting and Renaming
- Anime naming scheme
- Monitoring Series and Episodes
- RSS Sync
- Indexer Seed Ratio
Development