We have asp.net core based docker containers trying to connect to MongoDB atlas with the C# driver version 2.4.3.
The connection is working fine for when we run it outside the container. i.e. directly from kestrel. But when the same code is run from within a container, the connection to mongodb atlas times out.
Details:
MongoDB C# Driver version: 2.4.3
Connection String:
mongodb://sa:#cluster0-shard-00-00-po5vp.mongodb.net:27017,cluster0-shard-00-01-po5vp.mongodb.net:27017,cluster0-shard-00-02-po5vp.mongodb.net:27017/admin?ssl=true&replicaSet=Cluster0-shard-0&authSource=admin
Database to be accessed: Configurations
ASP.net Core version: 1.1
BaseImage in Dockerfile: microsoft/aspnetcore-build
Dockerfile contents:
FROM microsoft/aspnetcore-build
WORKDIR /SaaS_Configuration_Microservice
COPY ./SaaS_Configuration_Microservice .
EXPOSE 80
RUN dotnet restore
RUN dotnet publish -c Release -o PublishOutput
ENTRYPOINT ["dotnet", "PublishOutput/SaaS_Configuration_Microservice.dll"]
We are running kestrel in Windows 10.
Complete Error Message:
ex.Message "A timeout occured after 30000ms selecting a server using CompositeServerSelector{ Selectors = ReadPreferenceServerSelector{ ReadPreference = { Mode : Primary } }, LatencyLimitingServerSelector{ AllowedLatencyRange = 00:00:00.0150000 } }. Client view of cluster state is { ClusterId : \"1\", ConnectionMode : \"ReplicaSet\", Type : \"ReplicaSet\", State : \"Disconnected\", Servers : [{ ServerId: \"{ ClusterId : 1, EndPoint : \"Unspecified/cluster0-shard-00-00-po5vp.mongodb.net:27017\" }\", EndPoint: \"Unspecified/cluster0-shard-00-00-po5vp.mongodb.net:27017\", State: \"Disconnected\", Type: \"Unknown\", HeartbeatException: \"MongoDB.Driver.MongoConnectionException: An exception occurred while opening a connection to the server. ---> MongoDB.Driver.MongoCommandException: Command failed.\n at MongoDB.Driver.Core.WireProtocol.CommandWireProtocol1.ProcessReply(ConnectionId connectionId, ReplyMessage1 reply)\n at MongoDB.Driver.Core.WireProtocol.CommandWireProtocol1.<ExecuteAsync>d__11.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n at MongoDB.Driver.Core.Connections.ConnectionInitializer.<InitializeConnectionAsync>d__3.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n at MongoDB.Driver.Core.Connections.BinaryConnection.<OpenHelperAsync>d__48.MoveNext()\n --- End of inner exception stack trace ---\n at MongoDB.Driver.Core.Connections.BinaryConnection.<OpenHelperAsync>d__48.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n at MongoDB.Driver.Core.Servers.ServerMonitor.<HeartbeatAsync>d__27.MoveNext()\" }, { ServerId: \"{ ClusterId : 1, EndPoint : \"Unspecified/cluster0-shard-00-01-po5vp.mongodb.net:27017\" }\", EndPoint: \"Unspecified/cluster0-shard-00-01-po5vp.mongodb.net:27017\", State: \"Disconnected\", Type: \"Unknown\", HeartbeatException: \"MongoDB.Driver.MongoConnectionException: An exception occurred while opening a connection to the server. ---> MongoDB.Driver.MongoCommandException: Command failed.\n at MongoDB.Driver.Core.WireProtocol.CommandWireProtocol1.ProcessReply(ConnectionId connectionId, ReplyMessage1 reply)\n at MongoDB.Driver.Core.WireProtocol.CommandWireProtocol1.d__11.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n at MongoDB.Driver.Core.Connections.ConnectionInitializer.d__3.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n at MongoDB.Driver.Core.Connections.BinaryConnection.d__48.MoveNext()\n --- End of inner exception stack trace ---\n at MongoDB.Driver.Core.Connections.BinaryConnection.d__48.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n at MongoDB.Driver.Core.Servers.ServerMonitor.d__27.MoveNext()\" }, { ServerId: \"{ ClusterId : 1, EndPoint : \"Unspecified/cluster0-shard-00-02-po5vp.mongodb.net:27017\" }\", EndPoint: \"Unspecified/cluster0-shard-00-02-po5vp.mongodb.net:27017\", State: \"Disconnected\", Type: \"Unknown\", HeartbeatException: \"MongoDB.Driver.MongoConnectionException: An exception occurred while opening a connection to the server. ---> MongoDB.Driver.MongoCommandException: Command failed.\n at MongoDB.Driver.Core.WireProtocol.CommandWireProtocol1.ProcessReply(ConnectionId connectionId, ReplyMessage1 reply)\n at MongoDB.Driver.Core.WireProtocol.CommandWireProtocol`1.d__11.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n at MongoDB.Driver.Core.Connections.ConnectionInitializer.d__3.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n at MongoDB.Driver.Core.Connections.BinaryConnection.d__48.MoveNext()\n --- End of inner exception stack trace ---\n at MongoDB.Driver.Core.Connections.BinaryConnection.d__48.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\n at MongoDB.Driver.Core.Servers.ServerMonitor.d__27.MoveNext()\" }] }." string
Inner exception: null
"microsoft/aspnetcore-build" is a Linux image and there is a bug:
https://docs.atlas.mongodb.com/driver-connection/#c-net-driver-example
IMPORTANT The .NET Core library does not support the SNI TLS extension
on Linux and OSX. Applications using .NET Core on these operating
systems cannot connect to a Atlas Free Tier cluster.
The issue is tracked on the dotnet/corefx github page.
I see log below in my symfony project sometimes and I cannot find out from where I get this log and how to reproduce it:
request.CRITICAL: Uncaught PHP Exception UnexpectedValueException: "Invalid Host "<img src="" onerror="alert(document.cookie)">"" at /app/bootstrap.php.cache line 933 {"exception":"[object] (UnexpectedValueException(code: 0): Invalid Host \"<img src=\"\" onerror=\"alert(document.cookie)\">\" at /app/bootstrap.php.cache:933, UnexpectedValueException(code: 0): Invalid Host \"<img src=\"\" onerror=\"alert(document.cookie)\">\" at /app/bootstrap.php.cache:933)"} []
request.CRITICAL: Exception thrown when handling an exception (UnexpectedValueException: Invalid Host "<img src="" onerror="alert(document.cookie)">" at /app/bootstrap.php.cache line 933) {"exception":"[object] (UnexpectedValueException(code: 0): Invalid Host \"<img src=\"\" onerror=\"alert(document.cookie)\">\" at /app/bootstrap.php.cache:933)"} []
How can I reproduce this log? and is it something I should be worry about?
I'm using crank to load test my signalr application. The command that I'm using is as follows
crank /NumClients:100 /Url:http://localhost:29573/TestConnection /BatchSize:10
I'm getting an exception in my powershell window as follows...
Unhandled Exception: System.AggregateException: One or more errors occurred. ---> System.NullReferenceException: Object
reference not set to an instance of an object.
at Microsoft.AspNet.SignalR.Client.HubConnection.GetUrl(String url, Boolean useDefaultUrl) in c:\Users\t-niraj\Deskto
p\SignalR-master\src\Microsoft.AspNet.SignalR.Client\HubConnection.cs:line 216
at Microsoft.AspNet.SignalR.Client.HubConnection..ctor(String url, Boolean useDefaultUrl) in c:\Users\t-niraj\Desktop
\SignalR-master\src\Microsoft.AspNet.SignalR.Client\HubConnection.cs:line 38
at Microsoft.AspNet.SignalR.Client.HubConnection..ctor(String url) in c:\Users\t-niraj\Desktop\SignalR-master\src\Mic
rosoft.AspNet.SignalR.Client\HubConnection.cs:line 28
at Microsoft.AspNet.SignalR.Crank.Client.<OpenControllerConnection>d__6.MoveNext() in c:\Users\t-niraj\Desktop\Signal
R-master\src\Microsoft.AspNet.SignalR.Crank\Client.cs:line 71
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.AspNet.SignalR.Crank.Client.<Run>d__0.MoveNext() in c:\Users\t-niraj\Desktop\SignalR-master\src\Microsof
t.AspNet.SignalR.Crank\Client.cs:line 43
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
at System.Threading.Tasks.Task.Wait()
at Microsoft.AspNet.SignalR.Crank.Client.Main() in c:\Users\t-niraj\Desktop\SignalR-master\src\Microsoft.AspNet.Signa
lR.Crank\Client.cs:line 34
I do have the sample application: SignalR.LoadTestHarness running at localhost:29573. This is the same application that is found in the SignalR source code samples.
What am I doing wrong?
You did not provide the ControllerUrl parameter and as a result crank is trying to create a hub connection with null Url which results in throwing a NullReferenceException on this line.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: XSockets.Plugin.Framework.Exceptions.ExportException: Tipo de excepção 'XSockets.Plugin.Framework.Exceptions.ExportException' accionado.
Source Error:
Line 11: public static void Start()
Line 12: {
Line 13: wss = XSockets.Plugin.Framework.Composable.GetExport<IXSocketServerContainer>();
Line 14: wss.StartServers();
Line 15: }
What could this blank error message mean? I get it randomly in my LOGS. I am using non-cookie sessions. it occurs randomly in all aspx files..
code handler outputs:
objErr = Server.GetLastError().GetBaseException()
Server.ClearError()
Error Message: & objErr.Message.ToString())
Stack Trace: & objErr.StackTrace.ToString())
output
Error Message:
Stack Trace:
at System.Web.CachedPathData.GetConfigPathData(String configPath) at
System.Web.CachedPathData.GetVirtualPathData(VirtualPath virtualPath, Boolean
permitPathsOutsideApp) at System.Web.HttpContext.GetFilePathData() at
System.Web.HttpContext.GetConfigurationPathData() at
System.Web.HttpContext.get_ImpersonationToken() at
System.Web.ClientImpersonationContext.Start(HttpContext context, Boolean throwOnError) at
System.Web.HttpApplication.ThreadContext.Enter(Boolean setImpersonationContext) at
System.Web.HttpApplication.OnThreadEnterPrivate(Boolean setImpersonationContext) at
System.Web.HttpApplication.ApplicationStepManager.ResumeSteps(Exception error)
Is this an inner exception that you are seeing?
regarding ToString():
If there is no error message or if it is an empty string (""), then no error message is returned. The name of the inner exception and the stack trace are returned only if they are not a null reference
Here's a link