locked
Cognitive Services CustomVision SDK RRS feed

  • Question

  • I have an MVC ASP.NET website with multiple projects. In a separate project, to the web project, I have a service which is using the SDK Microsoft.Cognitive.CustomVision.Training version 1.2.0 https://www.nuget.org/packages/Microsoft.Cognitive.CustomVision.Training/1.2.0.

    I initiate the Training API object like this:

    new TrainingApi { ApiKey = <my API Key> }

    The code above is called from an action call in one of my controllers.

    In another project I have an Azure WebJob. When I deploy the above code to Azure the WebJob fails to run with the following error:

    Microsoft.Azure.WebJobs.Host.FunctionInvocationException: Exception while executing function: Functions.ProcessQueueMessage ---> System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a send. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host

       at System.Net.Sockets.Socket.EndReceive(IAsyncResult asyncResult)

       at System.Net.Sockets.NetworkStream.EndRead(IAsyncResult asyncResult)

       --- End of inner exception stack trace ---

       at System.Net.TlsStream.EndWrite(IAsyncResult asyncResult)

       at System.Net.PooledStream.EndWrite(IAsyncResult asyncResult)

       at System.Net.ConnectStream.WriteHeadersCallback(IAsyncResult ar)

       --- End of inner exception stack trace ---

       at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)

       at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)

       --- End of inner exception stack trace ---

       at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)

       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

       at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()

       at PayCompliment.Service.Utilities.Progress.<CommunicateProgressAsync>d__2.MoveNext() in D:\home\site\repository\PayCompliment.Service\Utilities\Progress.cs:line 43

    --- 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 System.Runtime.CompilerServices.TaskAwaiter.GetResult()

       at PayCompliment.WebJobs.Functions.<ProcessQueueMessage>d__2.MoveNext()

    --- 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.Azure.WebJobs.Host.Executors.FunctionInvoker`1.<InvokeAsync>d__8.MoveNext()

    --- 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.Azure.WebJobs.Host.Executors.FunctionExecutor.<InvokeAsync>d__22.MoveNext()

    --- 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 System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)

       at Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.<ExecuteWithWatchersAsync>d__21.MoveNext()

    --- 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.Azure.WebJobs.Host.Executors.FunctionExecutor.<ExecuteWithLoggingAsync>d__19.MoveNext()

    --- 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 System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)

       at Microsoft.Azure.WebJobs.Host.Executors.FunctionExecutor.<ExecuteWithLoggingAsync>d__13.MoveNext()

       --- End of inner exception stack trace ---

    This error occurs even though the WebJob is not using the Training API. When I remove the code

    new TrainingApi { ApiKey = <my API Key> }

    it works just fine.

    I’m a bit puzzled of why this happens and not sure where to debug.

    Monday, August 6, 2018 10:25 AM

All replies

  • Please post questions related to this SDK in their GitHub rep. This forum is for C#-specific questions.

    Michael Taylor http://www.michaeltaylorp3.net

    Monday, August 6, 2018 2:31 PM