Enabling Performance Monitoring in IBM Planning Analytics Workspace

PA/TM1 Performance Monitor is a collection of tools that monitor the performance of IBM PA/TM1 servers in real-time. It can track and store performance data in control cubes, such as StatsByClient, StatsByCube, StatsByCubeByClient, and StatsForServer. These cubes track various statistics, such as message count, average message size, memory use, and more.

Enabling Performance Monitoring

Performance Monitor can be enabled or disabled manually in Architect (or Perspectives server explorer) by right clicking the server’s name and selecting “Start Performance Monitor” or “Stop Performance Monitor“.

If you’ve recently moved to Planning Analytics Workspace (and you should since Architect , as part of the Rich Tier Desktop, is to be removed with its features moved to Workspace later this year), you may wonder “how do I enable

performance monitor using IBM Planning Analytics Workspace?” Don’t worry, it’s still a pretty straight forward process:

  1. Click the Administration tile
  2. Select Databases
  3. Select your database
  4. Click Configuration

5. Find the performance monitor settings (PerfMonActive) in the Administration settings and the Default sub area

Automation with PowerShell

I came across an interesting technote recently that provided a keen solution for enabling or disabling Performance Monitor through a TI process using a Windows PowerShell script and just had to try it.

Configuration

You first have to review your TM1/PA configuration (.cfg) file and make sure that the PerformanceMonitorOn parameter exists and is formatted correctly (make sure that there is no extra space):

PowerShell Scripting

As mentioned, to make this solution work we need to create two MS Windows PowerShell scripts, one for activating the Performance Monitor and the other one for deactivating Performance Monitor.

In PowerShell the GetContent cmdlet gets the content of the item at the location specified by the path, such as the text in a file or the content of a function and the Set-Content cmdlet writes new content or replaces existing content in a file.

With this in mind, we can use these cmdlets along with the .replace function (which replaces characters within a string) in a single line to accomplish its goal of enabling or disabling performance monitoring within the server:

#– PowerShell script #1 – SetPerfMonOn enable performance monitoring (Get-Content ‘C:\Program Files\ibm\cognos\tm1_64\samples\tm1\PlanSamp\tm1s.cfg’).replace(‘PerformanceMonitorOn=F’, ‘PerformanceMonitorOn=T’) | Set-Content ‘C:\Program Files\ibm\cognos\tm1_64\samples\tm1\PlanSamp\tm1s.cfg’

#– PowerShell script #2 – SetPerfMonOff disable performance monitoring (Get-Content ‘C:\Program Files\ibm\cognos\tm1_64\samples\tm1\PlanSamp\tm1s.cfg’).replace(‘PerformanceMonitorOn=T’, ‘PerformanceMonitorOn=F’) | Set-Content ‘C:\Program Files\ibm\cognos\tm1_64\samples\tm1\PlanSamp\tm1s.cfg’

To run these scripts from a TurboIntegrator process, you can use the ExecuteCommand function and since the PerformanceMonitorOn parameter is a “dynamic parameter“, it will be quickly taken into account by TM1/PA Server without having to perform a restart.

Conclusion

As always, if you would like assistance with Planning Analytics Performance Monitoring, please reach out to QueBIT!