Managed MySQL Server Discovery (Linux)

Microsoft.MySQLServer.ManagedServer.Discovery.Unix (Discovery)

Discovers managed instances of a MySQL Server. A managed instance of MySQL Server is an instance that can be contacted through the CIM Provider

Knowledge Base article:

Summary

This discovery rule discovers MySQL Servers with both the MySQL CIM provider installed, and the MySQL Server credentials set. These discovered instances will be monitored automatically.

Element properties:

TargetMicrosoft.Unix.Computer
EnabledTrue
RemotableFalse

Object Discovery Details:

Discovered Classes and their attribuets:

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Unix.WSMan.TimedEnumerate.Filtered.ContainSubstring.DiscoveryData Default

Source Code:

<Discovery ID="Microsoft.MySQLServer.ManagedServer.Discovery.Unix" Target="Unix!Microsoft.Unix.Computer" Enabled="true" Remotable="true">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="Microsoft.MySQLServer.ManagedServer.Unix"/>
</DiscoveryTypes>
<DataSource ID="DS" TypeID="Unix!Microsoft.Unix.WSMan.TimedEnumerate.Filtered.ContainSubstring.DiscoveryData">
<TargetSystem>$Target/Property[Type="Unix!Microsoft.Unix.Computer"]/NetworkName$</TargetSystem>
<Uri>http://schemas.microsoft.com/wbem/wscim/1/cim-schema/2/MySQL_Server?__cimnamespace=root/mysql</Uri>
<Filter/>
<SplitItems>true</SplitItems>
<Interval>14400</Interval>
<SyncTime/>
<FilterProperty>/DataItem/WsManData/*[local-name(.)='MySQL_Server']/*[local-name(.)='DataDirectory']</FilterProperty>
<FilterValue>/</FilterValue>
<ClassId>$MPElement[Name="Microsoft.MySQLServer.ManagedServer.Unix"]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name="Unix!Microsoft.Unix.Computer"]/PrincipalName$</Name>
<Value>$Target/Property[Type="Unix!Microsoft.Unix.Computer"]/PrincipalName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.MySQLServer.Installation"]/DataDirectory$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server']/*[local-name(.)='DataDirectory']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.MySQLServer.Installation"]/Version$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server']/*[local-name(.)='ProductVersion']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.MySQLServer.Installation"]/InstanceID$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server']/*[local-name(.)='ProductIdentifyingNumber']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.MySQLServer.Installation"]/ConfigurationFile$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server']/*[local-name(.)='ConfigurationFile']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.MySQLServer.Installation"]/ErrorLogFile$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server']/*[local-name(.)='ErrorLogFile']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.MySQLServer.Installation"]/BindAddress$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server']/*[local-name(.)='BindAddress']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.MySQLServer.Installation"]/Port$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server']/*[local-name(.)='Port']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.MySQLServer.Installation"]/SocketFile$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server']/*[local-name(.)='SocketFile']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="System!System.Entity"]/DisplayName$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server']/*[local-name(.)='ProductIdentifyingNumber']$</Value>
</Setting>
</Settings>
</InstanceSettings>
</DataSource>
</Discovery>