Nimsoft Monitor qos_processor Guide v1.2 series
CA Nimsoft Monitor Copyright Notice This online help system (the "System") is for your informational purposes only and is subject to change or withdrawal by CA at any time. This System may not be copied, transferred, reproduced, disclosed, modified or duplicated, in whole or in part, without the prior written consent of CA. This System is confidential and proprietary information of CA and protected by the copyright laws of the United States and international treaties. This System may not be disclosed by you or used for any purpose other than as may be permitted in a separate agreement between you and CA governing your use of the CA software to which the System relates (the CA Software ). Such agreement is not modified in any way by the terms of this notice. Notwithstanding the foregoing, if you are a licensed user of the CA Software you may make one copy of the System for internal use by you and your employees, provided that all CA copyright notices and legends are affixed to the reproduced copy. The right to make a copy of the System is limited to the period during which the license for the CA Software remains in full force and effect. Should the license terminate for any reason, it shall be your responsibility to certify in writing to CA that all copies and partial copies of the System have been destroyed. TO THE EXTENT PERMITTED BY APPLICABLE LAW, CA PROVIDES THIS SYSTEM AS IS WITHOUT WARRANTY OF ANY KIND, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT. IN NO EVENT WILL CA BE LIABLE TO YOU OR ANY THIRD PARTY FOR ANY LOSS OR DAMAGE, DIRECT OR INDIRECT, FROM THE USE OF THIS SYSTEM, INCLUDING WITHOUT LIMITATION, LOST PROFITS, LOST INVESTMENT, BUSINESS INTERRUPTION, GOODWILL, OR LOST DATA, EVEN IF CA IS EXPRESSLY ADVISED IN ADVANCE OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE. The manufacturer of this System is CA. Provided with Restricted Rights. Use, duplication or disclosure by the United States Government is subject to the restrictions set forth in FAR Sections 12.212, 52.227-14, and 52.227-19(c)(1) - (2) and DFARS Section 252.227-7014(b)(3), as applicable, or their successors. Copyright 2013 CA. All rights reserved. All trademarks, trade names, service marks, and logos referenced herein belong to their respective companies. Legal information on third-party and public domain software used in the Nimsoft Monitor solution is documented in Nimsoft Monitor Third-Party Licenses and Terms of Use (http://docs.nimsoft.com/prodhelp/en_us/library/legal.html).
Contact CA Contact CA Support For your convenience, CA Technologies provides one site where you can access the information that you need for your Home Office, Small Business, and Enterprise CA Technologies products. At http://ca.com/support, you can access the following resources: Online and telephone contact information for technical assistance and customer services Information about user communities and forums Product and documentation downloads CA Support policies and guidelines Other helpful resources appropriate for your product Providing Feedback About Product Documentation Send comments or questions about CA Technologies Nimsoft product documentation to nimsoft.techpubs@ca.com. To provide feedback about general CA Technologies product documentation, complete our short customer survey which is available on the CA Support website at http://ca.com/docs.
Documentation Changes This table describes the version history for this document. Version Date What's New? 1.23 June 2014 Defect fixes. 1.2 March 2013 Added baseline data management; added sample enrichment.rb script to illustrate origin changes. 1.1 September 2012 1.0 June 2012 Initial release. Related Documentation Added ability to enable/disable the enrichment and origin changes; added ability to run enrichment on a periodic basis. Documentation for other versions of the qos_processor probe (../../qos_processor.html) The Release Notes for the qos_processor probe Monitor Metrics Reference Information for CA Nimsoft Probes (http://docs.nimsoft.com/prodhelp/en_us/probes/probereference/index.htm)
Contents Chapter 1: qos_processor 1.2 7 qos_processor Overview... 7 Requirements... 8 Chapter 2: qos_processor Configuration 9 Script Example... 11 Java Heap Size... 12 Contents 5
Chapter 1: qos_processor 1.2 This description applies to version 1.2. This section contains the following topics: qos_processor Overview (see page 7) Requirements (see page 8) qos_processor Overview The qos_processor probe provides powerful post-processing for QoS data: QoS baseline data management -- qos_processor receives calculated baseline data from the baseline_engine, and is responsible for persisting and managing it in the NIS database. Origin modification -- qos_processor can change the assigned origin of a QoS metric or alarm, and maintains the correct origin information in the database. This applies as well when origin changes are made at the robot and/or hub. Note that prior to NMS 6.0, the origin field was not updated in the database if an origin reassignment occurred at the robot or hub. QoS enrichment -- allows assignment of the origin field based on the outcome of applying rules to attributes such as QOS, SOURCE, and/or TARGET. Qos_processor listens for QOS_MESSAGE subjects on the hub, evaluates and potentially modifies origin and other select QoS monitor attributes using script-based enrichment. See the section on Script Examples (see page 11) for more information. The probe can modify the fields: ORIGIN HOST ROBOT PROBE These changes allow UMP portlets such as List Viewer to reflect the correct origin associated with QoS data sent from Nimsoft probes. Note: This probe can reduce the overall throughput of your system; if you encounter performance issues please contact Nimsoft Support for assistance. Chapter 1: qos_processor 1.2 7
Requirements Requirements Version 1.2 of qos_processor probe requires NMS 6.5 or higher. Important: The qos_processor probe must reside on the same robot as the data_engine. 8 qos_processor Guide
Chapter 2: qos_processor Configuration The qos_processor probe can only be configured using Raw Configure. You can set the parameters for running scripts against QoS messages. The parameters are (display order may vary from what is illustrated: loglevel log-size Sets the level of details written to the log file. Log as little as possible during normal operation to minimize disk consumption, and increase the amount of detail when debugging. Default is 2. The size of the log file. message-receiver-bulk-size The number of messages received at one time from the hub. Default is 60. monitor-enricher-thread-count The number of threads used to update the records in the NIS database. Default is 1. monitor-enrichment-execution-interval The number of minutes between enrichment script execution. Default is 60. Chapter 2: qos_processor Configuration 9
Requirements monitor-enrichment-execution-interval-time-unit The time units for monitor_enrichment_execution_interval. The valid options are: days, hours, microseconds, milliseconds, minutes, nanoseconds, seconds. Default is minutes. subscriptions-check-interval-seconds The number of seconds between QOS_MESSAGE checks from the hub. Default is 30 seconds. origin-change-detection-enabled Disable/enable origin change detection. Default is true. enrichment-enabled Disable/enable running enrichment scripts. Default is true. database-loader-fetch-size The number of rows to retrieve per read from the database when initializing the qos_processor. enrich-script-timeout-millis The timeout interval for running enrichment scripts. monitor-db-updater-thread-count The number of threads used to update the database. Default is 1. monitor-db-updater-batch-update-size The number of records to update at one time. Default is 10. monitor-db-updater-auto-commit Whether or not to auto commit your changes to the NIS database. Default is true. database-connect-max-attempts The maximum number of attempts qos_processor makes in attempting to connect to the NIS database. Default is 10. database-connect-retry-sleep-seconds The number of seconds to sleep between retries to the NIS database. Default is 60. 10 qos_processor Guide
Script Example Script Example You can use the qos_processor probe to process raw messages at their source, changing the origin before the messages are published to the data_engine/nas. The evaluation and modification of the attributes is done with the use of an enrichment script named enrichment.rb. Note: If an enrichment script exists for QOS_MESSAGE it will override an origin change done on the hub. However, an enrichment script is not required. If an enrichment script does not exist only origin changes are made by qos_processor. This script should be located in <Nimsoft>/probes/slm/qos_processor/scripts/. Changes to the enrichment_rb script are dynamically loaded by the qos_processor probe. All fields will be bound into the script environment as member fields of a script object named "monitor." There is also a logging object named "logger" available for writing messages to the probe log file. Important! This probe cannot modify the QOS, SOURCE or TARGET fields as these are the keys that uniquely identify the data in the entire system. Examples are provided in the Nimsoft\probes\slm\qos_processor\test directory. 1. Open one of the examples and save it as enrichment_test.rb. 2. From a command line run the executable jar file that is also in the test folder. 3. Check the operation of the test script and make revisions as necessary to obtain the desired results. When changing the origin based on the source field, the script can be fairly simple--here is an example of a test script: require 'java' $logger.info('hello, Ruby!') $logger.info("monitor before: origin = '" + $monitor.origin + "'") if ($monitor.source == '<your source>') $monitor.origin = '<your new origin>' end $logger.info("monitor after: origin = '" + $monitor.origin + "'") $logger.info('goodbye, Ruby!') Here is an example of a Ruby script that changes the origin for a QOS_MESSAGE received from a url_response probe that has a target that matches a regular expression that starts with "Bing". Chapter 2: qos_processor Configuration 11
Java Heap Size if ($monitor.probe == 'url_response') if ($monitor.target =~ /Bing(.*)/) $logger.info("changing origin from " + $monitor.origin + " to BINGO") $monitor.origin = 'BINGO' end end For more information on Ruby scripting, there is information on the web. Here is one tutorial. Java Heap Size The default maximum Java heap size is set to 2GB. Note: To determine current memory usage run the callback get_statistics through the Probe Utility (Ctrl-P) and check the value of jvm_start_current_memory to see the size of the current usage. Number of QoS Objects Less than 500,000 Java Heap Size 2GB 500,000 to 999,999 3GB 1,000,000 or greater 4GB Increase the Java heap size in accordance with the number of QoS objects in your managed environment. To determine the number of QoS objects, run the following query: select count(*) from S_QOS_DATA; To set the maximum Java heap size: 1. In Infrastructure Manager, hold the Shift key and right-click on the qos_processor probe. 2. Select Raw Configure. 3. In the left navigation double-click startup, then double-click opt. 12 qos_processor Guide
Java Heap Size 4. In the content window select java_mem_max and click the Edit Key button. 5. Enter the new value in increments of 1024 MB. For example, 3 GB = -Xmx3072m. Chapter 2: qos_processor Configuration 13