Prowlarr cannot connect to Sonarr or Radarr, all are Plugins

ShameSpear

Dabbler
Joined
Nov 30, 2022
Messages
14
Hi all,

I've reached the limit of my knowledge, I'm kind of learning NAS on the fly while I build this. My end goal is to have Radarr and Sonarr use Prowlarr as their indexer, attached to my Plex, and have Sonarr and Radarr download via qBittorrent. I've got my Plex plugin working perfectly, the qBittorrent seems to be fine (I haven't tried to use it as I'm also hitting my head against the wall over the OpenVPN, but that's another post entirely), but I keep getting errors trying to connect my *arrs.

I'll start with my specs first:
  • Using TrueNAS core, version: TrueNAS-13.0-U3.1
  • plugins involved:
  • Plex - 12.3-RELEASE-p9
  • Prowlarr - 13.1-RELEASE-p5
  • Radarr - 12.3-RELEASE-p9
  • Sonarr - 12.3-RELEASE-p9
  • qBittorrent - 12.3-RELEASE-p9
in terms of physical specs, this is something I built from scraps, so try not to judge me:
  • CPU - Intel Core i5-4460 3.2 GHz Quad-Core Processor
  • MB - Asus H81M-D PLUS Micro ATX LGA1150 Motherboard
  • RAM - TEAMGROUP Vulcan 8 GB (2 x 4 GB) DDR3-1600 CL9 Memory
  • Case - Picked off of someone's curb at trash day
  • OS - TrueNAS installed on a SanDisk Cruzer Fit 8GB USB 2.0 Low-Profile Flash Drive- SDCZ33-008G-B35
  • Storage - A variety of sizes and vendors gifted from a friend, two 8tb Hitachi, two 6tb Dell/HGST, four 4tb Toshibas
I did my due diligence, the only post similar to this I've found in the forums the user was directed to refresh his API key on his Sonarr and restart it, then it should reconnect. That didn't do it for me, so here's what's happening:

Going into Prowlarr > Settings > Apps > Add New > Sonarr > putting in the URL (I've tried localhost and my 192.168.x.x:xxxx with the same result) and both Test and Save just give me a red exclamation point

2022-11-30 10_34_06-Window.png

2022-11-30 10_34_14-Window.png
+

I go to the logs and from what I can understand, it just has the connection refused.

2022-11-30 08:01:17.2|Fatal|ProwlarrErrorPipeline|Request Failed. POST /api/v1/applications/test
[v0.4.9.2083] System.Net.Http.HttpRequestException: Connection refused (192.168.68.4:8989)
---> System.Net.Sockets.SocketException (61): Connection refused
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult(Int16 token)
at System.Net.Sockets.Socket.<ConnectAsync>g__WaitForConnectWithCancellation|277_0(AwaitableSocketAsyncEventArgs saea, ValueTask connectTask, CancellationToken cancellationToken)
at NzbDrone.Common.Http.Dispatchers.ManagedHttpDispatcher.attemptConnection(AddressFamily addressFamily, SocketsHttpConnectionContext context, CancellationToken cancellationToken) in D:\a\1\s\src\NzbDrone.Common\Http\Dispatchers\ManagedHttpDispatcher.cs:line 316
at NzbDrone.Common.Http.Dispatchers.ManagedHttpDispatcher.onConnect(SocketsHttpConnectionContext context, CancellationToken cancellationToken) in D:\a\1\s\src\NzbDrone.Common\Http\Dispatchers\ManagedHttpDispatcher.cs:line 302
at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at System.Net.Http.HttpConnectionPool.ConnectToTcpHostAsync(String host, Int32 port, HttpRequestMessage initialRequest, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(HttpRequestMessage request)
at System.Threading.Tasks.TaskCompletionSourceWithCancellation`1.WaitWithCancellationAsync(CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.GetHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.AuthenticationHelper.SendWithAuthAsync(HttpRequestMessage request, Uri authUri, Boolean async, ICredentials credentials, Boolean preAuthenticate, Boolean isProxyAuth, Boolean doRequestAuth, HttpConnectionPool pool, CancellationToken cancellationToken)
at System.Net.Http.DiagnosticsHandler.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.DecompressionHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
at NzbDrone.Common.Http.Dispatchers.ManagedHttpDispatcher.GetResponseAsync(HttpRequest request, CookieContainer cookies) in D:\a\1\s\src\NzbDrone.Common\Http\Dispatchers\ManagedHttpDispatcher.cs:line 108
at NzbDrone.Common.Http.HttpClient.ExecuteRequestAsync(HttpRequest request, CookieContainer cookieContainer) in D:\a\1\s\src\NzbDrone.Common\Http\HttpClient.cs:line 170
at NzbDrone.Common.Http.HttpClient.ExecuteAsync(HttpRequest request) in D:\a\1\s\src\NzbDrone.Common\Http\HttpClient.cs:line 70
at NzbDrone.Common.Http.HttpClient.Execute(HttpRequest request) in D:\a\1\s\src\NzbDrone.Common\Http\HttpClient.cs:line 136
at NzbDrone.Core.Applications.Sonarr.SonarrV3Proxy.Execute[TResource](HttpRequest request) in D:\a\1\s\src\NzbDrone.Core\Applications\Sonarr\SonarrV3Proxy.cs:line 162
at NzbDrone.Core.Applications.Sonarr.SonarrV3Proxy.GetIndexerSchema(SonarrSettings settings) in D:\a\1\s\src\NzbDrone.Core\Applications\Sonarr\SonarrV3Proxy.cs:line 74
at NzbDrone.Core.Applications.Sonarr.Sonarr.<BuildSonarrIndexer>b__11_0() in D:\a\1\s\src\NzbDrone.Core\Applications\Sonarr\Sonarr.cs:line 161
at NzbDrone.Common.Cache.Cached`1.Get(String key, Func`1 function, Nullable`1 lifeTime) in D:\a\1\s\src\NzbDrone.Common\Cache\Cached.cs:line 114
at NzbDrone.Core.Applications.Sonarr.Sonarr.BuildSonarrIndexer(IndexerDefinition indexer, DownloadProtocol protocol, Int32 id) in D:\a\1\s\src\NzbDrone.Core\Applications\Sonarr\Sonarr.cs:line 161
at NzbDrone.Core.Applications.Sonarr.Sonarr.Test() in D:\a\1\s\src\NzbDrone.Core\Applications\Sonarr\Sonarr.cs:line 50
at NzbDrone.Core.ThingiProvider.ProviderFactory`2.Test(TProviderDefinition definition) in D:\a\1\s\src\NzbDrone.Core\ThingiProvider\ProviderFactory.cs:line 81
at NzbDrone.Core.Applications.ApplicationFactory.Test(ApplicationDefinition definition) in D:\a\1\s\src\NzbDrone.Core\Applications\ApplicationFactory.cs:line 64
at Prowlarr.Api.V1.ProviderControllerBase`3.Test(TProviderDefinition definition, Boolean includeWarnings) in D:\a\1\s\src\Prowlarr.Api.V1\ProviderControllerBase.cs:line 193
at Prowlarr.Api.V1.ProviderControllerBase`3.Test(TProviderResource providerResource) in D:\a\1\s\src\Prowlarr.Api.V1\ProviderControllerBase.cs:line 144
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.SyncObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeActionMethodAsync()
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeNextActionFilterAsync()
--- End of stack trace from previous location ---
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()
--- End of stack trace from previous location ---
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
at Prowlarr.Http.Middleware.BufferingMiddleware.InvokeAsync(HttpContext context) in D:\a\1\s\src\Prowlarr.Http\Middleware\BufferingMiddleware.cs:line 28
at Prowlarr.Http.Middleware.IfModifiedMiddleware.InvokeAsync(HttpContext context) in D:\a\1\s\src\Prowlarr.Http\Middleware\IfModifiedMiddleware.cs:line 41
at Prowlarr.Http.Middleware.CacheHeaderMiddleware.InvokeAsync(HttpContext context) in D:\a\1\s\src\Prowlarr.Http\Middleware\CacheHeaderMiddleware.cs:line 33
at Prowlarr.Http.Middleware.UrlBaseMiddleware.InvokeAsync(HttpContext context) in D:\a\1\s\src\Prowlarr.Http\Middleware\UrlBaseMiddleware.cs:line 27
at Prowlarr.Http.Middleware.VersionMiddleware.InvokeAsync(HttpContext context) in D:\a\1\s\src\Prowlarr.Http\Middleware\VersionMiddleware.cs:line 28
at Microsoft.AspNetCore.ResponseCompression.ResponseCompressionMiddleware.InvokeCore(HttpContext context)
at Microsoft.AspNetCore.Authorization.Policy.AuthorizationMiddlewareResultHandler.HandleAsync(RequestDelegate next, HttpContext context, AuthorizationPolicy policy, PolicyAuthorizationResult authorizeResult)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.<Invoke>g__Awaited|6_0(ExceptionHandlerMiddleware middleware, HttpContext context, Task task)

If anyone has any guidance, I'd really appreciate it. It just feels like I'm missing something fundamental.

Thanks in advance!
 
Joined
Jan 7, 2015
Messages
1,155
If anyone has any guidance, I'd really appreciate it. It just feels like I'm missing something fundamental.
Your life would be so much easier if you put all these "similar" software in the same jail manually. For instance prowlarr sonarr radarr plex in one jail. Then put your torrent and vpn in another. The more jails the more complex and you'll only invite lots of permissions issues.

But to get down to it, your using localhost in the addresses where you should be using the jail/plugin IP 192.168.68.?. I know from the log its looking at 192.168.68.4 which i assume is the prowlarr jail. Its not going to find sonarr there.
 

ShameSpear

Dabbler
Joined
Nov 30, 2022
Messages
14
One jail! I didn't even know that was an option!! Let me Google-Fu my way through that and I'll report back
 
Joined
Jan 7, 2015
Messages
1,155
Yep people get a habit of using plugins for every piece of software. Its unnecessary. They are all usually pretty out of date too as youve highlighted in your op.

Lmk if you need any further help. Heres a good post ive oft referred people to in the past. While written for an older version of FreeNAS its basically unchanged and gives you the gist of essentially what youll be doing. I am not the author.
 

ShameSpear

Dabbler
Joined
Nov 30, 2022
Messages
14
If anyone else hits this thread confused, I followed Johns advice and everything works great! I used Blackbeards youtube tutorial, I find following along easier with video.

Good luck and thanks John!
 
Joined
Jan 7, 2015
Messages
1,155
My pleasure welcome to truenas.
 
Top