SLM 7.0 Architecture 66085 PDF
SLM 7.0 Architecture 66085 PDF
SLM 7.0 Architecture 66085 PDF
Architecture
November 2006
Copyright 19912006 BMC Software, Inc. All rights reserved. BMC, the BMC logo, all other BMC product or service names, BMC Software, the BMC Software logos, and all other BMC Software product or service names, are registered trademarks or trademarks of BMC Software, Inc. All other trademarks belong to their respective companies. BMC Software, Inc., considers information included in this documentation to be proprietary and confidential. Your use of this information is subject to the terms and conditions of the applicable end user license agreement or nondisclosure agreement for the product and the proprietary and restricted rights notices included in this documentation. Restricted Rights Legend U.S. Government Restricted Rights to Computer Software. UNPUBLISHED -- RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF THE UNITED STATES. Use, duplication, or disclosure of any data and computer software by the U.S. Government is subject to restrictions, as applicable, set forth in FAR Section 52.227-14, DFARS 252.227-7013, DFARS 252.227-7014, DFARS 252.227-7015, and DFARS 252.227-7025, as amended from time to time. Contractor/Manufacturer is BMC Software, Inc., 2101 CityWest Blvd., Houston, TX 77042-2827, USA. Any contract notices should be sent to this address. Contacting Us If you need technical support for this product, contact Customer Support by email at [email protected]. If you have comments or suggestions about this documentation, contact Information Development by email at [email protected]. This edition applies to version 7.0 of the licensed program.
www.bmc.com
Contents
Overview .............................................................................................................. 5 Terminology......................................................................................................... 6 High-level architecture........................................................................................ 7 Main components ................................................................................................ 8 SLM data model .................................................................................................. 9 SLM definition module data model ................................................................ 10 Collector component data model..................................................................... 13 SLM processing data model............................................................................ 14 Administration components ............................................................................ 15 Service target definition.................................................................................... 16 Request-based and availability service targets................................................ 17 Performance monitoring service targets.......................................................... 18 Compliance-only service targets ..................................................................... 20 Agreement definition......................................................................................... 20 Service target weighting.................................................................................. 21 Review periods................................................................................................ 22 Contract definition ............................................................................................ 22 Service target processing .................................................................................. 23 Request-based and availability processing...................................................... 24 Performance-monitoring processing ............................................................... 32 Measurement form .......................................................................................... 32 Milestone processing ......................................................................................... 33 Request-based milestones ............................................................................... 33 Availability milestones.................................................................................... 36 Performance-monitoring milestones ............................................................... 36 Agreement/compliance milestones ................................................................. 36 SLA compliance processing.............................................................................. 37 Compliance and compliance history ............................................................... 38 Request-based calculation ............................................................................... 38 Availability and performance-monitoring calculations................................... 40 Compliance only ............................................................................................. 43 MSP................................................................................................................. 43 Business time design.......................................................................................... 44 Collector module design.................................................................................... 45
Data collector .................................................................................................. 46 Collection point............................................................................................... 46 Service target manager .................................................................................... 46 Service target processor .................................................................................. 46 Data store ........................................................................................................ 46 AR configuration interface.............................................................................. 46 Plug-in functionality........................................................................................ 47 Communications ............................................................................................. 48 Configuring the collector ................................................................................ 48 Data collection ................................................................................................ 49 Web services ................................................................................................... 51 Service target processor .................................................................................. 51 Service target manager .................................................................................... 53 Collection point plug-ins................................................................................. 55 SLM engine overview........................................................................................ 61 SLM rules and associations............................................................................. 63 Rule actions..................................................................................................... 64 Supplementary information ............................................................................. 66 Collector database schema .............................................................................. 66 SLM processing module significant forms ..................................................... 75 SLM definition forms...................................................................................... 80
Overview
The BMC Service Level Management (SLM) 7.0 product combines together the service support and infrastructure metrics and events data into a common SLM product. SLM allows users to set agreements and service target goals on these using a common mechanism. The architecture reflects the seamless integration and emphasizes that it is one SLM product in the presentation and the data layer. The goal of the SLM product is to let businesses track performance and availability targets of their infrastructure components and service desk. It gives businesses a high-level, detailed picture of where problems exist so they can correct them and maintain high-quality service. The three entities used in monitoring the service levels are: service targets, agreements, and contracts. The following diagram shows the relationship among these three entities:
Figure 1: Contracts, agreements and service targets
Contract
Contract parties Effective dates Accounting codes Purchase price
Service Targets Goals Costs Terms & conditions : KPI expression or qualification Measurement rules Milestones & actions
Service Targets
Service Targets
Service Targets Goals Costs Terms & conditions : KPI expression or qualification Measurement rules Milestones & actions
Service Targets
Service Targets
Terminology
The following definitions are commonly used terms in SLM 7.0: Data sourceInput data that the SLM module processes: Data sources based on BMC Remedy AR System, such as incident and change requests, and sources other than AR System, such as Patrol, ART, SIM, and so on. Service targetDefines the goal of what is being measured, and the target value of the goal. Also defines the instances of the data source that are being monitored, such as the terms and conditions. AgreementDefines compliance of single or multiple service targets over time periods such as weekly, monthly or daily. The agreement specifies a target compliance percentage that must be met over these time periods. TemplatesSaved instances of components that can be reused while defining service targets and agreements. Templates are shared, but can be customized by the object that uses them. Service target processorThe engines that evaluate data source data to determine if a service target is met. There are two engines, one based on AR System workflow for service support data and one based on Java-based engine for infrastructure data. SLA processorPerforms scheduled compliance calculations over a large amount of data, over a period of time. CollectorComponents that runs on the same server as AR System. Its purpose is to manage the collection points and retrieve and evaluate data from them for each available data source. Collection pointDistributed components that are responsible for the collection of data. There can be one or more collection points, and each one can be installed on a separate server. The collection point uses a pluggable architecture to allow data to be collected from multiple data sources. Collection nodeLogical entity that is a combination of a collection point and a data source that it communicates with. An example is a collection point installed on server A to collect data from a Patrol agent. System metricKey performance indicators that are available to be collected from each data source.
High-level architecture
The following diagram presents a high-level view of SLM architecture.
Figure 2: High -level architecture diagram showing the various SLM components and their purpose and relationships.
Definition, Configuration, & Storage of: SLAs, OLAs, & Underpinning Contracts Service Targets Milestones
AR System process Non-AR System process Uses third party technology AR System Storage
High Volume Infrastructure Data Sources (Performance Manager, SIM, ART, SNMP)
Collector Component Svc Target Processor for Data Collector Infrastructure data Svc Target Processor for Time based data (requests, incidents)
AR System DB
AR System data sources (Incident & Problem Mgmt, Change Mgmt, Asset Mgmt, Other)
SIM Portal
Web Services
All definition and configuration is performed by a common interface. The data is stored in the AR System database. The service target processing for the data collected from AR system data sources is performed within AR System. The results are stored in the AR system database forms.
The high-volume, high-frequency infrastructure data from other data sources is processed by the collector and only the results are pushed into AR System. The service target results from both data sources are used by the SLA compliance processor to get periodic compliance results.
Main components
The main components of the SLM product are: SLM Data RepositoryThe AR System database is the repository of all the configuration and run time data for SLM. ConfigurationThe user interface and workflow needed to configure service targets, agreements, contracts, templates, and other options. CollectorJava application that receives and interprets data from the various infrastructure monitoring data sources using plug-ins. It communicates with AR System using the AR System API to read and update service target information. Data sources and plug-insThe products that SLM integrates with as shipped are shown in Figure 3. The data sources based on AR System use the native AR System interface to communicate with the main SLM data repository, while the collector acts as a gateway for other data sources to communicate with SLM. SLM EngineA C++ binary that runs under the armonitor service and creates the filters to process service targets for AR System data sources. DashboardA user interface to display the latest SLM data service target and compliance status using charts and tables. ReportsA set of pre-defined Crystal reports that run on SLM data.
Figure 3: Supported data sources and SLM components
SLM:GoalSchedule SLM:ServiceTarget PK InstanceId Title SLMId SLA_Application Form User Display SLMGoalType TermsAndConditions TargetHours TargetMinutes GoalValueAlarm GoalValueWarning StartQualification StopQualification ExcludeQualification ReferenceFormId UsedMeasCriteriaTemplateId GoalTypes BusinessEntityTag BusinessEntityID CategoryId Folder (zD_CategoryPath) CollectionNodeList KPIIDList PK instanceId instanceName GoalWeekday StartTime EndTime GoalGUID GoalType GoalHours GoalMinutes GoalSeconds GoalWarningValue GoalAlarmValue WarningOperatorSign AlarmOperatorSign Cost SLO_InstanceId
SLM:ConfigGoalType
DisplayLabel GoalType SLM:Milestone PK instanceId Title ExecuteWhen ExecuteAtPercentage ExecuteAtHour ExecuteAtMinutes RepeatFor RepeatHours RepeatMinutes ExecuteIf ParentInstanceId RuleDefinitionGUID SLM:Category PK InstanceId InstanceName
SLM:SystemMetrics SLM:TemplateMeasurementCriteria PK instanceId instanceName AppFormDisplayName MeasurementGoalType StartQualification StopQualification ExcludeQualification CNID FullName PK ID
10
SLM:SLAAssociation SLM:Contract SLM:Milestone PK instanceId Title ExecuteIf ParentInstanceId RuleDefinitionGUID InstanceId1 InstanceId2 PK InstanceId
Forms include: SLM:ServiceTargetStores the definition information for service targets, such as name, description, data source, terms and conditions, goals, and so on. SLM:SLADefinitionStores the definition of the agreement, such as name, description, expiration date, target compliance, review periods, and so on. SLM:PenaltiesRewardsDefines a sliding scale of penalties and rewards, based on the compliance target. SLM:ContractDefines the overarching contract between service providers and customers, including one or more agreements. SLM:GoalCostRepository for custom and template goal and cost schedule (time ranges by weekday). SLM:CategoryStores the hierarchy of folders seen in the tree control on the console and dashboard. SLM:MilestoneDefines of milestones, such as name, description, type, condition, and so on. SLM:RuleActionBase definition of actions related to a milestone. Actions of different types can be derived from this base object.
11
SLM:ConfigGoalTypesUser-defined set of Goal labels, such as Incident Response Time, Application Availability, and so on. These goal labels apply to four major goal categories: Request-based, Performance Monitoring, Availability, and Compliance Only. SLM:ConfigDataSourceStores configuration information for each data source for the SLM application. BusinessEntityCore AR System object; it defines a set of time segments as available or unavailable. This object is used to define business hours, holidays, and blackout periods. SLM:SystemMetricsView form on the system_metrics table that stores the definition of KPIs discovered on a collection node. SLM:CollectionNodesView form on the collection_node table that stores the definition of collection nodes.
12
See Supplementary Information for details of these tables and descriptions of each field.
13
14
Figure 7: Data model for SLM processing (service target & compliance) entities
SLM:SLAComplianceHistory PK PK PK PK SLA InstanceId SVT InstanceId Review Period InstanceId Contract Instance ID
SLM:ServiceTarget PK InstanceId Title Goal Type SLM:Measurement PK PK SVT InstanceId Application InstanceId Measurement Status Application Form (Data Source) PK Instance ID SLM:EventSchedule SLM:MeasurementChild PK PK SVT InstanceId ApplicationInstanceId
Administration components
A set of forms involved in administration console options are used to configure items for the definition and processing modules. They are mostly items that can be configured before setting up service targets and agreements because they might not frequently change. An administrator generally configures them. SLM:ConfigDataSourceUI and repository for all the data sources that work with SLM. Any custom AR System form that needs to work with SLM will have an entry in this form, as well as other data source types like Performance Monitoring and Service Impact Manager. Other significant configuration settings related to the data sources are also stored in this form. In conjunction with the back end form SLM:Object, all forms working with the SLM application needs to be registered with their own GUID. SLM:ConfigGoalTypesThis is a repository for mapping of internal goal types to user-defined goal labels. Users see and use the user-friendly labels such as Request Time, Application Performance, etc but the application will work off the goal types to be able to process the service target accordingly.
15
SLM:ConfigPreferencesThis form stores general application settings that apply across the product including the service target identification prefix and location of log files. SLM:ConfigReviewPeriodsThis form stores review periods that users select in the agreement definition to determine the time spans for compliance calculations. SLM:ConfigSLAGroups This form stores the service target groups information for the service target group feature that is specific to request-based service targets. SLM:ConfigSLAOwnersThis form stores aliases or names for groups of user IDs that can be used in alert actions. This enables emails and alerts to be sent to a group. SLM:ConfigSLMCommentsThis form stores pre-configured comments created by users to add to their measurement and compliance records. Comments will typically include reasons for missing a compliance or goal.
Performance MonitoringService targets that are evaluated on system metrics coming from infrastructure items, such as servers and applications. The data sources in this case are network management products that produce relatively high volume, high frequency data about availability and performance of machines, services, and applications. This type of service target is usually processed outside of AR System, in the collector module, see the collector component of this whitepaper.
16
The data sources for this type of service target are: BMC Performance Manager BMC Performance Manager Express BMC Transaction Management ART BMC Transaction Management REM BMC Service Impact Manager
AvailabilityService targets that measure availability of assets and services over a long period of time. The service target tracks the up and down time of these assets, based on defined available and unavailable qualifications. Compliance-OnlyService target used to process the compliance of SLA data that has been evaluated for a specific goal. This data exists in the database, but a view form is needed to access this information. Using config data source, configure a specific form that has access to this information. By using specific field IDs to point to the data, SLM can evaluate the data points for compliance. In this case, the service target is a placeholder that defines the data source and the conditions under which the service target applies. However, no goals or milestones are defined. Service-Impact-ManagerUsed for service targets that have BMC Service Impact Manager as the data source. This goal type is used to track service targets based on the status of a CI: a component or a service monitored in the SIM service model. Service targets of this type are also processed by the collector. While defining these service targets, however, special features are available like the ability to use CMDB CI Viewer to navigate the CI relationship tree and to select a CI. Service target definition can also be cross-launched in context from the SIM Service Model Editor and the Impact Portal.
17
The execution order of the filter guide and milestone filters can be changed so that it does not interfere with your custom workflow.
18
Arithmetic ExpressionThis view allows users to create an arithmetic expression using MAX, MIN, SUM, and AVG, over a set of numeric KPIs. Use the tree to select numeric KPIs and the KPI will appear in the Key Performance Indicators field to the right. This type allows the use of the Single and Scheduled Goal/Cost UI. Because this is only for numeric type KPIs, the Warning and Alarm fields will ask for integer number to compare against when determining the performance of the KPI. Boolean ExpressionThis view allows the user to create a boolean expression which combines a Single KPI Expression and an Arithmetic Expression. The expression is complete with goals. Because the result of this evaluation is either True or False, the user will not be able to use the Single and Schedule Goal/Cost option. Use the tree to select numeric KPIs you need and the KPI will appear in the Key Performance Indicators field to the right. Build either a Single KPI Expression or an Arithmetic Expression. The Operator and Value fields are required before you can hit the Add button to move the KPI component to the Expression field. The KPI that is selected appears in a string format that follows the following convention: -> (leading character) Collection Node Name:
Collection Node ID: KPI Type (numeric or KPI Hierarchy (Name0 KPI Hierarchy (Name1 KPI Hierarchy (Name2 KPI Hierarchy (Name3 KPI Hierarchy (Name4 KPI Hierarchy (Name5 KPI Hierarchy (Name6 KPI Hierarchy (Name7 KPI Hierarchy (Name8 KPI Hierarchy (Name9 status): on SLM:SystemMetrics)\ on SLM:SystemMetrics)\ on SLM:SystemMetrics)\ on SLM:SystemMetrics)\ on SLM:SystemMetrics)\ on SLM:SystemMetrics)\ on SLM:SystemMetrics)\ on SLM:SystemMetrics)\ on SLM:SystemMetrics)\ on SLM:SystemMetrics)\
-- (trailing character) Because the KPI uses certain characters as delimiters, it is important that the names used to identify a node in the tree do not use the following:
\, :, - -, ->, ">", "<", "<=", ">=", "=", "!=", AVG(, MIN(, MAX(, and SUM(.
After the expression is built, a command is called to validate the expression you constructed. A record is pushed to the SLM:Landscape form with a WebServiceType of Validate Expression. If the call returns an error when the service target is saved, a message appears.
19
Agreement definition
Agreement is the container that customers use to evaluate how their service targets are performing over time. This allows customers to see how service targets commitment are performing over a time period or review periods (daily, weekly, monthly, quarterly). Additionally, customers can give a weight to each service target to give some service targets more value or importance in their line of business. Agreements allow milestones to perform traditional SLM actions to notify or perform work to meet their contractual commitments. Compliance processing takes all the related service targets related to an agreement and look at its performance from the start of the compliance record till it ends. The formula used for each service target type varies as follow. Ticket-Based service targets: Met / (Met + Missed) Compliance Only: Met / (Met + Missed) Availability: Up Time/ (Up Time + Down Time) Ignores Unknown time and counts all the time from all the records related to the service targets. All time calculations are done using Business Entity call. Performance-Monitoring: 100(Down Time / (review period time Unknown)
There is only one measurement record per service target. We know what the total time is at the start of the review period and this formula ensures that the percentage decreases from 100% as the measurement records down time and unknown time. Availability is unable do this because one service target may include more than one measurement record. When seeing the performance of an agreement that has not been completed, it should be viewed as how has the agreement has performed so far, based on the number of records, and the availabilility of its asset/service. The review period is the compliance of the agreement for a segment of time independent of past or future data points.
20
Service Target Urgent Service Target High Service Target Medium Service Target Low
20 10 5 5
This method allows weighted contribution percentages to be dynamically calculated, based on the relative importance of each service target. If a user adds another service target and gives it a weighted value, the weighted percentage is calculated automatically. Users do not need to manually update the percentage to give a sum of 100%. When a SLA compliance calculation is performed that gives the performance percentage of a service target, the SLA compliance is determined using the service targets weighted compliance contribution percentage.
Period performance Compliance calculation Compliance percentage gained 45% 22.5% 10.625% 9.375% 87.5%
Service Target Urgent Service Target High Service Target Medium Service Target Low Total Compliance %
21
The SLA compliance is the summation of each service targets performance, multiplied by its weighted contribution percentage. For this period, the SLA compliance comes out to 87.5%.
Review periods
SLA compliance processing gathers data from each service target defined in an agreement for a time segment or review period to calculate an overall performance percentage. Users can define a review period of type of daily, weekly, monthly, or quarterly. For each review period, the SLA compliance percentage is calculated at regular intervals to provide a current evaluation of the service targets performance. For example, for an agreement with a review period of type daily, the compliance record will be updated every hour to show the current performance of all the Service targets under it. The next day when the review period ends, a final update is done and the compliance record is closed out. A new record is created to track the next days compliance performance independent of the previous days result.
Review period Daily Weekly Monthly Quarterly Automated calculation intervals
Every hour (at five minutes after the hour) Every four hours (from midnight: 00:05:00, 04:05:00, and so on) Every day Every day
Contract definition
Contract is the highest-level object in the SLM hierarchy. It is an entity used to define contractual information for the agreements: who is the agreement with, what dates it covers, who is the service provider. The contract object is derived from the contract base in Asset Management. If Asset Management and SLM are installed, all contracts are available in a single repository. Contracts in SLM are not only a container for multiple agreements and a way for customers to group all agreements for a customer together, but also are also a way to drive row level security for Managed Service Providers (MSPs). Grouping agreements in a contract makes sure that the compliance records for these agreements are separated by contract.
22
CTR:ContractBase PK InstanceId
SLM:ContractBase PK InstanceId
SLM:Contract PK InstanceId
SLM:SLADefinition PK InstanceId
SLM Object ITSM Asset Management Object SLM:SLAAssociation PK PK InstanceId 1 InstanceId 2 AssociationType
The Customer field is used to restrict access to the contract. It is added to field 112, along with Unrestricted Manager. Once this field is populated, anyone not in that group and not an Unrestricted Manager will not be able to see the contract from the console. The menus for the company, organization, department and supplier, and Type on the contract form are dynamic. Users can configure them and point them to the desired form. These menus can be configured by changing the data in the Configure Contract Menus option from the Application Settings option of the Administration Console. When an ITSM application is installed with SLM, these menus will automatically point to the ITSM menus for these entities. The SLM:Contract:OnOpen:SetContractMenus active link reads the value from the configuration form and dynamically sets the menus. The pre-defined sample menus are stored in SLM:SampleContractMenus.
23
Request-based processing
X
Attached
Y
Start Measuring
[ Z
Continue Measuring
\
Stop Measuring
Exclude
When a user submits a request in the application form, such as HPD:HelpDesk, the auto-generated associate filter executes and a measurement entry is created. The measurement status is set to Attached. The Start filter executes when the Start When qualification is met. It sets the OverallStartTime with the current time, and sets the MeasurementStatus to In Process. Note: If a user is using the start reference time option, the start time is set to a user defined date and time field on the application form. When OverallStartTime is populated with current time, SVTDueDate is calculated by adding the GoalSchedGoalTime to the OverallStartTime, using the business time functions. The Exclude filter executes if the Exclude When qualification is met. It sets the DnStartTime field with the current time, and sets the MeasurementStatus to Pending.
NotExclude filter will fire when NOT(Exclude When) qualification is met. It will set the DownStopTime with current time, and MeasurementStatus to In
Process.
24
When DownStopTime is populated with current time, DownElapsedTime is calculated by getting the differene between the DownStopTime and the DownStartTime. This time is then added to the previous DownElapsedTime. When UpStopTime is populated with current time, UpElapsedTime is calculated by getting the different between the UpStopTime and UpStartTime. Then it is accumulated with the previous UpElapsedTime. The Stop filterexecutes when the Stop When qualification is met. It sets the OverallStopTime with current time. When OverallStopTime is populated with the current time, OverallElapsedTime is calculated by getting the difference between OverallStopTime and OverallStartTime. UpTime is calculated by getting the difference between OverallElapsedTime and DownElapsedTime. MetMissedAmount is calculated by getting the difference between GoalSchedGoalTime and UpTime. MeasurementStatus is set to Met if UpTime is less than or equal to GoalSchedGoalTime. MeasurementStatus is set to Missed if UpTime is greater than to GoalSchedGoalTime. MeasurementDone is set to Yes. Note: An entry placed in SLM:EventSchedule executes when the SVTDueDate time is passed to set MeasurementStatus to Missed Goal to signify that the goal of the service target has not been satisfied. However, the Measurement record is not completed until the Stop Measuring condition is satisfied.
Service target groups are a special feature that works only for request-based service targets. This scenario applies when fields on the incident or change request change so that the terms and conditions of the currently attached service target do not apply. A new service target is attached, however, time calculations must to be done as if a new service target is attached. This typically happens, for example, if there are different service targets for high, medium, and low priority requests of a certain category, and they are grouped under one service target group. If an incoming ticket has a high priority and a high service target is attached and starts processing, after some time has elapsed and the request changes to a low or a medium priority, a new service target is attached. However, the new service target inherits the start and excludes times from the first service target and does not behave as if it just started.
25
The following diagrams demonstrate the most common scenarios that might occur:
ServiceTarget 100 HIGH Starts Service Target 200 LOW Attaches
In this diagram: When service target 200 attaches, it inherits the start time from service target 100. Milestones are removed from the service target. Milestones are calculated from service target 200 to start from the start time of service target 100.
ServiceTarget 200 LOW Attaches
Measurement Status = In Process Measurement Status = Pending In this diagram: When service target 200 is attached, then service target 100 is an Exclude state. Milestones are removed from service target 100. Service target 200 is in an Exclude state with the down time inherited from service target 100. When service target 200 changes from pending, milestones from service target 200 are calculated to start from the start time of service target 100 with an additional offset of the time both service targets were in a pending state.
26
In this diagram: When service target 200 attaches, it inherits the start time from service target 100. Milestones are removed from service target 100. Milestones from service target 200 are calculated to start from the start time of service target 100, which in this case is the same time as the start time of service target 200. In this scenario, nothing is inherited by service target 200.
ServiceTarget 100 HIGH Starts ServiceTarget 200 LOW Attaches
In this diagram: When service target 200 is attached, it inherits the start time from service target 100, and the up time and down time is calculated by service target 100. The measurement record is removed from service target 100. Milestones are removed from service target 100. Milestones are calculated from service target 200 to start from the start time of service target 100, with an offset from the down time calculated by service target 100. The time might be inconsistent because the down time was calculated using the business time from service target 100. If the business times used are not matched, the time could be unpredictable. To be sure that the time calculation is done correctly, review the time value in the SLM:Measurement form.
27
In this diagram: Service target 100 has been processed and closed. When service target 200 is attached, it inherits the start time from service target 100, and the up time and down time calculated by service target 100. The measurement record is removed from service target 100. The dead time between the service targets working time service target is calculated as an Exclude time using the business time tag from service target 100. Milestones from service target 200 are calculated to start from the start time of service target 100, with an offset from the down time calculated by service target 100 (Exclude time and the dead time). The time might be inconsistent because the down time was calculated using the business time from service target 100. If the business times used are not matched, the time could be unpredictable. To be sure that the time calculation is done correctly, review the time value in the SLM:Measurement form.
ServiceTarget100 HIGH Starts ServiceTarget 100 HIGH Stops ServiceTarget 100 High Attaches again Inherits Start from SLO 100
In this diagram: Service target 100 has been processed and closed. When service target 100 is attached, it inherits the start time from service target 100 and the up time and down time calculated by service target 100. The measurement record is removed from service target 100. The dead time between the service targets working time service target is calculated as an Exclude time using the business time tag from service target 100. Milestones from the new service target 100 are calculated to start from the start time of the original service target 100, with an offset from the down time calculated by service target 100 (Exclude time and the dead time).
28
In this diagram: Service target 100 has been processed and closed. At the same time the ticket is changed so that service target 200 is attached in a closed state. When service target 200 is attached, it inherits the start time from service target 100 and the up time and down time calculated by service target 100. The measurement record is removed from service target 100. Milestones are not created from the new service target 200 because it is closed. Service target 200 is evaluated using the calculated time from service target 100, but using the goal from service target 200.
ServiceTarget 100 HIGH Starts ServiceTarget 100 HIGH Close ServiceTarget 100 is closed and Service Target 200 attaches as closed
In this diagram: Service target 100 has been processed and closed. Later, service target 200 is attached in a closed state. When service target 200 is attached, it inherits the start time from service target 100 and the up time and down time calculated by service target 100. The measurement record is removed from service target 100. Milestones are not created from the new service target 200 because the service target 200 is closed. Service target 200 is evaluated using the calculated time from service target 100, but using the goal from service target 200.
29
In cases when a ticket is submitted into the system later than when it was requested, such as for a phone request, the service target needs to be effective from an earlier time. When the service target starts, the start time is taken from a field on the application form that stores the time when the Start When measurement criteria is met. If this field is blank, it takes the system time as the start time if the Start When measurement criteria are met. To specify the Start Time for the service target, it must be configured in the SLM:ConfigDataSource form. Specify the field name that holds the start time information from the application form in the Start Time for Time-Based service targets field on the SLM:ConfigDataSource form. Measurement calculation uses the contents of this field as the Start Time of the measurement instead of timestamp of the ticket submission.
Reopen request
Reopening a request is the default behavior in request-based processing and does not need to be configured. If a request is resolved, or meets its stop condition, then its measurement goes to a closed state with either a Met or a Missed status. If the request is opened again, that is opened after being resolved or closed, it is moved back to an open state, and a new measurement record is created that finds a previously closed measurement record and inherits its elapsed times and start time. The old record is deleted and the new measurement record becomes active. The old stop time is used to calculate the exclude time or the dead time between the measurement records. This time is not counted towards the completion of the SLO. If this behavior is not wanted, have safeguards that ensure that the ticket cannot be set to a state in which it is considered open again.
Reference Goal From Application form
A service target can use a goal specified on the application form instead of on the service target. This goal can be time elapsed in seconds, or a due date and time. This way the goal can vary based on the request that the service target attaches to. This is particularly useful for a change request where a planned completion date of the request can be the goal for a service target instead of a fixed goal. To specify the Reference Goal for the service target the administrator must configure it in the SLM:ConfigDataSource form by setting the Reference Goal for Time-Based SVTs or Reference End Goal for Time-Based SVTs field. This configuration can be turned on or off per service target by using the Use Goal defined on the Application Form field on the Goal tab of the service target.
30
Availability processing
X
Attached and Available
\ Y
Not Up and Not Down has a status of Unknown
Available
[
Unavailable
Z
Measurement child record Measurement child record Measurement child record
The Association filter is executed when the terms and conditions qualification is met. An entry is created in the SLM:Measurement form with MeasurementStatus set to Attached. Because there is always a status for an availability service target, the status changes to the appropriate state and the OverallStartTime is set to the current time. The Up filter is executed when the CI is available. When the qualification is met, UpStartTime is set with current time, and MeasurementStatus is set to In Process. The unavailability filter is executed the CI is when is unavailable. When the qualification is met, zD_UpStopTime is set with the current time.
Leaving an Unknown state leaves the CI either available or unavailable. The appropriate filter executes to update the measurement record with the status and time. NotDown filter is executed when the NOT (Unavailability) qualification is met, and zD_DownStopTime is set with the current time. In all these scenarios, a MeasurementChild record is created for each change in states. This record is required for SLA compliance calculations and to provide data for the Dashboard.
31
Performance-monitoring processing
Performance-monitoring service targets are evaluated by the collector (see the details below in the collector design section), but the results are stored in a database table that is visible from AR System as a view form. A record is created in SLM:Measurement to track each such service target and only the state changes are updated on this record. This enables the measurement form to keep track of the last known status of the service target and also have data about how long each state lasted each time. This is also used for triggering milestones.
X
Measurement Record created (When service target is saved)
\ Y
Data missing status of Unknown
Met
[
Warning Missed
Z
Measurement child record Measurement child record Measurement child record
Measurement form
For all types of service targets, the latest status of the service target measurement is available on the SLM:Measurement form. This form is used to track the state changes during the service target processing life cycle. The significant fields on this form are: Note: For an expanded list of fields, see the SLM processing module forms section. SVTInstanceIDCharacter field that uniquely identifies the service target that is being used to track this ticket. SLMIdCharacter field that uniquely identifies the service target that is being used to track this ticket, as seen on the definition of the service target, such as SLM00100. ApplicationInstanceIDCharacter field that uniquely identifies the ticket that is being tracked. SLA GroupThis field under the General tab determines which group the Measurement record belongs to OverallStartTimeThe inherited Start Time from the found Measurement record.
32
UpElapsedTimeTime that the service target has been tracked as Up. This is the time that is counted towards the time spent working on the ticket for this service target. UpTimeFinal accumulated time spent on the ticket. GoalSchedGoalTimeGoal of the service target. MeasurementStatusStatus of the service target. For a Request-based service target, status values are: AttachedWhen a service target is attached to a ticket. In ProcessWhen Measurement Start condition is met on the ticket. PendingWhen the Measurement Exclude condition is met. The time in this state is excluded from the final overall elapsed time calculation. Missed GoalWhen the service target Due datetime has passed, but the Stop qualification is not met. MetWhen the Measurement Stop qualification is met before the service target due date and time is passed. Missed When the Measurement Stop qualification is met after the service target due date and time is passed. DetachedWhen the ticket is modified so that the terms and conditions of the service target no longer match the ticket. InvalidIf the service target has been deleted, or wrong value populated in the ticket form, the value expected to match the configuration in the SLM:ConfigDataSource form.
Milestone processing
Milestones are an integral part of the SLM product because they help users take action before service targets and compliance targets are missed. Milestones can be defined for agreements and each type of service target, except compliance-only. The processing of milestones, such as when they trigger, is different in each case.
Request-based milestones
For Request-based service targets, milestones can broadly be the following types: Percentage of time from start or end of the measurement In this type of milestone, the specified percentage is converted into seconds, based on the goal hours and minutes. For example if the service target has a 2 hour goal, then a 50% milestone should trigger at 1 hour or 3600 seconds from start time of the measurement. The appropriate calculation of the number of seconds is done based on the percentage specified and whether it is from start or end of the measurement.
33
Hours and minutes from start or end of the measurement This type of milestone is very similar to the percentage of time, except that the milestone executes in a specific number of hours and minutes after the measurement start condition is met. Start, Stop or Exclude qualifications occurs on the Application form This is a very simple milestone where there is no time criteria are involved, but the milestone actions occurs as soon as any of the start, stop or exclude conditions are met by the request. Custom condition occurs on the Application form This is a simple milestone very similar to start, stop, or exclude qualifications. The only difference is that it executes based on a user-defined custom qualification. Each Request-based milestone generates one filter that executes on the Application form. The SLM:EventSchedule form is used to track the time for executing a milestone for time-based milestones. Every time a service target measurement starts for a request, such as if the OverallStartTime is changed on the SLM:Measurement form, an entry is created in the SLM:EventSchedule form with a due date and time for the milestone. An escalation monitors the entries in this form to make sure that the milestones execute at the correct time. When the milestone executes, the entry in SLM:EventSchedule is deleted.
34
35
Availability milestones
Availability milestones execute based on calculation of the cumulative availability percentage or down time of assets stored in the SLM:Measurement form. There are three options for Availability milestones, based on which milestone can execute: Availability PercentageA condition based on the Available %field on the SLM:Measurement form that can be specified for the milestone to execute, for example, Available % < 90. Down CountA condition based on the Down Count field on the SLM:Measurement form that can be specified for the milestone to execute. Down TimeA condition based on the Down Time field on the SLM:Measurement form that can be specified for the milestone to execute. Each availability milestone generates one filter on the join form between the SLM:Measurement form and the application form, for example,SLM:ServiceRequest_SLA.
Performance-monitoring milestones
Performance-monitoring service target milestones are based on how long the service target measurement has been in an Alarm (Missed) or Warning state. There are two types of milestones: Hours/Minutes from Alarm StartExecutes the milestone when the time specified has elapsed from when the service target measurement went into a missed state. When an alarm event occurs, that is the service target processor of the collector evaluates a service target and detects a missed state, it populates the DownStartTime and Missed status on the SLM:Measurement form. This triggers workflow to create an entry in the SLM:EventSchedule form for a due date and time of X hours and minutes from that time, where X is the milestone hours and minutes. Hours/Minutes from Warning startFollows the same logic as for the Alarm case, except it monitors when the service target measurement WarningStartTime field is set by the service target processor. In both cases, the milestone entries in the SLM:EventSchedule form have the due date and time for the milestone to execute, and are triggered by the same escalation as for request-based milestones.
Agreement/compliance milestones
For agreements, the milestones are triggered based on the compliance calculations. Here the types of milestones supported are based on each review perioddaily, weekly, monthly or quarterly. For each of these the following milestones can be triggered:
36
Compliance at riskThe milestone executes when the calculated compliance percentage is less than the compliance at risk field on the agreement. One filter is created on the SLM:SLACompliance form that monitors the value of the Met Percent field and compares it to the compliance at risk on the agreement to trigger the milestone. Compliance target missedThe milestone executes when the calculated compliance percentage is less than the target compliance on the agreement. One filter created on the SLM:SLACompliance form that monitors the value of the Met Percent field and compares it to the contents of the compliance target field on the SLM:SLADefinition form to trigger the milestone. Compliance percentage less thanThe milestone executes when the calculated compliance percentage is less than the value specified on the Milestone. One filter created on the SLM:SLACompliance form that monitors the value of the Met Percent field and compares it to the contents of the SLACompliancePercentage field on the SLM:Milestone form to trigger the milestone.
For example, for a SLA record with a review period of type Daily, an SLA compliance is created. This record will be updated every four hours to have the current performance of all the service target s under it. The next day, the current SLA compliance record is closed out and a new record is created. Every time the SLA compliance data is calculated, SLA compliance milestones are checked. If the milestone conditions are met, the actions are performed. A running total of the Impact Cost of each service target is calculated, based on the cost defined in the service target definition.
37
When the time of the review period is reached, the current SLA compliance record performs its final calculation and the record is closed out (MeasurementDone = Yes). The penalty or reward is calculated at this point and can be seen through Dashboards and reports. A new SLACompliance record is then created with the Start Time and Last Sample Time set to $TIMESTAMP$. If the agreement status is not enabled, compliance calculations will not take place.
Request-based calculation
The SLACompliance percentage for a Request-based service target is determined by the total count of the met measurement records, divided by all the resolved measurement records in that review period.
38
Records that have reached a status of Missed Goal are considered Missed.
Measurement record calculation Last Sampled Time Retrieve SLM:SLAComplianceHistory count from the last Calculate Now action. Count all Met records since Last Sampled Time and add to the values retrieved in the history Count all Missed records since Last Sampled Time and add to the values retrieved in the history. Push the new total to the history record. Calculate the Met percentage. Multiply by the service targets Weighted Contribution percentage. Keep a running summation of each service targets SLA compliance contribution.
The Impact Cost calculation is a summation of each Missed measurement records impact cost (SVTImpactCost). This running total is also kept in the SLM:SLAComplianceHistory record. Note: Request-based records might give inaccurate data for cases where measurement records are re-opened and the measurement had already been counted in a past review period.
39
Asset goes up
MeasurementChild
MeasurementChild
MeasurementChild
MeasurementChild
40
When using the MeasurementChild records to determine an availability service targets availability percentage, four scenarios that must be considered. These scenarios relate to how compliance calculations need to segment the MeasurementChild records to fit within the review period timeframe. For each scenario, the Impact Cost is calculated for each down MeasurementChild record. On the service target definition, the cost is defined in terms of Cost per Min. Because the down time tracked in MeasurementChild is kept in seconds, a conversion of the downtime is made to minutes. This value is stored in the TotalImpactCost field in the SLAComplianceHistory form.
41
MeasurementChild Records
In Progress
Scenario 1
Elapse Time of this completed record can not be used because the sampling time is after the start of this record Pending
MeasurementChild has started before the Last Sampled Time. Time for this segment is calculated from Last Sampled Time to the Stop time of this record.
Scenario 2
MeasurementChild is completed within this Calculate Now time frame. Elapse Time is used.
Scenario 3
This MeasurementChild record is still open and the Elapse Time has not been calculated. Calculate Now Date/Time
MeasurementChild has started after the Last Sampled Time but the record has not been completed. Time for this segment is calculated from Start Time to Calculate Now Date/Time.
Last Sampled Time
Scenario 4
MeasurementChild has started before the Last Sampled Time but the record has not been completed. Time for this segment is calculated from Last Sampled Time to Calculate Now Date/Time.
42
Compliance only
Because users can arrange their data in any method they choose and the AR System view form can take any shape, SLM defines fixed field IDs that reference database table fields. The following table lists fixed field IDs:
Field SLOResultsStatus Field ID 301378400 Field type Integer Field definition 0 = Met Not 0 = Missed ImpactCost EpochTimeSeconds 300834800 301643200 Real Integer Impact Cost of missing a transaction Time in seconds since 1970
MSP
The MSP feature allows SLM data to be segmented when for an environment with multiple tenants using one database. This is accomplished using the Row Level Access field 112. From the Contract object, users can associate a Contract to multiple agreements, but each contract can be tied to only one AR System group. The association record that ties the Contract object to these SLA objects must hold the group information.
Figure 10: Partitioning compliance data based on contract /customer
Agreement 98% compliance Daily and Weekly Field 112 = GroupABC;GroupXYZ Weekly Compliance Record for
43
By default, all agreements will have their field112 set to PUBLIC unless a contract is tied to it. When a contract with an AR System group is applied, the PUBLIC SLA compliance record is not deleted. The status of these records is set to closed by setting a flag to signify that the records will no longer be processed. On the Contract object, if the MSP group is changed, the existing SLA compliance records is closed out and, but not deleted. If the MSP group is changed again to meet an older designation, the old records will not be reopened. A new set of compliance records is created. When configuring a data source to enable MSP, users must define a field on the application form to holds group information. The content of this field is copied to the measurement records and permeated to the MeasurementChild records. SLA compliance records will only be able to access those associations and MeasurementChild records that have the same group ID.
44
SLM uses the business time commands provided by AR System to calculate the due date and the elapsed time on the SLM:Measurement form. These commands are:
Application-Bus-Time2-Assoc-Subtract Application-Bus-Time2-Assoc-Add Application-Bus-Time2-Assoc-Diff
See BMC Remedy Action Request System 7.0 Configuring guide for additional information on business time.
45
Data collector
The data collector is a component that runs on the same server as the SLM engine. It manages the collection points and to retrieve data from them. There can be only one collector.
Collection point
The collection point is a distributed component that is responsible for the collection of data. There can be one or more collection points, and each one can be installed on a separate server. A collection point can be installed on the same server as the collector. The collection point uses a pluggable architecture to allow data to be collected from multiple data sources.
Data store
The data store is the repository for data created by the collector. This includes configuration information about collection points, collection nodes, and system metrics. It also includes raw data values for system metrics collected from the collection points, and results produced by the service target processor from processing performance-monitoring service targets.
AR configuration interface
The AR Configuration interface is the user interface for configuring the collector module. This includes operations for adding, removing, and modifying collection points and collection nodes.
46
Plug-in functionality
Plug-in functionality is provided for the data collector to construct service targets and calculate service target compliance, and also to provide data source status information. The functionality includes: Configure data sources Supply KPI landscape information Collect data Check data source status
Collect data
The plug-in returns a list of data samples for the specified KPI and time interval. If no data is found an empty list is returned. Depending on the data source, the plug-in may implement a mechanism to retain history data samples for certain time periods. The data returned has to be in numeric form. If the KPI in the data source contains status information, such as OK, WARNING, ALARM and so on, a status map is used to convert the status code from the data source to one of the four status values used in SLM (OK, WARNING, ALARM and OFFLINE).
47
Communications
The collector and collection point communicate using HTTP and HTTPS. The protocol is similar to standard SOAP web services, but is a proprietary mechanism. For greater network security, the collector initiates all collector and collection point communication. The collection point uses an embedded Jetty server for handling communication requests. By default, the server uses HTTP on port 7089. You can configure the port by modifying the port property in the Service.properties file on the collection point.
Authentication
Communication between the collector and collection points uses a mechanism similar to web session management to handle authentication. When a collection point is added to the collector, an authentication key is given to the collection point. Each time the collector tries to connect to the collection point, it must provide the same key to gain a session key. This session key must be provided with each request, otherwise the request is denied. This mechanism prevents effective communication with the collection point without knowledge of the authentication key.
Encrypted communication
Using HTTPS performs encryption of the data. Although HTTP is the default communication method, HTTPS communication is enabled by installing a security certificate to the server and modifying the Service properties file on the collection point. To use HTTPS as the communication method, the collector must know to use HTTPS. This is configured as part of the connection properties for the collection point.
48
Add collection nodeEach data source to collect data from will become a node, such as Patrol agents on different servers. A node is associated to a collection point that communicates with it using the plug-ins for that node type. Configuring a node typically includes providing a data source user name, password, communication protocol, port, and so on. Discover KPIsAfter a collection node has been configured for a collection point, you can then initiate discovery to find all the available KPIs at the node.
Figure 12: Discovery Operation Timing diagram
AR System UI
1. Send
Collector
2.
3.
5.
Data collection
Configuration
The configuration of the metrics to collect is done by the service target manager (documented separately). The service target manager analyses the expression of each service target and sets the startTime field of any required system metric to a non-zero value. The value used will be the earliest startTime of any of the service targets that use the system metric. This non-zero value indicates to the collector that the metric must be collected. Only values that occur after the startTime field will be collected.
Scheduling
The collector scheduler controls the collection of metric values. Each collection node defined in the system has a corresponding CollectionNodeScheduleJob that controls the collection from the node. These schedule jobs are instantiated when the collection node is created. The jobs are scheduled to run at regular intervals. The interval for each job is independent and is controlled by the ScheduleFrequency
49
property of the collection node entry. When a collection node is created the ScheduleFrequency is undefined (0), the scheduler assigns a default interval of 300 seconds (5 minutes). The scheduler attempts to make sure that the scheduled jobs for different collection nodes do not overlap by offsetting the start time for each schedule. If there are many different jobs with different schedules, it might not be possible to make sure that the schedule jobs never overlap. In this case, one of the jobs might be delayed.
Collection
When the CollectionNodeScheduleJob runs, it queries the system metric table in the database to determine which metrics must be collected from the collection node. Any metrics from the node that have a StartTime value greater than zero will be collected. For each metric to be collected, the scheduled job determines the time range of the data to be collected. The start time for the collection period is typically the greater of the last timestamp for the metric and the StartTime for the metric. The start time might also be constrained by the missing data limit or the history-supported limit. These limits prevent an attempt to collect data for a period that has already been judged to be missing data, or for a period that is beyond the limit of available history data from the node. See the following section for more details about missing data. The end time for the collection period is typically the lesser of the current time and the start time + MaxCollectionInterval, where MaxCollectionInterval is 1 hour by default. This makes sure that the amount of data requested in a single collection job is constrained. The collection job compiles this list of metrics and their associated start and end times, and sends the request to the collection node. The plug-in then retrieves the requested history data from the collection node and returns the results to the collector. The results are processed by filling any missing data gaps and saving to the metric numeric value table in the database. Finally, any component that has registered to be notified of incoming data is signaled with a message that contains a list of the metrics collected, along with the start and end times of the collected data.
Status mapping
Any collected value that is of type status must undergo a status mapping procedure. This procedure allows each data source type to define a separate set of status levels. These are then mapped to the standard set of status levels used within the SLM application. The mappings are defined per collection node and are stored in the status_map mapping table in the database. When the collector receives a value of type status, it performs a lookup from the mapping table to convert the external data source status value to the internal SLM status value.
50
Missing data
The collector provides data to the service target processor in a way that allows the processor to recognize conditions where data is not available. In retrieving data values, the collector and collection points make sure that all data is collected in order. The collector will not ask the collection point to retrieve data with a timestamp earlier than data already collected. Any gaps in the retrieved data are presumed to be where data is unavailable or missing, and will not be requested again. When a missing data situation is recognized by the collector, it pads the section of missing data with guessed values that indicate the missing data condition to the service target processor. These guess values are identified by the isGuessed field of the value record being set to 1. In most cases, the value used in the guess is the same as the last collected good (non-guessed) value. Where no previously good value exists, the value of the guess is set to -111111. In determining whether a missing data condition exists for a particular metric, a time period known as the MissingDataInterval is used. If no value has been received for an amount of time equal or greater than the MissingDataInterval, then a missing data guess will be created. The MissingDataInterval is set to be the same as the frequency of the system metric. If the frequency of the system metric is not defined (that is, it is 0), then MissingDataInterval is set to be the same as the collection frequency of the collection node.
Web services
The data collector provides web services to allow AR System (or other external entity) to interact with the collector. These web services use the SOAP protocol and are provided using the Apache Axis SOAP framework (see http://ws.apache.org/axis/).
51
The service target processor stores service target results in the selected repository. The service target processor produces the following output: Service target ID Service target guessed value flag - Actual versus Guessed value. Service target result status Ok or Not breached (0) Warning (1) Breached (2) Unknown (3)
Service target valueThis is not available for guessed data. Missing Data ruleIf the data has been guessed, the missing data rule is set to the rule selected by the user. Cost Timestamp
52
AVG(Node1/Exchange/ Exchange /RoundTrip, Node2/Exchange/ Exchange /RoundTrip, Node3/Exchange/ Exchange /RoundTrip, Node4/Exchange/ Exchange /RoundTrip, Node5/Exchange/ Exchange /RoundTrip)
Design
The service target manager maintains a pool of service targets that are being actively processed, a mapping of the system metrics that these service targets are interested in and a collection of service target processors. Because the service target manager is the coordinator between the collector and the service target processor, it uses a singleton design and strives for efficiency by making decisions as quickly as possible, and then delegating. To accomplish this the service target manager is multi-threaded and is therefore carefully synchronized to avoid data corruption and
53
deadlock states. The design accommodates multiple service target processors running concurrently. In SLM 7.0 only a Single service target processor is used.
Startup
On startup, the service target manager calls the AR System API to retrieve all threshold service targets and load them and their corresponding goals. On loading each service target, the data store is checked to see if metrics exist and all available metrics are retrieved and set for each service target that requires them. Any service targets that are ready to be processed are set in the processing queue and an event is triggered to start service target processing. Any metrics not currently being collected are set to be collected so the data will be available from the Collector for future processing. The service target manager then enters its main loop for regular processing.
General processing
After startup, the service target manager will begin waiting for messages from the collector for new data that has been collected. As the data arrives the data is processed and the data is applied to the service targets that are waiting. The service target manager then checks for any service targets that are ready to be processed and notifies a service target processor to run the calculations for the service target.
54
Parameter has both numeric and status data, while Instance and Application can have only status data.
Data collection
Numeric metric data is retrieved from Agent history directly. Because Agent does not store status in its history table, a local status data collector is scheduled for each targeted Agent to retrieve status metric data every minute. It keeps data samples up to one hour, or sixty data samples if the number of samples in one hour is less than sixty.
The collection frequency and the data retention time can be configured in the patrol_datasources.xml found under the collection point install dir /config:
<!-- freqency to collect status sample, default to 60 seconds --> <property-def name="status-collection-freq" type="string" defaultValue="60" hidden="true"/> <!-- how long status sample will be kept, default to 3600 seconds --> <property-def name="status-collection-window" type="string" defaultValue="3600" hidden="true"/> Status collector
The BMC Performance Manager plug-in employs a status data collector to regularly retrieve status parameter values from Patrol agents. This is required because Patrol agents do not store historical information for parameter status. A status metric is added to the status data collector the first time a getData request is received for the metric.
55
The status data collector has a mechanism to automatically detect and remove unused status metrics. The algorithm keeps track of the metric idle time to determine if a metric is not used. If the metric has not been collected for a period up to two times the data retention window, the metric gets removed from the collector.
Agent security
If a targeted Agent is running at a specified security level, a dedicated collection point must be installed on a separate machine to communicate with Agents at the same security level. Before a collection point is installed, the host machine must be configured to support Patrol agent security. One way to do this is to install a classic Patrol agent with the desired security level using the BMC common installer. This sets up the required Patrol security environment. After the installation, the Patrol Agent is not required to run.
Discovery finds the hierarchical structure of Patrol Express infrastructure elements, which is
Element |_ Application |_ Instance |_ Parameter or Application |_ Instance |_ Parameter
There can be a maximum of two levels of Application. Only Parameter can have numeric and status data.
Status collector
Numeric metric data is retrieved directly from Patrol Express. Status data is collected using the same mechanism as the BMC Performance Manager plug-in.
56
ART defines the following web services, which are used in the plug-in: sccsystemProvides an authentication method and simple utility methods. The plug-in uses it to establish a session to the ART server. sccentitiesService that provides read access to the two main entities: Project and Location. The plug-in uses it to build landscape information. sventitiesService that provides read access Monitors and Transactions. The plugin uses it to build landscape information. svdataThe plug-in uses this service to query transaction data.
Discovery
Discovery builds the ART landscape into the following hierarchical structure: Project
|_ Transaction |_ ClientSet Location |_ Measure |_ ServerSet Location |_ Measure
SNMP Trap
The SNMP Trap plug-in does not send request to a data source, but instead listens for incoming SNMP traps from SNMP agents. The plug-in is a SNMP manager that runs at port 162 when loaded by the collection point. If two collection points are installed on the same machine, one of the SNMP plug-ins must change its port.
SNMP Trap version
The SLM 7.0 implementation of the plug-in can only accept v1 and v2c traps. Version v3 traps are not supported.
Discovery
The plug-in loads landscape information from the snmp.conf configuration file. Every time the discovery method is called, snmp.conf is loaded, thus you do not
57
have to restart the collection point to discover new landscape information after snmp.conf is modified. The following is a sample snmp.conf file:
# Default status mapping: 0-ok 1-warn 2-alarm 3-offline # For snmpv1 trap, TrapID is "EnterpriseID GenericTrapNumber SpecificTrapNumber" # For snmpv2c trap, TrapID is "snmpTrapOID" # Format 1: label; status/numeric; TrapID; value; TrapID; value;... # Format 2: label; status[:StatusMapping]/numeric; TrapID; parameterOID; # where [:StatusMapping] is in the form of :parameterValue:statusValue:... # where statusValue is 0(OK),1(WARN),2(ALARM), or 3(OFFLINE) # for example, map "on" to OK and "off" to ALARM :on:0:off:2 SNMPAgent 172.18.53.130 172.18.52.141 localhost # v1 trap, linkup - ok, linkdown - alarm linkStatusV1; status; 1.3.6.1.4.1.1824 2 0; 0; 1.3.6.1.4.1.1824 3 0; 2 # v2 trap linkStatusV2; numeric; 1.3.6.1.6.3.1.1.5.3; 100; 1.3.6.1.6.3.1.1.5.4; 200 # Format 1 status example enterpV1; status; 1.3.6.1.4.1.1824 6 1; enterpV2; status; 1.3.6.1.4.1.1824.0.1;
0; 1.3.6.1.4.1.1824 6 2; 0; 1.3.6.1.4.1.1824.0.2;
2 2
# Format 2 status example statusV1; status:on:0:off:2; 1.3.6.1.4.1.1824.1 6 0; 1.3.6.1.4.1.1824.1.0.0.1; # Format 2 numeric example numericV1; numeric; 1.3.6.1.4.1.1824.1 6 0; 1.3.6.1.4.1.1824.1.0.0.1; numericV2; numeric; 1.3.6.1.4.1.1824.1; 1.3.6.1.4.1.1824.1.0.0.1; SNMPAgent wqiu-hou enterpV1; status; 1.3.6.1.4.1.1824 6 1; enterpV2; status; 1.3.6.1.4.1.1824.0.1;
0; 1.3.6.1.4.1.1824 6 2; 0; 1.3.6.1.4.1.1824.0.2;
2 2
The entries in the file tell the plug-in how a system metric is mapped to one or multiple traps. For example, if a SNMP trap collection node is created with localhost in the agent IP field, the following parameters are discovered in the landscape: linkStatusV1 linkStatusV2 enterpV1 enterpV2 statusV1 numericV1 numericV2
If the agent IP in the collection node cannot be matched in the snmp.conf file, the landscape for this collection node will be empty. The snmp.conf file can be updated while the collection point is running.
58
The SNMPv1 trap and SNMPv2c trap are different in terms of trap identification. To uniquely identify a trap, a TrapID is defined as: For SNMPv1:
TrapID = EnterpriseID[space]GenericTrapNumber[space] SpecificTrapNumber Example: 1.3.6.1.4.1.1824 5 0
For SNMPv2c:
TrapID = SNMPTrapOID Example: 1.3.6.1.4.1.1824.1.0.0.1
The plug-in is designed as a client to communicate the Impact Manager instance by connecting to the Impact Manager Web Service (IIWS) server and accessing BMC II Web Services. IIWS server is part of the Impact Manager installation. Before running the Web Service API, make sure the IIWS server is correctly configured. The cell configuration entries in the mcell.dir file of the %installDirectory\mcell directory provide the cell information that the SIM plug-in uses to make connection.
Status collection
A background process collects the status of the target CIs every minute from the moment a CI is registered. A CI is registered when the collector queries its status for the first time. The criterion to deregister a CI and thus stop status collecting is that no data request has been made to the CI in a certain period of time (the default is two hours). The plug-in keeps one hours data in an internal data reservoir for each CI. Any data points beyond the one-hour window get purged. The elapsed time is the time between the most current data point and the oldest data point.
SIM Status Mapping
SIM defines nine types of status: None, Blackout, Unknown, OK, Info, Warning, Minor, Impacted, and Unavailable. SLM can only have four status values: OK, Warning, Alarm, and Offline. The default mappings between those values are defined in the sim_datasources.xml file of the collectionpointInstallDirectory\config directory.
59
The SLM plug-in utilizes web services in txmsystem, configuration and statistics. No events web services are used. TM plug-in performs the following: Discovers the transaction management metrics landscape. Collects either status or numerical values of the metrics.
TM landscape
The TM landscape has three classes: service, activity and transaction. ServiceA business service can have one or more sub-business services. Business services with no sub-business services can contain business activities and/or transactions. ActivityA business activity can be a member of one or more business services. A business activity can have one or more transactions. TransactionA transaction can be a member of one or more business activities and/or business services. A transaction can also be a member of a business service without being a member of a business activity. Landscape StructureThe TM plug-in discovers all services, activities and transactions that are visible to the user. It arranges the landscape in a hierarchical tree that lists all first level services. All sub services are promoted to the first level. The second level lists activities and/or transactions and the third level lists transactions under activities.
Data collected
EndUser is the response time of the end user and BackEnd is the response time of the back end. They are numeric values in seconds. Services, Activities and Transactions all have status values -- OK, Warning or Error.
Status mapping
The TM status can be OK, Warning or Error. SLM have four status values. They are: OK, WARNING, ALARM and OFFLINE
60
The default mappings between those values are defined in the txm_datasources.xml file of the collectionpointInstallDirectory\config directory. The following is an example of the status mapping section in the file:
<property-def defaultValue="0" name="STATUSMAP:0:OK" type="string" hidden="true"/> <property-def defaultValue="1" name="STATUSMAP:1:WARN" type="string" hidden="true" /> <property-def defaultValue="2" name="STATUSMAP:2:ERROR" type="string" hidden="true" />
It maps TM OK to SLM OK and TM Warning to SLM Warning and TM ERROR to SLM ERROR. There is no OFFLINE mapping.
61
See the following figure for the data model for the back-end forms or meta-data used by the SLM engine and how it translates to an auto-generated filter.
Figure 13: SLM Engine backend meta-data objects
SLM:RuleEventData SLM:RuleConditon PK InstanceId InstanceName SLA_RuleConditionType Condition PK InstanceId InstanceName EventCreate EventModify EventDelete EventRetrieve EventMerge
In looking at an auto-generated filter through BMC Remedy Administrator, each part of the filter can be mapped to data in one of the back-end forms shown in Figure 13.
62
Form Name in SLM:Object InstanceName in SLM:RuleDefinition ARExecutionOrder in SLM:RuleDefinition Association record between Rule InstanceId and ID on SLM:Object
Action record in SLM:RuleAction Association record between Rule InstanceId and InstanceId of
RuleAction
Condition field in SLM:RuleCondition Association record between Rule InstanceId and InstanceId of RuleCondition
RuleEventData record in SLM:RuleEventData Association record between Rule InstanceId and InstanceId of RuleEventData
63
(field 179) from this form, you can search on the SLM:Association form to view the event, condition, action and object associated with this rule.
Figure 14: Associations look for a rule definition
Rule actions
Actions are somewhat different from other associations to a rule because a sequence of actions can be associated to one rule. The action forms are designed so all actions are derived from the SLM:Rule Action base action form. The main actions supported are: Set Value Action o o o Set Value Set Fields Push Field
An action of type Action Sequence is used internally to form a list of actions in a sequence, that is a set of milestone actions. The Alert action is implemented internally as a Push Field action that pushes the alert data in the SLM:RuleActionNotifier back-end form, which in turn sends an alert or email.
64
Join Form
SLM:RuleActionRunProcess PK InstanceId InstanceName Run ProcessCommand
Join Form
SLM:RuleActionSetValue PK InstanceId InstanceName SetValuesMode DesitnationServer SourceServer DestinationQualification SourceQualification SLM:RuleActionSetValueItems PK InstanceId PK SVA_InstanceId PK RecordStatus InstanceName FieldId FieldValueExpression
65
Supplementary information
This section contains information about SLM tables.
AGGREGATION_SCHEDULE table
This table holds the data aggregation intervals.
Column ID TIMESTAMP SCHEDULE Description Unique identifier PK Time last run in seconds since epoch. Data aggregation schedule Data type Char Integer Char Nullable No No No Unique Yes No Yes
66
COLLECTION_NODE table
This table holds the collection node definitions.
Column Description Data Type ID CPID Nullable Unique
Unique identifier PK Id of collection point that this collection node belongs to. FK Used by SLM as PK is same as ID Unique name for CN Time delta that represents how much history data is available from this CN Time that must elapse from last received metric value until the data is considered missing Plugin type ART SNMP etc. How often data is requested from by the collector from the collection point Data needed to connect to the underlying application represented by this CN Is the CN active Code representing the state of this CN Text associated with the status
Char Char
No No
Yes No
REQUESTID
No No No
Yes Yes No
NAME HISTORYLIMIT
MISSINGDATALIMIT
Integer
No
No
Char Integer
No No
No No
NODECONNECTION PROPERTYSTRING
Char
Yes
No
ISENABLED STATUS
No No No
STATUSMESSAGE
67
COLLECTION_POINT table
This table holds the collection point definitions.
Column Description Data Type Nullable Unique
Unique identifier PK Used by SLM as PK is same as ID Unique name for CP Data needed for the collector to connect to the CP Private key for data communication between CP and collector Is the CP active Code representing the state of this CP Text associated with the status
No No No No
AUTHKEY
Char
Yes
No
No No No
68
METRIC_AGGREGATION table
This table holds the result of data aggregation.
Column Description Data type Nullable Unique
ID SMID
Unique identifier PK Id of system metric that this entry is for FK Beginning of aggregation time period End of aggregation time period Minimum value for time period Maximum value for time period For numeric data this is the average and the mode for status data Data type of the system metric numeric or status Number of times the metric was seen in the time interval Unique schedule that defines the collection interval for this aggregation entry
Char Char
No No
Yes No
STARTTIME
Integer
No
No
No No No No
TYPE
Char
Yes
No
OCCURANCES
Integer
No
No
SCHEDULE
Char
No
Yes
69
METRIC_NUMERIC_VALUE table
This table that holds the data values that are being collected.
Column Description Data type Nullable Unique
ID SMID
Unique identifier PK Id of system metric that this metric value is for. FK Time that this metric was generated in UTC Metric data type numeric or status Actual data value Did we generate a guessed value
Char Char
No No
Yes No
TIMESTAMP
Integer
No
No
No No No
No No No
70
SLO_RESULT table
This table that holds the result of the service target Engine evaluating the service target expression and applying Goals and missing data rules.
Column Description Data Type Nullable Unique
Unique identifier PK Used by Slm as PK is same as ID Time that this result is for The result of the expression evaluation Was missing data present for any KPI used in the computation The cost calculated for this outage The result of the computation from the service target Engine The ID of the service target that the result is for FK Text representation of the timestamp Name of the service target that this result is for The actual rule that was applied if missing data was used in the expression evaluation
No No No No
Yes Yes No No
MISSINGDATA RULEAPPLIED
Integer
No
No
IMPACTCOST VALUE
Double Double
No No
No No
SLOID
Char
Yes
No
TIMEDATESTR NAME
Char Char
Yes Yes
No No
MISSINGDATA RULE
Integer
Yes
No
71
SLO_TIMESTAMP_MAP table
This table holds information about each service targets next processing time.
Column Description Data Type Nullable Unique
ID SLOID
Unique identifier PK Id of the service target that this entry is for. FK Time that the next service target result is for.
Char Char
No No
Yes Yes
TIMESTAMP
Integer
No
No
STATUS_MAP table
This table that holds the mapping of external application statuses to the internal representation.
Column Description Data Type Nullable Unique
Unique identifier PK Id of CN that this mapping is for. FK Status value in source Source status label Status value used internally
No No No No No
Yes No Yes No No
72
SYSTEM_METRIC table
This table holds the discovered KPI definitions.
Column Description Data type Nullable Unique
ID CNID
Unique identifier PK The collection node that this system metric was discovered from. FK Used by SLM as PK is same as ID The complete and unique name for the KPI that this system metric represents Does the KPI represented by this system metric have historical values Was missing data present for any KPI used in the computation The cost calculated for this outage The time when this system metric was first requested from the collection node NAME0NAME9 represent the flattened and non-unique (Collection node data is not included) presentation of the FULLNAME. Used by SLM to display as a tree in the expression builder.
Char Char
No No
Yes No
REQUESTID FULLNAME
Char Char
No No
Yes Yes
HASHISTORICAL
Integer
No
No
TYPE
Integer
No
No
FREQUENCY STARTTIME
Double Double
No No
No No
NAME0
Char
Yes
No
No No No
73
Column
Description
Data type
Nullable
Unique
NAME4 NAME5 NAME6 NAME7 NAME8 NAME9 ISENABLED LASTDISCOVERY TIME DISCOVERYFAIL COUNT Is this system metric available for use. Last time the collector was able to discover this system metric. Number of times the collector was unable to discover an system metric
No No No No No No No No
Integer
No
No
74
SLM:Measurement form
Field name SVT_InstanceID Object ID 1 ApplicationInstanceID Object ID 2 GoalSchedGoalTime SVTDueDate OverallStartTime Field ID 490008000 490008100 490009000 490009100 300272700 300364900 300364400 Description Unique GUID used internally used to identify an service target. Object ID of the service target form. Request ID or any unique field used to identify the application records, such as instanceId from Incident. Object ID of the application form name. Stores the Goal Time, in seconds, as a copy from the Goal field on the SLM:Goal Schedule form. Stores the Due Date/Time by adding the OverallStartTime and the GoalSchedGoalTime. Stores the initial start time of a request. For example, OverallStartTime= 8/3/2004 3:03:03 PM, which is the time when the initial Start When Qual is met in the request. Stores the stop time of a request. For example, OverallStopTime= 8/8/2004 3:03:03 PM, which is the time when the Stop When Qual is met in the request. Stores the length of time between the start and stop time of a request. For example, if OverallStartTime=8/3/2004 3:03:03 PM, and OverallStopTime = 8/8/2004 3:03:03 PM., OverallStopTime= 8/8/2004 3:03:03 PM. Because OverallElapsedTime = OverallStopTimeOverallStartTime, OverallElapsedTime is 259200 seconds (3 days). Stores the starting of the exclude time of a request. For example, DownStartTime= 8/5/2004 5:05:05 PM, which is the time when the Exclude Qual is met in the request. Stores the stopping of the exclude time of a request. For example, DownStopTime= 8/5/2004 6:05:05 PM, which is the time when the NOT(Exclude Qual) is met in the request. Stores the total Exclude Time of a request. For example, DownStartTime= 8/5/2004 5:05:05 PM, and DownStopTime = 8/5/2004 6:05:05 PM. Because DownElapsedTime = DownStopTimeDownStartTime, DownElapsedTime is 3600 seconds.
OverallStopTime
300364500
OverallElapsedTime
300436500
DownStartTime
300364600
zD_DownStopTime
DownElapsedTime
300364800
75
Field ID 300440300
Description Stores every start time of a request. For example, UpStartTime= 8/5/2004 5:05:05 PM, which is the time when the Start When Qual is met in the request. Stores the stopping of the start time of a request. For example, UpStopTime= 8/5/2004 6:05:05 PM, which is the time when the NOT(Start When Qual) is met in the request. Stores the total Up Time of a request. For example, UpStartTime= 8/5/2004 5:05:05 PM, and UpStopTime = 8/5/2004 6:05:05 PM. Since UpElapsedTime = UpStopTime UpStartTime, then UpElapsedTime will be 3600 seconds. Stores the length of time between Start and Stop Time of a request, excluding the Exclude time (Down time). For example, OverallElapsedTime = 120 seconds, and UpElapsedTime = 90 seconds. Because UpTime = UpElapsedTime, UpTime is 90 seconds. Stores the length of time between GoalSchedGoalTime and UpTime. For Request-Based, it stores the time when MeasurementStatus=Missed Goal. For example, if MissedGoalStartTime= 8/5/2004 5:05:05 PM, it is the time when the MeasurementStatus=Missed. Stores the progress(status) of a service target for a request. The status can be Attached, In Process, Pending, Met, Missed, Invalid, Missed Goal, or Detached. Stores the progress (status) of a measurement. The status can be either Yes or No. The status is set to Yes when Stop When Qual is met Keeps an asset or service available during a certain percentage of time. For example, IT commits that a group of servers will be up and running 90 percent of the time for a period of six months. Tracks the number of times that an asset or service was unavailable. The goal of the service target is not to exceed a certain number of down occurrences. For example, an asset cannot be down for more than five times in a period of six months. Tracks the duration that an asset or service was unavailable. The goal of the service target is not to exceed the committed amount of down time. For example, the service target can track the number of hours and minutes that an asset has been up and running or down and non-functional.
zD_UpStopTime
UpElapsedTime
300440400
UpTime
300436600
300365300 301491900
MeasurementStatus
300365100
MeasurementDone
300364200
Availability%
300433200
AvailabilityDownCount
300450800
300497500 300497600
76
SLM:SLACompliance
Field Name CalculateNow CalculateNowDateTime CalculateNowDateTime_i nt CommentAddedText ComplianceAtRisk ComplianceStatus ComplianceStatusPrevio us ContractId Field Id 300425200 301496300 301578000 301922500 301470400 301553000 301922200 301136800 Description Flag used to trigger the start the compliance calculation Date/Time value of when the calculation is done Integer date/time value of when the calculation is done Comments from the dashboard Percentage value from the agreement definition of when the compliance is considered at risk. Possible status are: Compliant, At Risk, and Breached http path to the location of the icon to signify the previous status of the compliance. ID on the contract for which this compliance is created for. There will be a compliance record per Contract and per agreement Contract name for which this compliance record pertains to Current server used for the reference table for compliance only table. Shows the review period frequency: Daily, Weekly, Monthly, and Quarterly Instance of ID of the compliance record. This value is referenced by the ComplianceHistory record. Temp variable used to store values for calculation. Temp variable used to store values for calculation. Log in information to send SIM events.
ContractName CurrentServer EventFrequency instanceId Interval Met Count Interval Missed Count keywordCnc keywordDelimiter keywordEvent keywordEventNew keywordSlot keywordSlotList Last Sampled Time LastSampledTime_int LastSLAComplianceCalc
301801800 301762100 301363300 179 300497100 300497200 302255800 302256300 302255900 302256000 302256100 302256200 300835500 301577900 300575400
The last time the compliance was done. Used by the compliance logic to determine the time slot for the next calculation Signifies if this is the first compliance value as used by the Dashboard
77
MeasurementDone Met Count Met Percent Missed Count Missed Percent objectId2 Path ReferenceForm ResetNow ReviewPeriodEndTimeSt amp
Yes if the compliance record is closed. Count of the all the met tickets for ticket-based service targetss Calculated compliance percentage Count of the all the missed tickets for ticket-based service targetss Calculated compliance for the missed percentage Contract Instance ID Location in the tree of the agreement for which the compliance record pertains Reference from for the compliance only. It will look to this form for data. Flag to signal that the compliance record is ready to be closed and to created another record for the next review period Review Period End TIMESTAMP is the total time in seconds of the review period. Used to enable Performance-Monitoring service targets to be calculated in descending percentage from 100%. InstanceId from the review period used for this compliance record Review period name from the review period used for this compliance record Goal from agreement for compliance value. If lower than this value, the compliance is said to be breached. ID of the agreement for this compliance record Category of the agreement: Service Level Agreement, Operational Level Agreement, or Underpinning Contract Instance Id of the agreement for this compliance record Name of the agreement for this compliance record Path for the location of the agreement in the tree control object Comments added from the dashboard
ReviewPeriodInstanceId ReviewPeriodName SLA_Performance Goal SLA_SLA ID SLA_SLA Type SLAInstanceID SLAName SLAPath SLMCommentsComment SLMCommentsDate SLMCommentsDetail SLMCommentsGroup SLMCommentsPerson
301494900 300501400 300316100 300314700 300260900 490008000 300411500 301593800 300452100 300426900 300442700 300411600 300442600
78
SLMDescription SLMStatus SLMType slotListDelimiter StartTime StartTimeTIMESTAMP StopTime Total MetMissed Count TotalImpactCost UnknownTime
300260300 300314900 301724500 302256400 300365600 301804400 300365700 300450300 301539300 301754300
Description text from the agreement Status from the agreement Type from the agreement Used for logging to SIM to send then the changed SLM status Time the compliance was created Start Time as an integer Time the compliance record is closed. Total number of tickets counted for the current review period Total cost of all the service targets in this review period Time from the MeasurementChild records that are considered Unknown
79
SLM:ServiceTarget form
Field name AlarmOperator AlarmStatus Field ID 301474900 301475100 Description Operators that apply to the Alarm value. List of Alarm status values for status KPIs: OK, Warning, Alarm, or Offline. Data Source: The application form for request-based and availability Status of the filters built: Built Successfully, Could Not be Built, Build In Progress. Business Entity ID for the selected Entity. Name of the selected Business Entity. ID that points to the folder that the service target belongs to in the SLM:Category form. Impact Cost per minute of service target being missed.
Applies To
300523400
BuildStatus
300543500
Cost
300462600
DataMissedAfterThisNumberOfMinutes DataSourceName
301465400 300260200 Form name corresponding to the Applies To from the Config Data Source. Form name corresponding to the Applies To from the Config Data Source. Date and time when to start the service target processing. Qualification to specify when the time measurement should be excluded from the elapsed service target time.
DataSourceNameTrunc
301450300
EffectiveFrom
300272100
ExcludeQualification
300273200
FieldContainingBusinessHoursFieldID
300504700
80
Description
Selection field that maps to the internal allowed goal types: Request-based, Performance-Monitoring, Availability and Compliance-Only. Value of the selected KPI that defines when service target will be Missed. Value of the selected KPI that defines when service target will be Warning. Unique GUID identifying each service target. Holds the KPI information used to create the KPI expression.
GoalValueAlarm
301263300
GoalValueWarning
301263200
instanceId
179
Description of the Measurement template. A pre-defined measurement template that can be selected instead of entering the start, stop, and exclude qualifications. Unique ID (GUID) of the template.
MissingDataHours MissingDataRule
300477200 301465300 Defines the service target status if no data is received to evaluate the target for performance monitoring. Object ID of the service target form as registered in the SLM:Object -
objectId
490000100
81
Field name
Field ID
Description
SLM_SLODEFINITION form
Enables the qualification builder to access another form to launch when the user clicks the Define button.
301387400 301387500 300260400 301362600 301473300 Specifies if the measurement should restart when a certain condition is met. The restart qualification is defined on the Data Source.
301472900 300695300 300478200 Specifies service targets in the same group. A category of Service Level Agreement, Operation Level Agreement, or Underpinning Contract. Detailed description of the service target. User defined Goal descriptions, configured in the Configure Goal Type option in the Administrator Console Unique generated ID, such as SLM00100. Settings of Enabled, Disabled, or Invalid. Qualification to specify when to start the
SLACategory
300260900
SLMDescription SLMGoalType
300260300 300315600
82
Field name
Field ID
StartTimeforRequestBasedSVTsFieldID StopQualification
301270100 300273100 Qualification to specify when to end the service target time measurement. Single goal time in hours Single goal time in minutes A qualification or expression that defines the criteria for the data source instances that the service target applies to. The name describing the service target.
Used to take the goal definition from a field on the application form instead of from the service target. The field is configured on Data Source. Goal for Service target to be met. Hours and minutes for Request-based, Status or numeric values for PerformanceMonitoring. Can be a single goal or a Schedule. Used to take the start time of the service target measurement from a field on the application form as configured on the Data Source.
UseGoalCostSelection
300431700
UseStartTimeAsDefinedOnTheAppFormSel
301563900
83