Visual Studio Authoring Extensions - Advanced Templates
The procedure for adding advanced templates is different than for adding simple templates. Select Add → New Item as you would for any of the simple templates, and in the New Item dialog box, select one of the items from the Templates group. Instead of an XML code window like the simple item templates generate, instead you’ll see the Template Group Editor in the main window. This editor shows a list of items in the template group, with the headers ID, Display Name, and Type. When the template group is first created, the Template Group Editor will show just one item in the list, of the type that you selected in the Add New Item dialog box.
Unlike the simple item templates, you don’t edit the modules directly. Instead, you select a template in the template group list, and then you edit edit its properties in the Properties window. When you use the Properties window, you don’t edit the XML directly, although you may launch a dedicated editor for some properties. After you save the item in the template group, you can then edit the XML directly if you want to by selecting the .mpx file in the Solution Explorer, but all properties and configuration are available from the Properties window.
The following are the currently available advanced templates:
- Agent Task (Custom)
- Agent Task (PowerShell)
- Agent Task (Windows)
- Discovery
- Monitor (Aggregate)
- Monitor (Dependency)
- Monitor (Unit)
- Rule (Alert)
- Rule (Custom)
- Rule (Event Collection)
- Rule (Performance Collection)
- View (Custom)
Select the item you want to create, and click OK. That new template appears in the list, and its properties appear in the Properties window.
Some properties are the same for most or all of the advanced templates, specifically the “Advanced” category, so they’ll be covered here, rather than repeated:
- Confirm Delivery: Possible values are True and False.
- Priority: Possible values are Low, Normal, and High.
- Remotable: Possible values are true and false.
Agent Task (Custom)
The agent task template is used for agent tasks that do not involve a PowerShell or Windows script, but instead use specific probe action and write action modules.
The only Advanced parameters for this template are the Remotable property (set to True by default) and a Timeout, which indicates how long (in seconds) the script may run before it is terminated.
The General section contains a number of basic properties:
Property | Definition |
Accessibility |
Indicates whether this task is internal or public; the default is Internal. |
Category |
Select the category for this task from the available options; the default is Maintenance. |
Comment |
A descriptive comment about the task; this text does not appear in the Operations console. |
Description |
A descriptive comment about the task; this text does appear in the Operations console. |
Display Name |
The name used for this task in the Operations Console |
Enabled |
Indicates whether the task is enabled by default; possible values are True and False |
ID |
The unique identifier for the task. The management pack namespace will be automatically added to the front of the name. |
Target |
The class on which the task should be run. Clicking this option opens a class picker from which you can select available classes. |
The Modules portion of the properties window contains configuration properties for both a probe action module and a write action module, either of which is optional. If you are using a custom module for the probe action or write action, you will need to create it beforehand in a management pack fragment.
If you are using a probe action, it’s important to set the last option in the list (Probe Action Type ID) before setting the others. When you click that row, an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any probe action module defined in the current management pack or any referenced management pack.
Once you have selected the probe action type ID, you can provide any necessary configuration for that probe. Click the Data Source Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the probe action module you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the probe action type.
Of the remaining three probe action elements in the Modules section, only the Probe Action ID is required. This identifier needs to be unique within the discovery, but not within the management pack. The default ID is “PA,” which is normally sufficient. The Probe Action Comment is an optional comment on the probe action; it does not appear in the Operations Console. Use the Probe Action Run As row if you need to run the data source under an account other than the default action account.
The configuration properties for the write action module are similar to those of the probe action module. The only difference is that the write action includes a Write Action Target property. It is recommended that you leave this property unset.
Agent Task (PowerShell Script)
The only Advanced parameter for this template is the Remotable property (set to True by default).
The General section contains a number of basic properties:
Property | Definition |
Accessibility |
Indicates whether this task is internal or public; the default is Internal. |
Category |
Select the category for this task from the available options; the default is Maintenance. |
Comment |
A descriptive comment about the task; this text does not appear in the Operations console. |
Description |
A descriptive comment about the task; this text does appear in the Operations console. |
Display Name |
The name used for this task in the Operations Console |
Enabled |
Indicates whether the task is enabled by default; possible values are True and False |
ID |
The unique identifier for the task. The management pack namespace will be automatically added to the front of the name. |
Target |
The class on which the task should be run. Clicking this option opens a class picker from which you can select available classes. |
The Script portion of the properties window contains configuration properties for the PowerShell script associated with this task. Before you can configure this task, you will need to create the PowerShell script as a resource within this project, or in another management pack that this project has a reference to.
When you click the Script property, an ellipsis (…) button appears. Click that, and a window opens that allows you to select the resource file that contains the PowerShell script.
When you click the Script Parameters row, an ellipsis (…) button appears. Click that, and a Script Parameters Collection Editor window opens. Click the Add button to add a new parameter to the collection. On the right, two rows will appear: Parameter Name and Parameter Value. Enter the name and value for the script parameter in the appropriate rows. You can click Add to add more parameters to the collection if needed.
Use the Script Run As row if you need to run the script under an account other than the default action account.
In the Script Timeout row, enter the amount of time (in seconds) that the script should be allowed to run before it is terminated.
The Snap-Ins row has a collection editor similar to the Script Parameters collection editor. This editor lets you designate the PowerShell snap-ins that will be loaded into the PowerShell session before the script is run. For more information about PowerShell snap-ins, see About Snap-ins.
Agent Task (Windows Script)
The only Advanced parameter for this template is the Remotable property (set to True by default).
The General section contains a number of basic properties:
Property | Definition |
Accessibility |
Indicates whether this task is internal or public; the default is Internal. |
Category |
Select the category for this task from the available options; the default is Maintenance. |
Comment |
A descriptive comment about the task; this text does not appear in the Operations console. |
Description |
A descriptive comment about the task; this text does appear in the Operations console. |
Display Name |
The name used for this task in the Operations Console |
Enabled |
Indicates whether the task is enabled by default; possible values are True and False |
ID |
The unique identifier for the task. The management pack namespace will be automatically added to the front of the name. |
Target |
The class on which the task should be run. Clicking this option opens a class picker from which you can select available classes. |
The Script portion of the properties window contains configuration properties for the Windows script associated with this task. Before you can configure this task, you will need to create the Windows script as a resource within this project, or in another management pack that this project has a reference to.
When you click the Script property, an ellipsis (…) button appears. Click that, and a window opens that allows you to select the resource file that contains the Windows script.
In the Script Arguments row, enter all the arguments that should be passed to the Windows script as a single string.
Use the Script Run As row if you need to run the script under an account other than the default action account.
In the Script Timeout row, enter the amount of time (in seconds) that the script should be allowed to run before it is terminated.
In the Secure Input section, you can specify credentials if you need the task to run under an account other than the Default Action Account. Click the Script Secure Input row, and then click the ellipsis (…) button to open a window listing the available Secure Reference accounts. In the Secure Reference Property row, select the value from the Secure Reference account that you want to pass to the script.
Discovery
The discovery template allows you to set properties related to a discovery.
Advanced section options are as presented above.
In the Discovery Types section, you select the classes and relationships that you want this discovery to discover. When you select the Discovery Classes row, an ellipsis (…) button appears in the right column. Click this button to launch the Discovery Classes Collection editor. Click the Add button to add a new class to the collection. Two configuration options appear on the right side of the editor:
Click the class row, and an ellipsis (…) button will appear in the right column. Click that button to see a list of available classes for discovery. This list is populated with all the classes defined in the current management pack, and any management packs the current MP has references to. Select the desired class and click OK.
The Class Properties row now becomes active. Click that row, and an ellipsis (…) button appears in the right column. When you click that button, you will see a list of properties for the class you’ve selected. The key property for the class is highlighted with a key icon. Check the boxes to indicate the properties that you want to use to define the discovery and click OK. You can add more classes in the Discovery Classes Collection Editor if you want the discovery to collect more than one class. Once that’s done, click OK in the editor.
The Discovery Relationships row acts similarly to the Discovery Classes Row. When you click the ellipsis (…) button in the row, the Discovery Relationships Collection Editor opens. Click Add to add a new relationship collection. In the editor, click the ellipsis (…) button next to the Relationship row to open a picker dialog box that lists all the available relationships in this management pack and referenced management packs. After you’ve selected a relationship, click the ellipsis (…) button in the Relationship Properties row to select the properties for the relationship. If the relationship chosen has no available properties, the list will be empty. Click OK to close the editor.
The General section contains a number of basic properties:
Property | Definition |
Category |
Select the category for this discovery from the available options; the default is Discovery. |
Comment |
A descriptive comment about the discovery; this text does not appear in the Operations console. |
Description |
A descriptive comment about the discovery; this text does appear in the Operations console. |
Display Name |
The name used for this discovery in the Operations Console |
Enabled |
Indicates whether the discovery is enabled by default; possible values are True and False |
ID |
The unique identifier for the discovery. The management pack namespace will be automatically added to the front of the name. |
Target |
The class on which the discovery should be run. Clicking this option opens a class picker from which you can select available classes. |
The Modules section contains settings for the data source for the discovery. If you are using a custom data source, you will need to create it beforehand in a management pack fragment. In this section, it’s important to set the last option in the list (Data Source Type ID) before setting the others. When you click that row, an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any data source defined in the current management pack or any referenced management pack.
Once you have selected the data source type ID, you can provide any necessary configuration for that data source. Click the Data Source Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the data source type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the data source type.
Of the remaining three elements in the Modules section, only the Data Source ID is required. This identifier needs to be unique within the discovery, but not within the management pack. The default ID is “DS,” which is normally sufficient. The Data Source Comment is an optional comment on the data source; it does not appear in the Operations Console. Use the Data Source Run As row if you need to run the data source under an account other than the default action account.
Monitor (Aggregate)
The Monitor (Aggregate) template allows you to configure an aggregate monitor to reflect the health state of a group of other monitors. For more information about aggregate monitors, see Aggregate Monitors.
The Advanced section properties are:
Property | Definition |
Monitor Run As |
If needed, select a SecureReference account from the list. |
Priority |
Possible values are Low, Normal, and High |
Remotable |
Possible values are True and False |
The Aggregate Monitor Section contains properties relating to the monitor’s roll-up behavior. The Health Roll-up Algorithm specifies whether the monitor aggregates in a WorstOf or BestOf configuration. The Parent Monitor ID allows you to select the monitor that this aggregate monitor will roll up to. However, you won’t be able to set this property until you’ve selected a target for the monitor.
The Alert Settings Section contains simple properties related to the monitor’s alerting behavior.
Property | Definition |
Alert Auto Resolve |
Indicates whether the alert is closed automatically if the monitor returns to a healthy state. The default is False. |
Alert Description |
The description of the alert that is provided to the user in the details for the alert. |
Alert Name |
The name of the alert; shown in Operations Console |
Alert On State |
Allows you to specify whether the alert should be generated on a Warning or Error state. The default is None. |
Alert Priority |
Possible values are Low, Normal, or High |
Alert Severity |
Possible values are Information, Warning, Error, and MatchMonitorHealth |
The General section contains a number of basic properties:
Property | Definition |
Accessibility |
Indicates whether this monitor is internal or public; the default is Internal. |
Category |
Select the category for this monitor from the available options; the default is AvailabilityHealth. |
Comment |
A descriptive comment about the monitor; this text does not appear in the Operations console. |
Description |
A descriptive comment about the monitor; this text does appear in the Operations console. |
Display Name |
The name used for this monitor in the Operations Console |
Enabled |
Indicates whether the monitor is enabled by default; possible values are True and False |
ID |
The unique identifier for the monitor. The management pack namespace will be automatically added to the front of the name. |
Target |
The class for which the monitor should be run. Clicking this option opens a class picker from which you can select available classes. This property must be set before you can select a Parent Monitor ID. |
Monitor (Dependency)
The Monitor (Dependency) template allows you to configure two monitors in a dependency relationship. For more information about dependency monitors, see Dependency Monitors.
The Advanced section properties are:
Property | Definition |
Monitor Run As |
If needed, select a SecureReference account from the list. |
Priority |
Possible values are Low, Normal, and High |
Remotable |
Possible values are True and False |
The Alert Settings Section contains simple properties related to the monitor’s alerting behavior.
Property | Definition |
Alert Auto Resolve |
Indicates whether the alert is closed automatically if the monitor returns to a healthy state. The default is False. |
Alert Description |
The description of the alert that is provided to the user in the details for the alert. |
Alert Name |
The name of the alert; shown in Operations Console |
Alert On State |
Allows you to specify whether the alert should be generated on a Warning or Error state. The default is None. |
Alert Priority |
Possible values are Low, Normal, or High |
Alert Severity |
Possible values are Information, Warning, Error, and MatchMonitorHealth |
The Dependency Monitor Section contains properties relating to the monitor’s dependency behavior. However, several of these properties require that the Target property be set in the General section before you can set the properties in the Dependency section, so make sure you set the Target property first.
The Health Roll-up Algorithm row specifies whether the monitor aggregates in a WorstOf or BestOf configuration. If you are using a percentage health policy, you can instead specify a percentage of targets that must be healthy for the dependency monitor to show as healthy.
The Member Monitor row provides a picker window where you can select the monitor that serves as the child monitor for this health model (that is, the monitor that will roll up its health to the parent monitor).
The Member In Maintenance and Member Unavailable roles allow you to specify the behavior of the monitor if the member monitor is in maintenance mode or unavailable. Options are Ignore, Roll up as warning, or Roll up as error.
The Parent Monitor ID row provides a picker window where you can select the monitor that the configured child monitor will roll up to. However, you won’t be able to set this property until you’ve selected a target for the monitor.
The Relationship Type row provides a picker where you can select a relationship to monitor from a list of available relationship types, either defined in this project, or in management packs this project has a reference to. However, you won’t be able to set this property until you’ve selected a target for the monitor.
The General section contains a number of basic properties:
Property | Definition |
Accessibility |
Indicates whether this monitor is internal or public; the default is Internal. |
Category |
Select the category for this monitor from the available options; the default is AvailabilityHealth. |
Comment |
A descriptive comment about the monitor; this text does not appear in the Operations console. |
Description |
A descriptive comment about the monitor; this text does appear in the Operations console. |
Display Name |
The name used for this monitor in the Operations Console |
Enabled |
Indicates whether the monitor is enabled by default; possible values are True and False |
ID |
The unique identifier for the monitor. The management pack namespace will be automatically added to the front of the name. |
Target |
The class for which the monitor should be run. Clicking this option opens a class picker from which you can select available classes. This property must be set before you can select a Parent Monitor ID. |
Monitor (Unit)
The Monitor (Unit) template allows you to configure two monitors to measure the health of a target class. For more information about unit monitors, see Unit Monitors.
The Advanced section properties are:
Property | Definition |
Confirm Delivery |
Possible values are True and False. |
Monitor Run As |
If needed, select a SecureReference account from the list. |
Priority |
Possible values are Low, Normal, and High |
Remotable |
Possible values are True and False |
The Alert Settings Section contains simple properties related to the monitor’s alerting behavior.
Property | Definition |
Alert Auto Resolve |
Indicates whether the alert is closed automatically if the monitor returns to a healthy state. The default is False. |
Alert Description |
The description of the alert that is provided to the user in the details for the alert. |
Alert Name |
The name of the alert; shown in Operations Console |
Alert On State |
Allows you to specify whether the alert should be generated on a Warning or Error state. The default is None. |
Alert Priority |
Possible values are Low, Normal, or High |
Alert Severity |
Possible values are Information, Warning, Error, and MatchMonitorHealth |
The General section contains a number of basic properties:
Property | Definition |
Accessibility |
Indicates whether this monitor is internal or public; the default is Internal. |
Category |
Select the category for this monitor from the available options; the default is AvailabilityHealth. |
Comment |
A descriptive comment about the monitor; this text does not appear in the Operations console. |
Description |
A descriptive comment about the monitor; this text does appear in the Operations console. |
Display Name |
The name used for this monitor in the Operations Console |
Enabled |
Indicates whether the monitor is enabled by default; possible values are True and False |
ID |
The unique identifier for the monitor. The management pack namespace will be automatically added to the front of the name. |
Target |
The class for which the monitor should be run. Clicking this option opens a class picker from which you can select available classes. This property must be set before you can select a Parent Monitor ID. |
The Unit Monitor section provides configuration for the unit monitor. The Monitor Type ID is the most important of the properties in this section, and must be set first, or you won’t be able to configure the other properties. The Monitor Type ID row provides a type picker window that allows you to select any monitor type defined in the current project, or in management packs this project has a reference to.
Once you have selected the monitor type ID, you can provide any necessary configuration for the monitor. Click the Monitor Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the monitor type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the monitor type.
The Monitor Operational States row allows you to configure the available states for the monitor. Click the Monitor Operational States row, and then click the ellipsis (…) that appears. A mapping window appears, listing the configured states for this monitor. You can edit the values in the Operational State column by double-clicking the text in the cell and editing it. The cells in the Health State column each provide a drop-down that allows you to make each monitor condition to the appropriate health state.
The Parent Monitor ID row provides a picker window where you can select the monitor that the configured child monitor will roll up to.
Rule (Alert)
The Rule (Alert) Template provides configuration properties specific to alert rules. For more information about alert rules, see Alert Rules.
The Advanced section properties are:
Property | Definition |
Confirm Delivery |
Possible values are True and False |
Discard Level |
For internal use; do not change. |
Priority |
Possible values are Low, Normal, and High |
Remotable |
Possible values are True and False |
The Alert Settings Section contains simple properties related to the rule’s alerting behavior.
Property | Definition |
Alert Description |
The description of the alert that is provided to the user in the details for the alert. |
Alert Name |
The name of the alert; shown in Operations Console |
Alert Priority |
Possible values are Low, Normal, or High |
Alert Severity |
Possible values are Information, Warning, and Error |
The General section contains a number of basic properties:
Property | Definition |
Category |
Select the category for this rule from the available options; the default is AvailabilityHealth. |
Comment |
A descriptive comment about the rule; this text does not appear in the Operations console. |
Description |
A descriptive comment about the rule; this text does appear in the Operations console. |
Display Name |
The name used for this rule in the Operations Console |
Enabled |
Indicates whether the rule is enabled by default; possible values are True and False |
ID |
The unique identifier for the rule. The management pack namespace will be automatically added to the front of the name. |
Target |
The class for which the rule should be run. Clicking this option opens a class picker from which you can select available classes. |
The Modules section allows you to set the data source and condition detection modules for the rule. If you plan to use any custom modules, you will need to have defined them beforehand in a separate management pack fragment.
Of the condition detection properties, the Condition Detection Type ID must be set first. Click that row, and an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any condition detection defined in the current management pack or any referenced management pack.
Once you have selected the condition detection type ID, you can provide any necessary configuration for that condition detection module. Click the Condition Detection Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the condition detection type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the condition detection module type.
Of the remaining three condition detection elements in the right column section, only the Condition Detection ID is required. This identifier needs to be unique within the rule, but not within the management pack. The default ID is “CD,” which is normally sufficient. The Condition Detection Comment is an optional comment on the condition detection module; it does not appear in the Operations Console. Use the Condition Detection Run As row if you need to run the condition detection under an account other than the default action account.
The rule can have multiple data sources; therefore, if you click the Data Sources row, an ellipsis (…) button appears. Click that to open a data sources collection editor window. Like the other collection windows, click the Add button on the left to create a new data source, and open a list of configuration options on the right.
If you are using a custom data source, you will need to create it beforehand in a management pack fragment. In this options on the right, it’s important to set the last option in the list (Data Source Type ID) before setting the others. When you click that row, an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any data source defined in the current management pack or any referenced management pack.
Once you have selected the data source type ID, you can provide any necessary configuration for that data source. Click the Data Source Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the data source type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the data source type.
Of the remaining three elements in the right column section, only the Data Source ID is required. This identifier needs to be unique within the discovery, but not within the management pack. The default ID is “DS,” which is normally sufficient, but if you are using multiple data sources, you need to provide each with a unique ID. The Data Source Comment is an optional comment on the data source; it does not appear in the Operations Console. Use the Data Source Run As row if you need to run the data source under an account other than the default action account.
Rule (Custom)
The Rule (Custom) template provides configuration properties for any rule that does not have fall under the categories of alert, event collection, or performance collection. These rules can have data source modules, condition detection modules, and write action modules.
The Advanced section properties are:
Property | Definition |
Confirm Delivery |
Possible values are True and False |
Discard Level |
For internal use; do not change. |
Priority |
Possible values are Low, Normal, and High |
Remotable |
Possible values are True and False |
The General section contains a number of basic properties:
Property | Definition |
Category |
Select the category for this rule from the available options; the default is AvailabilityHealth. |
Comment |
A descriptive comment about the rule; this text does not appear in the Operations console. |
Description |
A descriptive comment about the rule; this text does appear in the Operations console. |
Display Name |
The name used for this rule in the Operations Console |
Enabled |
Indicates whether the rule is enabled by default; possible values are True and False |
ID |
The unique identifier for the rule. The management pack namespace will be automatically added to the front of the name. |
Target |
The class for which the rule should be run. Clicking this option opens a class picker from which you can select available classes. |
The Modules section allows you to set the data source, condition detection, and write action modules for the rule. If you plan to use any custom modules, you will need to have defined them beforehand in a separate management pack fragment.
Of the condition detection properties, the Condition Detection Type ID must be set first. Click that row, and an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any condition detection defined in the current management pack or any referenced management pack.
Once you have selected the condition detection type ID, you can provide any necessary configuration for that condition detection module. Click the Condition Detection Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the condition detection type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the condition detection module type.
Of the remaining three condition detection elements in the right column section, only the Condition Detection ID is required. This identifier needs to be unique within the rule, but not within the management pack. The default ID is “CD,” which is normally sufficient. The Condition Detection Comment is an optional comment on the condition detection module; it does not appear in the Operations Console. Use the Condition Detection Run As row if you need to run the condition detection under an account other than the default action account.
The rule can have multiple data sources; therefore, if you click the Data Sources row, an ellipsis (…) button appears. Click that to open a data sources collection editor window. Like the other collection windows, click the Add button on the left to create a new data source, and open a list of configuration options on the right.
If you are using a custom data source, you will need to create it beforehand in a management pack fragment. In the options list on the right, it’s important to set the last option in the list (Data Source Type ID) before setting the others. When you click that row, an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any data source defined in the current management pack or any referenced management pack.
Once you have selected the data source type ID, you can provide any necessary configuration for that data source. Click the Data Source Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the data source type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the data source type.
Of the remaining three elements in the right column section, only the Data Source ID is required. This identifier needs to be unique within the rule, but not within the management pack. The default ID is “DS,” which is normally sufficient, but if you are using multiple data sources, you need to provide each with a unique ID. The Data Source Comment is an optional comment on the data source; it does not appear in the Operations Console. Use the Data Source Run As row if you need to run the data source under an account other than the default action account.
The rule can also have multiple write actions; therefore, if you click Write Actions row, an ellipsis (…) button appears, which will open a write actions collection editor window, which behaves nearly identically to the data sources collection editor. Like the other collection windows, click the Add button on the left to create a new write action, and open a list of configuration options on the right.
If you are using a custom write action, you will need to create it beforehand in a management pack fragment. In the options list on the right, it’s important to set the last option in the list (Write Action Type ID) before setting the others. When you click that row, an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any write action defined in the current management pack or any referenced management pack.
Once you have selected the write action type ID, you can provide any necessary configuration for that write action. Click the Write Action Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the write action type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the write action module type.
The write action collection editor contains one unique property: the Write Action Target property. This property is typically not set, and should not be used.
Of the remaining three elements in the right column section, only the Write Action ID is required. This identifier needs to be unique within the rule, but not within the management pack. The default ID is “WA,” which is normally sufficient, but if you are using multiple write actions, you need to provide each with a unique ID. The Write Action Comment is an optional comment on the write action; it does not appear in the Operations Console. Use the Write Action Run As row if you need to run the write action under an account other than the default action account.
Rule (Event Collection)
The Rule (Event Collection) template provides configuration properties for a rule that collects event data. These rules can have a single data source module, and a single condition detection module. For more information about event collection rules, see Event Collection Rules.
The Advanced section properties are:
Property | Definition |
Confirm Delivery |
Possible values are True and False |
Discard Level |
For internal use; do not change. |
Priority |
Possible values are Low, Normal, and High |
Remotable |
Possible values are True and False |
The Collection section has two settings that indicate where the collected event information should be stored. The Collect to DB setting stores the information to the Operations Manager database, for use in views in the Operations Console. The Collect to DW setting stores the information to the Operations Manager Data Warehouse, for use in reports. Both are set to True by default.
The General section contains a number of basic properties:
Property | Definition |
Category |
Select the category for this rule from the available options; the default is AvailabilityHealth. |
Comment |
A descriptive comment about the rule; this text does not appear in the Operations console. |
Description |
A descriptive comment about the rule; this text does appear in the Operations console. |
Display Name |
The name used for this rule in the Operations Console |
Enabled |
Indicates whether the rule is enabled by default; possible values are True and False |
ID |
The unique identifier for the rule. The management pack namespace will be automatically added to the front of the name. |
Target |
The class for which the rule should be run. Clicking this option opens a class picker from which you can select available classes. |
The Modules section allows you to set the data source and condition detection modules for the rule. If you plan to use any custom modules, you will need to have defined them beforehand in a separate management pack fragment.
Of the condition detection properties, the Condition Detection Type ID must be set first. Click that row, and an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any condition detection defined in the current management pack or any referenced management pack.
Once you have selected the condition detection type ID, you can provide any necessary configuration for that condition detection module. Click the Condition Detection Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the condition detection type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the condition detection type.
Of the remaining three condition detection elements in the right column section, only the Condition Detection ID is required. This identifier needs to be unique within the rule, but not within the management pack. The default ID is “CD,” which is normally sufficient. The Condition Detection Comment is an optional comment on the condition detection module; it does not appear in the Operations Console. Use the Condition Detection Run As row if you need to run the condition detection under an account other than the default action account.
The Data Source properties function similarly. The Data Source Type ID must be set before setting the others. When you click that row, an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any data source defined in the current management pack or any referenced management pack.
Once you have selected the data source type ID, you can provide any necessary configuration for that data source. Click the Data Source Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the data source type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the data source type.
Of the remaining three data source elements, only the Data Source ID is required. This identifier needs to be unique within the rule, but not within the management pack. The default ID is “DS,” which is normally sufficient, but if you are using multiple data sources, you need to provide each with a unique ID. The Data Source Comment is an optional comment on the data source; it does not appear in the Operations Console. Use the Data Source Run As row if you need to run the data source under an account other than the default action account.
Rule (Performance Collection)
The Rule (Performance Collection) template provides configuration properties for a rule that collects performance data. These rules can have a single data source module, and a single condition detection module. For more information about performance collection rules, see Performance Collection Rules.
The Advanced section properties are:
Property | Definition |
Confirm Delivery |
Possible values are True and False |
Discard Level |
For internal use; do not change. |
Priority |
Possible values are Low, Normal, and High |
Remotable |
Possible values are True and False |
The Collection section has two settings that indicate where the collected event information should be stored. The Collect to DB setting stores the information to the Operations Manager database, for use in views in the Operations Console. The Collect to DW setting stores the information to the Operations Manager Data Warehouse, for use in reports. Both are set to True by default.
The General section contains a number of basic properties:
Property | Definition |
Category |
Select the category for this rule from the available options; the default is AvailabilityHealth. |
Comment |
A descriptive comment about the rule; this text does not appear in the Operations console. |
Description |
A descriptive comment about the rule; this text does appear in the Operations console. |
Display Name |
The name used for this rule in the Operations Console |
Enabled |
Indicates whether the rule is enabled by default; possible values are True and False |
ID |
The unique identifier for the rule. The management pack namespace will be automatically added to the front of the name. |
Target |
The class for which the rule should be run. Clicking this option opens a class picker from which you can select available classes. |
The Modules section allows you to set the data source and condition detection modules for the rule. If you plan to use any custom modules, you will need to have defined them beforehand in a separate management pack fragment.
Of the condition detection properties, the Condition Detection Type ID must be set first. Click that row, and an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any condition detection defined in the current management pack or any referenced management pack.
Once you have selected the condition detection type ID, you can provide any necessary configuration for that condition detection module. Click the Condition Detection Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the condition detection type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the condition detection module type.
Of the remaining three condition detection elements in the right column section, only the Condition Detection ID is required. This identifier needs to be unique within the rule, but not within the management pack. The default ID is “CD,” which is normally sufficient. The Condition Detection Comment is an optional comment on the condition detection module; it does not appear in the Operations Console. Use the Condition Detection Run As row if you need to run the condition detection under an account other than the default action account.
The Data Source properties function similarly. The Data Source Type ID must be set before setting the others. When you click that row, an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any data source defined in the current management pack or any referenced management pack.
Once you have selected the data source type ID, you can provide any necessary configuration for that data source. Click the Data Source Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the data source type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the data source type.
Of the remaining three data source elements, only the Data Source ID is required. This identifier needs to be unique within the rule, but not within the management pack. The default ID is “DS,” which is normally sufficient, but if you are using multiple data sources, you need to provide each with a unique ID. The Data Source Comment is an optional comment on the data source; it does not appear in the Operations Console. Use the Data Source Run As row if you need to run the data source under an account other than the default action account.
View (Custom)
The View (Custom) template allows you to create a custom view for use in the Operations Console, including Dashboard views. For more information about designing views, see Defining Views.
The General section contains a number of basic properties:
Property | Definition |
Category |
Select the category for this rule from the available options; the default is AvailabilityHealth. |
Comment |
A descriptive comment about the rule; this text does not appear in the Operations console. |
Description |
A descriptive comment about the rule; this text does appear in the Operations console. |
Display Name |
The name used for this rule in the Operations Console |
Enabled |
Indicates whether the rule is enabled by default; possible values are True and False |
ID |
The unique identifier for the rule. The management pack namespace will be automatically added to the front of the name. |
Target |
The class for which the rule should be run. Clicking this option opens a class picker from which you can select available classes. |
The View section allows you to select a view type for the custom view, and provide any necessary configuration for that view.
The View Type ID must be set first. Click that row, and an ellipsis button (…) appears. Clicking that opens a picker dialog box, from which you can select any view type defined in the current management pack or any referenced management pack.
Once you have selected the view type ID, you can provide any necessary configuration for that view. Click the View Configuration row, and then click the ellipsis (…) that appears. An XML editing window appears with the <Configuration> tags already in place. Enter the necessary configuration items for the view type you selected. IntelliSense can help you here: simply type the opening bracket (<), and IntelliSense will provide a list of possible elements as defined by the view type.
Clicking the View Folder row also launches a picker window from which you can select the view folder where you want your view to appear. If you do not associate the view with a folder, the view will not appear in the Operations Console. You can define new view folders using the simple template Folder & Folder Item (see [[Visual Studio Authoring Extensions - Simple Templates | Simple Templates]]).
The Visible property indicates whether the view is visible in the Monitoring. It is set to True by default, but if the view is composed into a System Center Operations Manager 2007 R2 dashboard, set this to False.
Additional Resources
[[Visual Studio Authoring Extensions for System Center 2012 - Operations Manager]]
[[Visual Studio Authoring Extensions - Visual Studio Features]]
[[Visual Studio Authoring Extensions - Simple Templates]]
[[Visual Studio Authoring Extensions - Example Management Pack]]