Welcome to TechNet Blogs Sign in | Join | Help

The tool linked in this article allows you to view and configure the data warehouse data retention policies configured within your Operations Manager DW.

Follow the instructions below to use.

Prerequisites

Operations Manager 2007 SP1

Operations Manager 2007 Reporting SP1

Installation

Download the attached zip file and copy the required version of the file either x86 or x64 to a local directory such as “c:\dwdatarp\”

Usage

·         To view dwdatarp.exe usage instructions run:
c:\dwdatarp\dwdatarp.exe

 

·         To view current Data Retention settings run:

c:\dwdatarp\dwdatarp.exe –s “dw servername” –d “dw databasename”


example:  C:\dwdatarp>dwdatarp -s opsmgrsp1 -d OperationsManagerDW

 

·         To set Data Retention for a particular dataset run:

c:\dwdatarp\dwdatarp.exe –s “dw servername” –d “dw databasename” – ds “dataset name” –a “aggregation name” –m “days”

 

example: C:\dwdatarp>dwdatarp -s opsmgrsp1 -d OperationsManagerDW – ds “Performance data set” –a “Hourly aggregations” –m 399

Notes:

1.        The server with dwdatarp.exe installed must have access to the OperationsManagerDW along with the user running the tool.

2.       Updates are applied with immediate effect and data will be groomed during next grooming workflow.

 

This posting is provided "AS IS" with no warranties, and confers no rights.
Use of included utilities are subject to the terms specified at
http://www.microsoft.com/info/cpyright.htm

Daniel Savage

Program Manager | System Center Operations Manager

Posted Wednesday, May 14, 2008 1:19 AM by dsavage | 1 Comments
Filed under:

Attachment(s): dwdatarp.zip

Issue: If you try to install a secondary Management Server (MS) in a scenario with Root Management Server(RMS) and Reporting installed with Data Warehouse(DW) action account and Root Management Server action account (default action account) is the same, the secondary Management Server setup rolls back with an error in the setup log:

 

Error from log file:

**********************

AddRunAsProfilesCA: Error: Index was out of range. Must be non-negative and less than the size of the collection.

Parameter name: index,

Stack:    at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)

   at System.ThrowHelper.ThrowArgumentOutOfRangeException()

   at System.Collections.Generic.List`1.get_Item(Int32 index)

   at Microsoft.MOMv3.Setup.MOMv3ManagedCAs.AddRunAsProfile(String profleGuid,

MonitoringObject hostedHealthService, ManagementGroup managementGroup, String currentActionUserDomain, String currentActionUserName)

   at Microsoft.MOMv3.Setup.MOMv3ManagedCAs.AddRunAsProfiles(Session session)

 

Cause: In OpsMgr Service Pack 1 setup if DW Action account is same as RMS action account we do not configure DW RunAs profile. So, when you attempt to install second MS we try to configure its DW RunAs profile with DW Action account by looking at RMS DW RunAs profile which is empty. (This happens when default action account is same as DW action account and installation scenario is: RMS and Reporting is installed and then second MS is attempted to install).

Workaround:

Create a ‘Windows’ Run As Account with same domain user as that of RMS Action Account.

Associate this account to ‘Data Warehouse Account’ RunAs profile

Associate this account to ‘DW Configuration and Synchronization Reader Account’ profile (in SP1 this is called as ‘Reserved’, there would be three Reserved profiles in SP1, this one is third in the list). Re-run Management Server setup.

 

Needless to say this will be fixed in Service Pack 2.

 

-Satya

We've had a couple of queries about the ASP.NET management pack guide. It's in the process of being released, but in the meantime, use the copy attached to this post. [Edit: If you don't see the attachment at the bottom of the post, come to our blog page and click the green post title. It will take you to a page with the attachment at the bottom.]

If you're reading this post after June 2008, check the management pack for the latest guide; it's possible the guide will have changed since I posted this.

Task Status has two states Success or Fail, the way this is mapped from the 4 states that the module can return is that only Fatal Errors result in Failed tasks.  Since this module is used in both rules and tasks and in the rule case we do not want to unload we only return Fatal Errors if the problem is deemed to be unrecoverable, meaning the next time the module runs there is no chance it will complete successfully.

 

So the trick is to make the module return Fatal Error.  This is difficult at best in RTM, however in SP1 there is a reasonable way to accomplish this.  On the Module there is an ‘EventPolicy’ element, this element drives when the Script and Command Executor modules create events in the event log, but it also controls how those events are reported to the engine.  Which means that you as an MP author have control over how errors are reported.  This element is defined as:

 

        <xsd:complexType name="CommandExecuterEventPolicyType">

          <xsd:sequence>

            <xsd:element minOccurs="0" maxOccurs="1" name="Severity">

              <xsd:simpleType>

                <xsd:restriction base="xsd:integer">

                  <xsd:minInclusive value="0"/>

                  <xsd:maxInclusive value="2"/>

                </xsd:restriction>

              </xsd:simpleType>

            </xsd:element>

            <xsd:element minOccurs="0" maxOccurs="1" name="StdOutMatches" type="PolicyExpression"/>

            <xsd:element minOccurs="0" maxOccurs="1" name="StdErrMatches" type="PolicyExpression"/>

            <xsd:element minOccurs="0" maxOccurs="1" name="ExitCodeMatches" type="PolicyExpression"/>

          </xsd:sequence>

        </xsd:complexType>

 

Basically this element contains a ‘Severity’ element, as well as a ‘StdOutMatches’, ‘StdErrMatches’, and a ‘ExitCodeMatches’ elements.  

 

The values for Severity are as follows:

               

Warning

0

Problem is expected and did not result in loss of data.

Data Loss

1

This is the default value, the problem resulted in data being dropped or not created.  For instance an unexpected script error caused data to not be generated.

Fatal Error

2

This means the problem is unrecoverable and should result in the module being unloaded.

 

The values for the remaining fields are all the same:

 

          <xsd:complexType name="PolicyExpression">

          <xsd:simpleContent>

            <xsd:extension base="xsd:string">

              <xsd:attribute name="Operator" type="PolicyOperatorType" use="optional"/>

              <xsd:attribute name="CaseSensitive" type="xsd:boolean" use="optional"/>

            </xsd:extension>

          </xsd:simpleContent>

        </xsd:complexType>

        <xsd:simpleType name="PolicyOperatorType">

          <xsd:restriction base="xsd:string">

            <xsd:enumeration value="MatchesRegularExpression"/>

            <xsd:enumeration value="DoesNotMatchRegularExpression"/>

          </xsd:restriction>

        </xsd:simpleType>

 

The ‘Operator’ attribute indicates that you either want to create an event on ‘MatchesRegularExpression’ or ‘DoesNotMatchRegularExpression’ (defaults to matches), the ‘CaseSensitive’ attribute indicates if your expression is case sensitive (defaults to true or case sensitive), and the inner text of each element is a regular expression in Atl syntax (see http://msdn.microsoft.com/en-us/library/k3zs4axe(VS.80).aspx for more information).

 

So to put this all together, to make your task fail if for instance you hit a script error you could simply add the following XML to your script module configuration:

 

<EventPolicy>

                <!-- Report a Fatal Error -->

                <Severity>2</Severity>

 

      <!-- Report an Error if there is anything in StdErr

Cscript.exe writes out unhandled errors to StdErr so

Any text here indicates an unhandled error -->

                <StdErrMatches>\a+</StdErrMatches>

<EventPolicy>

 

Also keep in mind that the script modules already have defaults for these.  And that overriding is done per field, so in other words if you only modify the Severity in the EventPolicy then it would simply override this field, the defaults for the StdOut, StdErr, and ExitCode would still apply.  The defaults look like this for the WriteAction and Probe which produces ‘System.CommandOutput’:

 

      <DefaultEventPolicy>

<!-- Report events as DataLoss -->

 

<!-- Ignore StdOut -->

            <StdOutMatches />

 

<!-- Event on ANY text in StdErr -->

            <StdErrMatches>\a+</StdErrMatches>

 

<!-- Event on ANY non-zero ExitCode -->

            <ExitCodeMatches>[^0]+</ExitCodeMatches>

      </DefaultEventPolicy>

 

And they look like this for the Probes which produces ‘System.Discovery.Data’, and ‘System.PropertyBagData’:

 

      <DefaultEventPolicy>

<!-- Report events as DataLoss -->

 

<!-- Event if the StdOut does not contain a DataItem

Whenever data is not produced by script -->

            <StdOutMatches Operator="DoesNotMatchRegularExpression"><![CDATA[<DataItem.+/DataItem\b*>}|{<DataItem.*/>}]]></StdOutMatches>

 

<!-- Event on ANY text in StdErr -->

            <StdErrMatches>\a+</StdErrMatches>

 

<!-- Event on ANY non-zero ExitCode -->

            <ExitCodeMatches>[^0]+</ExitCodeMatches>

      </DefaultEventPolicy>

 

The OpsMgr team is working with the Windows team on getting  the necessary hotfixes ready for release.  Links for these hotfixes will be available on the KB article that will be published end of this month. 

 

Here is a heads up on what we are tentatively planning on supporting

 

  1. In place upgrade from Windows Server 2003 with SP1 (x86 and x64) and above to Windows Server 2008 (Standard, Enterprise, Datacenter) supports the Agent component with hotfixes.

 

Note: The Windows Server 2008 ia64 operating system does not support upgrading from Windows Server 2003.  Additional information can be found here - http://technet2.microsoft.com/windowsserver2008/en/library/8519f859-7159-4dae-ba4c-8ed791c01be01033.mspx?mfr=true

 

  1. Installing OpsMgr 2007 SP1 Server components (x86 and x64) on a clean install of Windows Server 2008 (Standard, Enterprise, Datacenter) is supported with hotfixes.

 

  1. Installing OpsMgr 2007 SP1 Agent component (x86, x64, ia64) on a clean install of Windows Server 2008 (Standard, Enterprise, Datacenter) is supported with the following hotfixes.

 

  1. Installing OpsMgr 2007 SP1 Agent component (x86, x64, ia64) on a clean install of Windows Server 2008 (Server Core) is supported with hotfixes.

 

  1. Installing OpsMgr 2007 SP1 Operational Database, Data warehouse, Audit Collection Database and Root Management Server components (x86 and x64) on a clean install of Windows Server 2008 (Standard, Enterprise, Datacenter) Cluster is supported with hotfixes.

 

  1. Installing OpsMgr 2007 SP1 Server component (x86, x64, ia64) on a clean install of Windows Server 2008 (Hyper-V) will be supported when Hyper-V releases following hotfixes.

 

  1. Installing OpsMgr 2007 SP1 Agent component (x86, x64, ia64) on a clean install of Windows Server 2008 (Hyper-V) will be supported when Hyper-V releases with hotfixes.

 

 

Windows Server 2008 Management Packs

 

Windows Server 2008 Base OS MP will be available early June. 

I created a Vista gadget that makes it easier to find help for System Center products. The gadget uses Live Search macros to search specific sites instead of the entire web. Search results are only returned from sites that are known to contain helpful information about System Center products. Use the settings in the gadget to pick the product (such as Operations Manager) that you want to find information about, and then enter a search term in the gadget to get customized search results.

Here is the download link: http://gallery.live.com/LiveItemDetail.aspx?li=49e26ad0-113d-4f3d-a711-57f6530c75d9

If you are interested in extending the gadget to search sites that you define, then here is an article about that: http://weblog.stranger.nl/extending_the_system_center_content_search_windows_gadget

Also, if you want to take advantage of the scoped search without installing the gadget, here are a few search macro sites you can use:

- Chris Scoville

Service Level Dashboard for System Center Operations Manager 2007 Executive Overview 

IT departments have ever more sophisticated tools at their disposal to monitor the performance of applications that make the organization run. These tools, despite their sophistication, follow traditional monitoring, which is server-based. As long as the server is in good health, the assumption is that the service is good too.

The performance and availability attributes of the service cannot be measured in just one place, however. Differences in network speed and quality across the company can slow or break functionality for the end user. Furthermore, multiple server and client software components are often combined to provide a service and can each affect its quality. Thus a true picture of the performance and availability of an application can only come from evaluating these attributes from an end-to-end perspective.

Beta Download at Connect: http://go.microsoft.com/fwlink/?LinkId=110337

 

Last week the Operations Manager team attended the Microsoft Management Summit 2008 in Las Vegas and one of the big questions we got from almost all customers was when is the System Center Capacity tool going to be available? I glad to announce that the OpsMgr 2007 SCCP RTM model is now officially available today from the link below. The model covers Gateway Servers, Audit Collection and Client Monitoring scenarios as well as the complex enterprise deployment scenarios. A note of caution, please review the model with your technical account manager or your Microsoft consultant before doing a full blown deployment. It is also essential that all customers do a pre-production deployment before doing  a final production deployment.

http://www.microsoft.com/downloads/details.aspx?FamilyID=6fec1f12-a62c-4e8d-8a19-56879192adc3&displaylang=en

- Satya

The Operations Manager 2007 Security Guide has been updated and can be found at http://go.microsoft.com/fwlink/?LinkId=64017.

New topics in this release:

·         Using a Firewall in Operations Manager 2007

·         Setting up Communications Across a Domain – Workgroup Boundary

·         How to Set the Action Account on Multiple Computers in Operations Manager 2007  

 

Updated topics in this release:

Security Considerations for Agentless Management in Operations Manager 2007

Team blog for System Center Cross Platform and Interop, Microsoft’s manageability solution for non-Windows platforms and Management System interoperability.

http://blogs.msdn.com/scxplat/

There's a lot planned for the Microsoft Management Summit next week in Vegas! I'll be there, as will several other content managers and writers from the System Center team. The following sessions are good places to meet the team and influence upcoming Operations Manager or System Center content: 

Operations Manager Jam Site
Tuesday, April 29, 2:00 – 4:30 in Casanova 603
Chris Fox, Senior Technical Writer for Operations Manager; Bill Anderson, Technical Writer for Capacity Planner

[Edit: We've had a few requests for the location of this site -- it's in the prototype stage now, but we will absolutely announce it here once it goes live.]

Are you interested in learning more about the new Operations Manager Jam site and providing your feedback? This is a community-oriented site to facilitate the sharing of management pack (MP) solutions and learning about other unique implementations. Site content includes customer-authored MP’s, managed code, command shell scripts, featured articles, forums, and a unified search across the best of Operations Manager content sources. In this focus group, you can:

  • See a preview of the site
  • Discuss the current and future direction of this and other sites
  • Provide additional requirements and scenarios

System Center Documentation: Content Innovations, Content as a Service, and Other New Architectures
Monday, April 28, 3:00 – 4:15 in Titian 2201B
Kim Field, Director; Steve Kaczmarek, Dionysia Sofos, Deb Lewy, John Merrill, Jonobie Ford, Content Managers; Elise Morrison, Managing Editor

This session, conducted by the content management team, will demonstrate current innovations in content delivery, and describe future architectural directions including Content as a Service offerings and Health Models. This session will provide detailed demonstrations of new content deliverable including the System Center SuperFlow, Configuration Manager Feature Quizzes, the System Center Content Search Gadget, and Virtual Machine Manager How-To videos. We’ll also discuss our Content as a Service and Community Jam initiatives. Finally, we will close with a Q&A session during which the content management team will seek feedback on these new solutions.

Content as a Service
Tuesday, April 29, 2:00 – 4:30 in Casanova 604
Prescott Klassen, Senior Program Manager; Kim Field, Director

Are you interested in providing feedback to Windows Server Systems Division User Assistance on scenarios and prototypes for next generation content delivery systems?  Attend our Focus Group session and help us set the future vision for our Content As A Service (CaaS) project. In this focus group, you can:

  • Review scenarios and prototypes for next generation Content Services
  • Discuss the current state of User Assistance in our products and provide feedback
  • Provide additional requirements and scenarios

There is also a strong writer presence for System Center Configuration Manager, so if you use that product as well, check out this post on the System Center Configuration Manager Writer's blog for the details.

[Edited to update Jam site name to be correct.]

The System Center Management Pack Authoring Console 2007 has been released to the Web! If you'll be at the Microsoft Management Summit next week, stop by the the Authoring Session SO04 - Tools and Best Practices for Authoring Management Packs for Operations Manager 2007 session for additional information.

 

The web package can be downloaded from this link:

 http://go.microsoft.com/fwlink/?LinkId=117553

 

[Edit: Updated link to be a fwlink so it can always point to the correct spot.]

Overview

 

A lot of scripts have need to create events which are external to the normal function of the script.  This is a technique which is typically used for tracing, it is not recommended to release scripts which expose traces in this way as there is considerable overhead in writing and consequently reading these events from OpsMgr, however given some throttling mechanism (overrides for instance) it is an effective means of producing traces which can easily be collected from the OpsMgr UI.  These events also in some cases indicate errors to other workflows which can consume them.  For instance if a script is using a service to collect discovery data and that service is unavailable the script can drop an event which sets the state of the service to such.

 

The short version

 

            Use MOMScript.LogScriptEvent API to generate an event from script, use a unique Script Name parameter and a different Event Number to indicate different errors.  See ‘Creating events from Script’ section below for more details.

 

            Use WindowsLibrary!Microsoft.Windows.ScriptGenerated.EventProvider to read events generated from script.  Provide the same Script Name and Event Number values as used in the LogScriptEvent API call to generate the event.  See ‘Reading these events created from Script’ for more details.

 

See ‘Script.Composite.Functions.xml’ sample MP (attached) for an example MP.

 

 

Creating events from Script

 

To create events from Script is a relatively easy task, using the LogScriptEvent API defined on the MOMScriptAPI object.  This API takes the following Parameters:

Script Name

The string provided here uniquely identifies your script for the purposes of your event (think event source).  This is important as this string should also be used to read your event(s) created by your script (more on this later)

Event Number

The integer value here should be in the range 1-20000.  This value is also important as it should indicate the reason for the event to the collection rule (555 = service not running, 9000 = unknown error, etc…).

Severity

Severity is an integer value which indicates why the event is raised:

0

Success event

1

Error event

2

Warning event

4

Information event

Description

This is a string value which indicates what the problem or trace is in a human readable format.

 

To call this from VBScript:

const EventSeverityError =    1

const ServiceUnavailable =    555

 

dim oAPI

set oAPI = CreateObject("MOM.ScriptAPI")

call oAPI.LogScriptEvent("My Unique VbScript", ServiceUnavailable, EventSeverityError, "The service was unavailable")

<