Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UI pages cause SCOM Console to close with unhandled exception (crash) #2

Open
ChrisHeitkamp opened this issue Oct 24, 2017 · 9 comments
Assignees
Labels

Comments

@ChrisHeitkamp
Copy link

ChrisHeitkamp commented Oct 24, 2017

Symptom:

Open the "Discover Community Packs" view causes the SCOM Console to crash with an unhanded exception.

Description:

Before the crash a pop up screen shows up with:
"An error occurred while sending the request"
The crash is reproducible.

Crash details are given below.
Note that the Console on this machine does not have internet access, hence a prerequisite is not met. Still the console crashing is kind of unexpected...

SCOM Version: 2012 R2, UR12
MP Version: 1.0.2.0

Exception Details:

just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.AggregateException: One or more errors occurred. ---> System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: The remote name could not be resolved: 'www.mpcatalog.net'
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.TaskAwaiter1.GetResult() at Community.ManagementPackCatalog.UI.Models.GitHubRepository.<PopulateClassFieldsFromResources>d__11.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.GetResult() at Community.ManagementPackCatalog.UI.Models.GitHubRepository.<PopulateDataFromRepository>d__9.MoveNext() --- End of inner exception stack trace --- at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions) at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken) at System.Threading.Tasks.Task.Wait() at Community.ManagementPackCatalog.UI.DiscoverCatalogPacks.PopulateCommunityManagementPackListFromGitHub(GitHubPackDetail[] packsToDisplay) at Community.ManagementPackCatalog.UI.DiscoverCatalogPacks..ctor() --- End of inner exception stack trace --- at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck) at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark& stackMark) at System.Activator.CreateInstance(Type type, Boolean nonPublic) at System.Activator.CreateInstance(Type type) at Microsoft.EnterpriseManagement.ConsoleFramework.Wpf.GenericWpfViewConstructor.CreateView(Object parent, Type viewType, IViewParameters viewParameters) at Microsoft.EnterpriseManagement.ConsoleFramework.ViewConstructor.BeginShow(ShowViewContext showViewContext, AsyncCallback callback, Object state) at Microsoft.EnterpriseManagement.ConsoleFramework.Wpf.GenericWpfViewConstructor.CreateNonRecyclableView(ShowViewContext showViewContext) at Microsoft.EnterpriseManagement.ConsoleFramework.Wpf.GenericWpfViewConstructor.CreateAndShowViewCore(ShowViewContext showViewContext) at Microsoft.EnterpriseManagement.ConsoleFramework.Wpf.GenericWpfViewConstructor.ShowViewOperation.Begin(ShowViewContext showViewContext) at Microsoft.EnterpriseManagement.ConsoleFramework.Wpf.GenericWpfViewConstructor.BeginShow(ShowViewContext showViewContext, AsyncCallback callback, Object state) at Microsoft.EnterpriseManagement.ConsoleFramework.Wpf.ConsoleViewDisplayService.OpenViewJob(Object sender, ConsoleJobEventArgs args) at Microsoft.EnterpriseManagement.Mom.Internal.UI.Console.ConsoleJobExceptionHandler.ExecuteJob(IComponent component, EventHandler1 job, Object sender, ConsoleJobEventArgs args)
at Microsoft.EnterpriseManagement.ConsoleFramework.ConsoleJobsService.RunJob(ConsoleJobDescription jobDescription)
at Microsoft.EnterpriseManagement.ConsoleFramework.WindowJobsService.RunJob(ConsoleJobDescription jobDescription)
at Microsoft.EnterpriseManagement.ConsoleFramework.WindowJobsService.RunJob(IComponent jobOwner, EventHandler1 jobMethod, EventHandler1 errorHandler, Object[] arguments)
at Microsoft.EnterpriseManagement.ConsoleFramework.WindowJobsService.RunJob(IComponent jobOwner, EventHandler1 jobMethod, Object[] arguments) at Microsoft.EnterpriseManagement.ConsoleFramework.WindowJobsService.RunJob(EventHandler1 jobMethod, Object[] arguments)
at Microsoft.EnterpriseManagement.ConsoleFramework.Wpf.ConsoleViewDisplayService.OpenView(String assemblyName, String typeName, String target, String item, String criteria, Object[] arguments)
at Microsoft.EnterpriseManagement.Monitoring.Console.Common.ConsoleDisplayWrapper.OpenView(String assemblyName, String typeName, String target, String item, String criteria, Object[] arguments)
at Microsoft.EnterpriseManagement.Mom.Internal.UI.Console.MomViewsDisplay.OpenMomView(IComponent component, ManagementPackView view, String target, String item)
at Microsoft.EnterpriseManagement.Mom.Internal.UI.Administration.AdminTreeView.LaunchView(AdminTreeDataNode viewNode)
at Microsoft.EnterpriseManagement.Mom.Internal.UI.Administration.AdminTreeView.HandleNodeSelected(Object sender, TreeViewEventArgs e)
at System.Windows.Forms.TreeView.OnAfterSelect(TreeViewEventArgs e)
at System.Windows.Forms.TreeView.TvnSelected(NMTREEVIEW* nmtv)
at System.Windows.Forms.TreeView.WmNotify(Message& m)
at System.Windows.Forms.TreeView.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

....
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

@clarkd
Copy link

clarkd commented Oct 24, 2017

It looks like your SCOM server is struggling to access/resolve www.mpcatalog.net - do you have a firewall in place?

Are you able to browse to www.mpcatalog.net/CatalogRepo from your SCOM server? It should forward you to a GitHub page which will display an error but you should see the URL change.

@P2P-Nathan
Copy link
Member

@ChrisHeitkamp , sorry for the delay on getting this fix in place. A new build (detailed below) has been created that has more robust error handling, it should much more gracefully handle the lack of an internet connection. Links to the beta version of the build are at the bottom of the comment.

The test build has been created that allows for the setting of a proxy via 3 registry keys. Additionally it allows for a direct URL to be used for connection to GitHub, without the use of the MPCatalog.net redirect.

The keys can be seen in my branch at: https://github.com/MPCatalog/scom-community-catalog-ui/blob/work/1.0.2.x-bug-fixes/Community.ManagementPackCatalog.UI/Models/GitHubRepository.cs#L114

Proxy configuration has a key for each of the following:

  • proxyAddress
  • proxyUserName
  • proxyPassword

Repo URL configuration has a single key of:

  • GitHubRepoBase

The updated version of the pack can be found here:
Community.ManagementPackCatalog.zip

Both registry configuration examples are available here:
Registry Key Configurations.zip

@P2P-Nathan
Copy link
Member

The beta release for this build is at the below url, the testing I have performed has passed, but I do not have an actual proxy environment and am unable to do a full functionality test.

1.0.2.0 beta release

@Juanito99
Copy link

hi,

tested with 1.0.2.1 - no success.
image

Same error as before. - No Exception, console keeps functioning.

This is my registry setting. - Correct?
image

Ruben

@P2P-Nathan
Copy link
Member

P2P-Nathan commented Nov 29, 2017 via email

@Juanito99
Copy link

Juanito99 commented Nov 30, 2017 via email

@P2P-Nathan
Copy link
Member

P2P-Nathan commented Nov 30, 2017 via email

@Juanito99
Copy link

Sure, no problem. - Have a good rest :-)

@ronaldbckl
Copy link

Just i tip for others. I just found out i had the same errors while the sites mentioned are reachable.
It turned out that this pack will not work if you run your scom console from a non-managementserver. From a managementserver it works ok.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants