This article give you information to use the DMCTL program
SMARTS - 10.1.X
To use the DMCTL program please use the following steps below to log in and the table as a guide to the commands.
The basic command and information about these commands can be found in the table below. Anything between a set of square brackets ([,]) is considered an optional parameter.
DMCTL Command | Description |
get <class>::<instance>[::<property>] |
This command gets the properties of the class instance that is specified. The get command also retrieves just the value of the property that is specified in the optional segment of the command. Example: get ICS_Notification:: NOTIFICATION-Host_<Sample IP Address>_DiscoveryError get ICS_Notification:: NOTIFICATION-Host_<Sample IP Address>_DiscoveryError::CausedBy IP get Host::<Sample IP Address> get Host:<Sample IP Address>::InstrumentedBy |
getClasses getclasses |
This command lists all of the different Classes in the domain that are viewable in the domain manager control program (dmctl). |
getInstances [<class>] getI [<class>] geti [<class>] |
This command will list all of the instances of the different classes viewable in the SAM topology, but not the instances of all classes. If a class is provided it will list the instances of that specific class only. For example, if a getI is executed in the SAM all the instances of the classes that can be seen in the topology will be listed but instance of classes such as ICS_Notification will not be listed. |
getProperties <class> | This command will list the different properties/attributes of a class and the corresponding data types associated with the property/attribute. |
getOperations <class> getoperations <class> |
This command will list the different operations that can be called an instance when issuing an invoke command. The output of this command will be a list of operations. Operations can have parameters that are required in order to execute. Each operation will be preceded by the data type of the return value between a < >. |
invoke <class>::<instance> <op> [<arg1> ] | This command is used to run the operations listed in getOperations. There can be multiple arguments for the operations (<arg1> ...). Where <op> is one of the operations from the getOperations command. |
insert <class>::<instance>::<property> <value> |
This command allows you to set the values of relationship set type properties. Some properties cannot be modified by this command. The only way to find which properties can be updated via insert is by trial and error. Example: Using the following commands the router router.example.com can be modified in the Smarts IP domain. insert Router::router.example.com::VirtualHostsAccessPoints IP::IP-<Sample IP Address> insert Router::router.example.com::VirtualHostsAccessPoints IP::IP-<Sample IP Address>
get Router::router.example.com::VirtualHostsAccessPoints The output will look like: { IP::IP-<Sample IP Address> IP::IP-<Sample IP Address> } |
findInstances <class-regexp>::<instance-regexp> findinstances <class-regexp>::<instance-regexp> |
This command can be used in conjunction with regular expressions to find the particular instance of an object. Example: findInstance .*out.*::.*xamp.* This will give you the result: Router::router.example.com |
put <class>::<instance>::<property> <value1> [<value2> ...] |
The put command is used to set the values of a property. Unlike the insert command the put command operates on all data value types except relationship set data types, while the insert command works only on relationship set data types. The put command also has no means of deleting a value from a property. Instead to change a value you just overwrite it with a new value. Example: Set the service name on a router put Router::router.example.com::ServiceName FakeServiceName
put Router::router.example.com::ServiceName FakeServiceName '' |
remove <class>::<instance>::<property> <value> | This command is the opposite of the insert command. It is used to remove data from a relationship set. It follows the exact pattern as the insert command. |