OpenSearch and OpenSearch Dashboards in Pulse

OpenSearch and OpenSearch Dashboards in Pulse

Pulse 6 integrates the open-source versions of OpenSearch and OpenSearch Dashboards directly into the application. This brings enterprise-grade observability capabilities to IBM Planning Analytics (TM1) administrators and developers.

What is OpenSearch?

OpenSearch is a powerful search and analytics engine designed to handle large datasets at scale. In Pulse, it is used to store everything happening across all TM1 instances — on a second-by-second basis — providing a complete, queryable history of your environment.

What is OpenSearch Dashboards?

OpenSearch Dashboards is the visualisation layer built on top of OpenSearch. In Pulse, it powers the Pulse Explorer, which provides default dashboards for exploring your TM1 data with full flexibility — filtering, aggregating, changing chart types, splitting by series, and more.

How Pulse Uses OpenSearch and OpenSearch Dashboards

Live Monitor Rewind

The OpenSearch data store allows the Live Monitor to look back in time — you can rewind the state of your TM1 instances and review what was happening at any past moment.

Accurate Chore/Process History

Chore and process run times (MIN, AVG, MAX) are calculated from OpenSearch data, providing much more accuracy and historical depth than was previously possible.

Pulse Explorer

The Pulse Explorer provides pre-built dashboards covering active threads, user sessions, chore history, and more. All dashboards are built on OpenSearch Dashboards and can be customised or extended.

Connecting External Visualisation Tools

Because Pulse stores all data in OpenSearch, you can connect any compatible visualisation tool to query and display Pulse data. A popular option is Grafana, which offers additional features such as CSV export not available in the open-source OpenSearch Dashboards version.

Once Grafana is installed, it can be connected directly to the Pulse OpenSearch cluster for additional reporting flexibility.

Blocked Threads Index (Pulse 7.3)

Pulse 7.3 introduces a dedicated OpenSearch index for tracking TM1 threads that are blocked by other threads. When a TM1 thread is waiting on another thread, the TM1 REST API reports this in the thread's Info field as WaitingOn (<blocking_thread_id>). Pulse parses this at indexation time and writes all blocked threads into a dedicated index, enabling analysis of thread contention across TM1 servers.

Index Details

Property

Value

Property

Value

Index pattern

pulse-tm1-blocked-threads-*

Default date granularity

Monthly (yyyy-MM)

Config key

BlockedThreadsIndexPattern under [Elastic] in Pulse.cfg

Each document in this index contains all standard TM1TopItem fields (user, state, function, object, locks, product context, etc.) plus one new field:

  • BlockedByThreadId — the thread ID of the blocking thread

This makes it possible to query: "show me all threads currently blocked by thread X".

Configuration

No configuration is required — the index is active by default. To customise the date granularity, add the following to Pulse.cfg under the [Elastic] section:

BlockedThreadsIndexPattern = yyyy-MM-dd # daily BlockedThreadsIndexPattern = yyyy-MM # monthly (default) BlockedThreadsIndexPattern = yyyy # yearly

Summary

The inclusion of OpenSearch and OpenSearch Dashboards in Pulse brings TM1 into the modern observability ecosystem. It enables second-by-second data storage, highly flexible visualisation, historical investigation, and integration with third-party analytics tools.