Caching

Download this manual as a PDF file

This section describes caching, which is when SL1 requests information from a device during Dynamic Application collection, and SL1 saves or caches the response from the device. If a response is cached, other Dynamic Applications that use the same protocol can use the cached response to populate collection objects.

Use the following menu options to navigate the SL1 user interface:

  • To view a pop-out list of menu options, click the menu icon ().
  • To view a page containing all of the menu options, click the Advanced menu icon ().

What is Caching?

When SL1 requests information from a device during Dynamic Application collection, SL1 can cache the response from the device. If a response is cached, other Dynamic Applications that use the same protocol can use the cached response to populate collection objects. Caching responses reduces the number of requests performed by SL1 and speeds up collection. Typically, Dynamic Applications aligned to component devices must use cached responses from Dynamic Applications aligned with the root device (the device that "manages" the component device).

Caching is configured in the Caching drop-down list in the general properties for a Dynamic Application. The following options are available:

  • No caching. Specifies that this Dynamic Application does not use the caching feature. The requests that populate the collection objects in this Dynamic Application are defined within this Dynamic Application. The responses to those requests are not available to other Dynamic Applications.
  • Cache Results. SL1 will cache all responses retrieved by the Dynamic Application. See the Caching Responses section for more information.
  • Consume Cached Results. SL1 will use the cached responses from other Dynamic Applications to populate the collection objects defined in this Dynamic Application. See the Consuming Cached Responses section for more information.

All types of Dynamic Applications except Bulk Snippet, Database, and ICDA can both cache results and consume cached results.

Caching Responses

Dynamic Applications that use the following protocols can cache responses:

  • SNMP
  • Snippet
  • SOAP
  • WMI
  • PowerShell
  • XML
  • XSLT

NOTE: Bulk Snippet Dynamic Applications cannot cache responses.

For XSLT Dynamic Applications, the untransformed response is cached, not the transformed response.

For Dynamic Applications that cache responses, the collection objects defined in this Dynamic Application are no longer collected at a regular frequency. You must not define collection objects that are used to generate configuration tables or performance graphs in a Dynamic Application that caches responses. Typically, Dynamic Applications that cache results will contain only a discovery object.

For information about caching responses in Snippet Dynamic Applications, see the Snippet Dynamic Application Development section.

Consuming Cached Responses

Dynamic Applications that use the following protocols can consume cached responses:

  • SNMP
  • Snippet
  • SOAP
  • WMI
  • PowerShell
  • XML
  • XSLT

NOTE: Bulk Snippet Dynamic Applications cannot consume cached responses.

Snippet Dynamic Applications can consume cached results from any Dynamic Application that caches responses. For more information about using cached responses in snippet code, see the Snippet Dynamic Application Development section. All other Dynamic Applications that consume cached responses can do so only from Dynamic Applications that use the same protocol. For example, SOAP Dynamic Applications can consume cached responses only from other SOAP Dynamic Applications. A SOAP Dynamic Application cannot consume a cached response from an XSLT Dynamic Application.

For Dynamic Applications that consume cached responses:

  • All collection objects in the Dynamic Application must be populated using cached responses from other Dynamic Applications. If a Dynamic Application consumes cached responses, you cannot define additional requests in that Dynamic Application.
  • If the Dynamic Application is aligned to a non-component device, all the other Dynamic Applications that cache requests used by the Dynamic Application must be aligned to the same device.
  • If the Dynamic Application is aligned to a component device, all the other Dynamic Applications that cache requests used by the Dynamic Application must be aligned to the same device or the root device.
  • If a cached response is unavailable when SL1 performs collection for a Dynamic Application that consumes cached responses, SL1 will automatically attempt to execute the appropriate request to re-populate the cache.
  • For XSLT Dynamic Applications that use the Consume Cached Results option, XSLT Parser Code must still be defined in the Dynamic Application. The XSLT Parser Code will be used to transform the cached responses.

Configuring Collection Objects in Cache-Consuming Dynamic Applications

The following sections describe how to configure collection objects to use responses that are cached by other Dynamic Applications in SOAP, WMI, XML, and XSLT Dynamic Applications.

SOAP Dynamic Applications

When a SOAP Dynamic Application is configured to Consume Cached Results:

  • The Requests tab will not be displayed.
  • In the Dynamic Applications | Collections Objects page, the SOAP Request field will display a list of all requests defined in SOAP Dynamic Applications that cache responses. Select the cached response that SL1 should use to populate the collection object.

WMI Dynamic Applications

When a WMI Dynamic Application is configured to Consume Cached Results:

  • The Requests tab will not be displayed.
  • In the Dynamic Applications | Collections Objects page, the WMI Request field will display a list of all requests defined in WMI Dynamic Applications that cache responses. Select the cached response that SL1 should use to populate the collection object.

PowerShell Applications

When a PowerShell Dynamic Application is configured to Consume Cached Results:

  • The PowerShell tab will not be displayed.
  • In the Dynamic Applications | Collections Objects page, the PowerShell Request field will display a list of all requests defined in PowerShell Dynamic Applications that cache responses. Select the cached response that SL1 should use to populate the collection object.

XML Dynamic Applications

When an XML Dynamic Application is configured to Consume Cached Results, an additional field is displayed in the Dynamic Applications | Collections Objects page:

  • XML Document. This field lists all XML Dynamic Applications that cache responses. Select the XML Dynamic Application that requests the XML Document that contains this collection object.

For the XML Dynamic Application that caches responses, the URL of the requested XML Document is defined in the credential that is aligned to that Dynamic Application.

XSLT Dynamic Applications

When an XSLT Dynamic Application is configured to Consume Cached Results, you must still define XSLT Requests for the Dynamic Application in the Dynamic Applications Request Editor and Registry page (the Requests tab). To define an XSLT Request for an XSLT Dynamic Application that is configured to Consume Cached Results:

  • Go to the Dynamic Applications Request Editor and Registry page (the Requests tab) for the Dynamic Application.
  • Supply values in the Request Name, Execution Sequence, and Active State fields.
  • The XSLT Request Code field in the Dynamic Applications Request Editor and Registry page (the Requests tab) is renamed Cached XSLT Request. The Cached XSLT Request field displays a list of all requests defined in XSLT Dynamic Applications that cache responses. Select the cached response that SL1 should transform using the XSLT Parser Code defined in this request.
  • Define the XSLT document that SL1 should use to transform the cached response selected in the Cached XSLT Request field. The output of the transformation should be in the standard format from which SL1 parses collection objects.

For an XSLT Dynamic Application that is configured to Consume Cached Results, the XSLT Request field in the Dynamic Applications | Collections Objects page will contain only the XSLT Requests defined in the same Dynamic Application.

Collector Affinity for Dynamic Applications that Use Caching

Collector Affinity specifies which Data Collectors are allowed to run collection jobs for Dynamic Applications aligned to component devices. You can define Collector Affinity for each Dynamic Application.

For Dynamic Applications that create cache or consume cache, you should select the following option for Collector Affinity:

  • Root Device Collector. The Data Collector assigned to the root device will collect data for the Dynamic Application. This guarantees that Dynamic Applications for an entire DCM tree will be collected by a single Data Collector. This option ensure that caching Dynamic Applications can access the required cache.