@zchel Дим, привет. Периодически возникает такая проблема, что при удалении SQL Server DB Engine с сервера правило обнаружения не удаляет инстансы из SCOM, в результате чего возникают следующие события:
Management Group: "MG_PROD"
Module: Microsoft.SQLServer.Windows.Module.Discovery.Discoveries.LocalDBEngineDiscovery
Version:
7.0.24.0Error(s) was(were) occurred:
Message: An error occurred during discovery.
---------- Exception: ----------
Exception Type: System.Exception
Message: Unable to execute query 'SELECT ServiceName, PropertyName, PropertyNumValue, PropertyStrValue FROM SqlServiceAdvancedProperty WHERE (PropertyName = 'ISWOW64' OR PropertyName = 'LANGUAGE' OR PropertyName = 'INSTANCEID' OR PropertyName = 'SPLEVEL' OR PropertyName = 'INSTALLPATH' OR PropertyName = 'ERRORREPORTING') AND SqlServiceType = 1' for the path '\\hostname.domain.local\root\Microsoft\SqlServer\ComputerManagement11'. 32 bit: False. Error persisted after 3 tries. Error message:
Source: Microsoft.SQLServer.Module4.Helper
Stack Trace:
at Microsoft.SQLServer.Module.Helper.WMI.RetryPolicyWmiHelper.Query(String queryString)
at Microsoft.SQLServer.Module.Helper.Sql.SqlAdvancedPropertiesWmiHelper..ctor(IWmiHelper wmiHelper, SqlAdvancedProperty[] advancedProperties, String selectedInstance)
at Microsoft.SQLServer.Windows.Module.Discovery.Discoveries.LocalDBEngineDiscovery.FillListsOfClassesAndRelations(DataItemBase[] inputDataItems, CancellationToken token, ConcurrentBag`1 discoveredObjects, ConcurrentBag`1 discoveredRelations)
at Microsoft.SQLServer.Module.Helper.Base.DataItemHelper.<>c_DisplayClass2_1`1.<GetModuleDataWithTimeout>b_1()
at System.Threading.Tasks.Task`1.InnerInvoke()
at System.Threading.Tasks.Task.Execute()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SQLServer.Module.Helper.Helpers.AsyncHelper.<ExecuteAsync>d__0`1.MoveNext()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SQLServer.Module.Helper.Base.DataItemHelper.<>c_DisplayClass2_0`1.<<GetModuleDataWithTimeout>b_0>d.MoveNext()
— End of stack trace from previous location where exception was thrown —
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SQLServer.Module.Helper.Base.DataItemHelper.<GetDiscoveryDataAsyncStatic>d__6.MoveNext()
---------- Inner Exception: ----------
Exception Type: System.IO.FileNotFoundException
Message:
Source: WinMgmt
Stack Trace:
at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
at System.Management.ManagementObjectSearcher.Get()
at Microsoft.SQLServer.Module.Helper.WMI.WmiHelper.Query(String queryString)
at Microsoft.SQLServer.Module.Helper.WMI.CachedWmiHelper.Query(String queryString)
at Microsoft.SQLServer.Module.Helper.WMI.RetryPolicyWmiHelper.Query(String queryString)
.... Тут еще куча текста, не помещается.