7.8 Setting Technical Configurations for Operations Center Portlets

7.8.1 Configuring Default Alarms Limits Returned from the Operations Center Server

There is a default limit of 1000 historical alarms, outages, and breaches when using the SLA or Alarms portlets. This limit is set on the Operations Center server. If there are more historical alarms (Alarms portlet) or outages/breaches (SLA Compliance portlets) and you want them to be accessible via the dashboard, this limit needs to be appropriately set using the HyperQuery.NumPoints.SizeLimit property.

To increase the maximum number of alarms that are returned from the Operations Center server:

  1. Open the /OperationsCenter_install_path/config/Formula.custom.properties file in a text editor.

    If the Formula.custom.properties file does not exist, create it. For more information about the Formula.custom.properties file, see Making Custom Changes in the Operations Center Server Configuration Guide.

  2. Add the following property and customize the value:

    HyperQuery.NumPoints.SizeLimit=30000

  3. Stop and restart the Operations Center server for the changes to take effect.

7.8.2 Configuring Performance Data Point Retrieval from the Operations Center Server

The amount of data points returned for a performance chart can increase or decrease rendering performance. The Operations Center server uses an algorithm to determine how many data points to return for the Charting portlet when charting raw data. Using a setting the mo-settings.xml file, you can configure the aggressiveness of the algorithm to reduce the number of data points used to draw a line while preserving the natural line shape.

This setting is only applied when the Charting portlet is charting raw data.

To configure the level of data point retrieval for the Charting portlet:

  1. Stop the Dashboard.

    For information on stopping the Dashboard, see Section 2.3.2, Stopping the Dashboard.

  2. Edit the /OperationsCenter_Dashboard_install_path/server/webapps/ManagedObjectsPortlets/WEB-INF/mo-settings.xml file to add the following:

    <entry>

    <string>performance.charts.ldpreduce.rpd.epsilon</string>

    <string>desiredvalue</string>

    </entry>

    Where desiredvalue is the level of aggressiveness between 0 and 1.0. Set to 0 to turn the algorithm off and return all data points. We recommend increasing the value slowly, if at all, in increments of .05. The default value is 0.1.

  3. Start the Dashboard.

    For information on stopping the Dashboard, see Section 2.3.1, Starting the Dashboard.

7.8.3 Configuring Regular Expression Look Up for the Charting Portlet

Optionally, you can setup a list of regular expressions to be available for look up when configuring the Charting portlet. This requires adding code to the globals.custom.xml file.

NOTE:The regular expressions list is only loaded from the globals.custom.xml when the Charting portlet is created. If you wish to use this list with existing Charting portlets, you’ll need to recreate the portlet reload new or modified look up lists.

To create a regular expression lookup list for Charting Portlet configurations:

  1. Open the /OperationsCenter_Dashboard_install_path/server/webapps/ManagedObjectsPortlets/WEBINF/data/globals.custom.xml file in a text editor.

    If the globals.custom.xml file does not exist, create it.

  2. Modify the globals.custom.xml file to incorporate the following code:

    <globals>
       <data>
         <components>
            <component>
              <name>charting</name> 
                <preferences>
                  <entry>
                     <string>regularExpressions</string>   
                        <map>
                          <entry>
                            <string>expression_name</string>
                             <string>regular_expression</string>
                          </entry>
                        </map>
                  </entry>
              </preferences>
         </component>
       </components>
     </data>
    </globals>
    

    If creating a new globals.custom.xml file, you will need to paste in the entire example.

    If an entry for the charting component already exists, paste in only the code for the regularExpressions entry, which goes inside the <preferences> tag.

    Replace expression_name with a name for the regular expression entry and regular_expression with the actual regular expression code.

  3. Add as many entries as needed inside the <map> tag to fully populate the look up list:

                   <map>
                     <entry>
                      <string>expression_name</string>
                       <string>expression</string>
                     </entry>
                     <entry>
                      <string>expression2_name</string>
                       <string>expression2</string>
                     </entry>
                   </map>
    
    
  4. Save the file.

  5. Restart the Dashboard.

    For more information about starting and stopping the Dashboard, see Section 2.3, Starting and Stopping the Dashboard.

7.8.4 Selecting an Alternate Operations Center Server Connection

By default, all Operations Center portlets retrieve data from the default Operations Center server. Within some portlets, it is possible to poll a different Operations Center server. In this case, a different server profile is selected for the portlet.

Server profiles are used by the Alarms, Charting, Element Properties, Information, Layout, Navigation, Performance, Properties Table, Root Cause, Search, Show Impacted, Starter, Status, Summary, and Tree Map portlets. For information about creating a server profile, see Section 3.8, Creating Operations Center Server Profiles.

To select a server profile for a portlet:

  1. Click the options icon and select Preferences.

  2. Click the Advanced tab, then click the Common tab.

  3. From the Select the Operations Center server profile where this portlet retrieves its data option, select the server that serves up Operations Center data for the portlet.

    The default establishes a connection with the default Operations Center server.

    For steps on creating a new Operations Center server connection, see Section 3.8, Creating Operations Center Server Profiles.

  4. Because each server profile has an icon associated with it, select to display this icon on the portlet to help distinguish the server from which data is retrieved by selecting the Display the Operations Center server profile icon check box.

    When the server profile icon is enabled to be displayed, hovering over this icon while viewing the content of a portlet shows the profile name in a tooltip.

  5. Click Save.

7.8.5 Scheduling Portlets

Cached versions portlet reports can improve performance when viewing portlets by updating the data at scheduled intervals only; not upon every request to view the portlet. Note that the data displayed in a scheduled portlet is no longer real-time because it is serving up.

The following sections describe how to define schedules for portlets:

Understanding Portlet Scheduling

Scheduled reports are useful when information needs to be published and shared with users on a regular basis. For example, a report could be scheduled to run every Monday morning at 6:00 a.m. so that when users log in first thing Monday morning, it is quick and easy to view the latest status.

A portlet can be scheduled to run hourly, daily, weekly, monthly; or a custom schedule specified by a Cron string, such as “every Friday at noon”, or “every weekday and 9:30 am”, or even “every 5 minutes between 9:00 am and 10:00 am on every Monday, Wednesday, and Friday”.

Only some portlets have the Scheduling feature. When available, a Scheduling tab will be available under the Advanced tab in Preferences.

Note the following important aspects and tips on portlet scheduling:

  • Portlet data displays in Real-Time until a schedule is set and applied.

  • Cached versions created by a schedule only save and cache data for the primary (home) view of the portlet. The extent of the cached data does vary by portlet. However, if a portlet contains links to other views, reports or portlets; these other pages are serving up live data, not cached data.

  • When scheduling reports, we recommend running the report before scheduling it, so that a cached version is available in the portal page for the lapse of time before the next scheduled report generation.

  • Subsequent changes to the preferences of a scheduled portlet does not take effect until the next scheduled run. To regenerate the report immediately after changes in Preferences, go to Advanced > Scheduling and click Run Now.

  • Schedule portlets to run as infrequently as possible, as long as it provides meaningful data. For example, if you only care about data accurate to the hour, there is no need to schedule it more than once per hour. Also consider how long a scheduled portlet is taking to run so that the next scheduled run doesn’t overlap with an existing job for the same portlet. And lastly, minimize the overall load by scheduling portlets in a way that it will not stress the server. For example, with larger reports that run once a day, schedule them during non-peak hours and stagger the start times.

  • To confirm a schedule is defined and active for a portlet, go to Preferences > Advanced > Scheduling. If active, the following type of status information displays including the last time the portlet was run and the next scheduled time.

  • Scheduled portlets use the associated Operations Center Profile user account. In most cases, this is default profile, which uses the admin account.

    When the scheduling job is kicked off in the background, it first logs in with the user account specified in the profile. If the user account is deleted, scheduled jobs fail. Therefore, it is recommended that you set up a profile with a common user that is not associated with a any specific person, so that this user account is always present in the system.

    To change the Operations Center profile for the portlet, go to Preferences > Advanced > Common, and select a different profile. For information about creating new profiles, see Section 3.8, Creating Operations Center Server Profiles.

  • The time a scheduled portlet takes to run can vary. To determine how long it is taking, look for the following debug category messages in the formula.trc log file:

    time.log4j.category.com.mosol.portlet.schedule.PortletJob

    An entry is logged when the job is kicked off and when it logs in and out of Operations Center. Calculate the time difference between the login and logout to find how long the job is running to produce the report.

    For information about the formula.trc file, see Understanding Trace Logs and Content in the Operations Center Server Configuration Guide.

Defining the Schedule

To define a schedule for a portlet:

  1. Click the options icon and select Preferences, then click Advanced.

  2. Click Scheduling.

    The report scheduler displays.

  3. Select one of the Select Schedule radio buttons: Hourly, Daily, Weekly, Monthly, or Cron.

    Depending on the time frame selected, specify the calendar day of the week, day of the month, hour, and minute values, or specify a cron string.

    For more information about cron strings, see Understanding Cron Strings.

  4. Click Start Schedule to begin using the schedule.

    The report is now generated based on the selected schedule. The screen provides some basic information about the schedule, when it was created, when it last ran and when it is expected to run again. This screen also provides two possible actions:

    • Run Now: Forces the portlet to re‑cache its data immediately.

    • Stop: Unschedules the portlet.

    At this time, the Job Name is used internally only by the scheduling mechanism and should be left as the default, which uses the unique portlet namespace.

  5. Click Save.

    If you exit Preferences without clicking Save, your changes are lost.

Forcing a Manual Refresh of Cached Data

To define a schedule for a portlet:

  1. Click the options icon and select Preferences, then click Advanced.

  2. Click Scheduling.

  3. Click Run Now to generate a new version of the cached report.

Understanding Cron Strings

Cron expressions are strings that are actually made up of seven sub-expressions, that describe individual details of the schedule. These sub-expression are separated with white-space, and represent:

  1. Seconds

  2. Minutes

  3. Hours

  4. Day-of-Month

  5. Month

  6. Day-of-Week

  7. Year (optional)

Cron expressions use the following special characters:

  • * Use to select all values within a field.

  • ? Use to declare no specific value. Use to specify something in one of the two fields in which the character is allowed, but not the other. For example, to fire on a particular day of the month (say, the 10th), but it doesn’t matter what day of the week it happens to be, put "10" in the day-of-month field, and "?" in the day-of-week field.

  • - Use to specify ranges within a sub-expression. For example, "10-12" in the hour field means "the hours 10, 11 and 12".

  • , Use to specify additional values. For example, "MON,WED,FRI" in the day-of-week field means "the days Monday, Wednesday, and Friday".

  • / Use to specify increments. For example, "0/15" in the seconds field means "the seconds 0, 15, 30, and 45". And "5/15" in the seconds field means "the seconds 5, 20, 35, and 50". You can also specify '/' after the '' character - in this case '' is equivalent to having '0' before the '/'. '1/3' in the day-of-month field means "fire every 3 days starting on the first day of the month".

  • L (Last) has different meaning in each of the two fields in which it is allowed. For example, the value "L" in the day-of-month field means "the last day of the month" - day 31 for January, day 28 for February on non-leap years. If used in the day-of-week field by itself, it simply means "7" or "SAT". But if used in the day-of-week field after another value, it means "the last occurrence of that day in the month" - for example "6L" means "the last friday of the month". When using the 'L' option, it is important not to specify lists, or ranges of values, as you'll get confusing results.

  • W (Weekday) Use to specify the weekday (Monday-Friday) nearest the given day. As an example, if you were to specify "15W" as the value for the day-of-month field, the meaning is: "the nearest weekday to the 15th of the month". So if the 15th is a Saturday, the trigger fires on Friday the 14th. If the 15th is a Sunday, the trigger fires on Monday the 16th. If the 15th is a Tuesday, then it fires on Tuesday the 15th. However if you specify "1W" as the value for day-of-month, and the 1st is a Saturday, the trigger fires on Monday the 3rd, as it doesn’t 'jump' over the boundary of a month's days. The 'W' character can only be specified when the day-of-month is a single day, not a range or list of days.

  • # Use to specify "the nth" XXX day of the month. For example, the value of "6#3" in the day-of-week field means "the third Friday of the month" (day 6 = Friday and "#3" = the 3rd one in the month). Other examples: "2#1" = the first Monday of the month and "4#5" = the fifth Wednesday of the month. Note that if you specify "#5" and there is not 5 of the given day-of-week in the month, then no firing occurs that month.

Table 7-2 Examples of Chron Expressions for Scheduling

Schedule fires...

Cron Expression

Every 5 minutes.

0 0/5 * * * ?

Every 5 minutes, at 10 seconds after the minute (i.e. 10:00:10 am, 10:05:10 am, etc.).

10 0/5 * * * ?

Exactly at 10:30, 11:30, 12:30, and 13:30, on every Wednesday and Friday.

0 30 10-13 ? * WED,FRI

Every half hour between the hours of 8 am and 10 am on the 5th and 20th of every month. Note that the trigger will NOT fire at 10:00 am, just at 8:00, 8:30, 9:00 and 9:30.

0 0/30 8-9 5,20 * ?

At 10:15am on the last Friday of every month.

0 15 10 ? * 6L

For additional information on the format of the Cron string, consult the Quartz Enterprise Job Scheduler Web site.

7.8.6 Automatic Data Updates with Push Technology

Using push technology, the Dashboard can receive data updates as they occur in the Operations Center server instead of having the Dashboard request updates on a regularly scheduled interval. When enabled, push technology ensures that data is refreshed in the Dashboard only when an event occurs, such as a state change.

Push technology is available for the following portlets: Alarms (except SLA alarms), Information, Layout, Navigation, Properties Table, Status, and Tree Map. By default, these portlets are enabled to refresh content automatically from the Operations Center server. This feature can be disabled in the configuration settings for each portlet (or any portlet that utilizes these portlets as views/links).

Push technology can be enabled globally for all portlets in the Operations Center Dashboard Configuration Manager. See Section 2.2.5, Configuring the Dashboard, Operations Center Server, and the Image Server. The settings within each portlet override the global setting in the Operations Center Dashboard Configuration Manager.