Hitachi

JP1 Version 11 JP1/Performance Management - Agent Option for Service Response Description, User's Guide and Reference


5.2.2 Notes about the functions of PFM - Agent for Service Response

Organization of this subsection

(1) Considerations needed for performing successful measurement

This subsection discusses points to be taken into consideration when you determine the maximum number of measurement conditions for a probe and an IE probe that are defined in the Probe action condition settings file (esp.conf), and when you determine the measurement interval and timeout value that are defined in the measurement condition registration file (esptask.xml).

You must consider each parameters for both the probe and the IE probe.

(a) Maximum number of measurement conditions for a probe and an IE probe

PFM - Agent for Service Response can measure multiple Internet services concurrently. The number of measurement conditions that can be measured concurrently is specified as the maximum number of measurement conditions for a probe and an IE probe in the Probe action condition settings file (esp.conf). If the number of concurrent measurement conditions that is specified is greater than the set maximum number of measurement conditions for a probe and an IE probe, any excess measurement conditions will be processed sequentially.

In the example shown below, the maximum number of measurement conditions for a probe and an IE probe is 3, and the number of measurement conditions to be executed concurrently is 7. This example assumes that all measurement conditions terminate at the same time.

Figure 5‒1: Example of measurement when the number of measurement conditions to be executed concurrently is greater than the maximum number of measurement conditions for a probe and an IE probe

[Figure]

The probes used to measure the services function as threads. The number of threads to be generated is the same as the maximum number of measurement conditions for the probe and the IE probes in the probe and the IE Probe action condition settings file. Therefore, when you determine the maximum number of measurement conditions for a probe and an IE probe, take into account the performance of the host where PFM - Agent for Service Response is run.

(b) Timeout value

The purpose of the timeout value is to abort the monitoring so as not to affect the other IE scenario monitoring when the response performance of the IE scenario is extremely degraded. When a timeout occurs, PFM - Agent for Service Response treats it not as the degraded response performance of the IE scenario, but as the abnormal state. Specify the timeout value to each IE scenario.

The maximum processing time permitted for a single measurement is the timeout value that is set as a measurement condition. Set the timeout value to be smaller than the measurement interval, so that a single measurement is completed before the next measurement begins.

The target service's total response time depends on the status, such as the number of requests that arrive concurrently at the server providing the target service, and the status of the network connecting the server and PFM - Agent for Service Response. Specify for the timeout value a value that is greater than the minimum total response time when the service is running normally, so that a measurement is completed within the timeout value.

The following shows the recommended procedure for setting the timeout value for measuring by the IE probe:

  1. Replay the IE scenario placing the maximum load on the system, and estimate an approximate value of the measurement time.

  2. Specify the timeout value greater than the value acquired by the above procedure 1, and measure by the IE probe.

  3. Based on the measurement results, specify the timeout value more than the greatest values of the actual observed values.

(c) When a measurement cannot be completed within the measurement interval

Depending on the combination of the maximum number of measurement conditions for a probe and an IE probe, the timeout value, and the measurement interval, some measurements may not be completed within the measurement interval, thus disrupting the execution of measurements in a specific interval. To insure that measurement processing is completed for all measurement conditions within the specified measurement interval even if a timeout occurs, the number of measurement conditions, the maximum number of measurement conditions for a probe and an IE probe, the timeout value, and the measurement interval must all satisfy the following condition:

Minimum measurement interval =

((number of measurement conditions + (maximum number of measurement conditions - 1)) / maximum number of measurement conditions) x maximum timeout value

Round off the result.

Following is an example in which this condition is not satisfied.

Figure 5‒2: Example when measurement processing cannot be executed within the specified interval

[Figure]

This example measures eight measurement items (T1 through T8) in an environment in which the maximum number of measurement conditions for a probe or an IE probe is 3. Because the first T7 and T8 are not completed within the measurement interval, the measurement execution times for the second T2 and T3 are delayed, and this delay increases further at the end of the second T8. Thus, the delay in the measurement execution time accumulates to a point where performing the measurement at the specified interval becomes impossible. If this occurs, a warning message (KAVK08160-W or KAVK10100-W) is output to the log file. Check and, if necessary, revise the maximum number of measurement conditions for a probe or an IE probe, the measurement interval, and the timeout value.

(2) Notes about Agent Collector's collection interval settings

PFM - Agent for Service Response uses the Probe Daemon and the IE Probe Daemon to measure a target's response time. The measurement result is output once to a report file. Agent Collector collects the most recent measurement result stored in the report file. Depending on the Agent Collector's collection interval settings and the Probe Daemon and the IE Probe Daemon's measurement interval settings, part of the performance data may not be stored. Therefore, you must take into account the following:

Example 1:

The following figure shows the Probe Daemon's measurement schedule or the IE Probe Daemon's measurement schedule and Agent Collector's collection schedule under these conditions: Agent Collector's collection interval is set to 360 seconds (6 minutes), the Probe Daemon's measurement interval or the IE Probe Daemon's measurement interval is 240 seconds (4 minutes), and the Probe Daemon's timeout value or the IE Probe Daemon's timeout value is 60 seconds (1 minute).

Figure 5‒3: Example of collection schedule (1)

[Figure]

In this example, the third measurement result is not collected because the fourth measurement is completed before the result of Probe Daemon's third measurement or IE Probe Daemon's third measurement is collected by Agent Collector.

You can set Agent Collector's collection interval from PFM - Web Console. You use the measurement condition registration file to set the Probe Daemon's measurement interval or IE Probe Daemon's measurement interval. For details about setting Agent Collector's collection interval, see the chapter that describes agent monitoring in the JP1/Performance Management User's Guide. For details about the measurement condition registration file, see 8.3 Measurement condition registration file (esptask.xml).

Example 2:

The following figure shows the Probe Daemon's measurement schedule or IE Probe Daemon's measurement schedule and Agent Collector's collection schedule when Agent Collector's collection interval and the Probe Daemon's measurement interval or IE Probe Daemon's measurement interval are both set to 360 seconds (6 minutes), and when the Probe Daemon's timeout value or IE Probe Daemon's timeout value is 60 seconds (1 minute).

Figure 5‒4: Example of collection schedule (2)

[Figure]

In this example, the following shows the procedure for collecting data.

  1. When the Agent Collector collects the Probe Daemon's or the IE Probe Daemon's measurement results for the first time, the Agent Collector does not collect the measurement result because the Probe Daemon or the IE Probe Daemon does not complete their measurement. The Agent Collector succeeds in collecting the measurement results for the second or later times.

  2. Assume that the second collection of the Agent Collector is late due to the heavy burden on the machine or so. In this case, if the Agent Collector collects the measurement result after the Probe Daemon or the IE Probe Daemon completes their measurement, the Agent Collector collects their second measurement result.

  3. When the Agent Collector collects the measurement result for the third time, the Probe Daemon's or the IE Probe Daemon's second measurement result is collected, but the Agent Collector does not store the measurement result because the collected result is already stored in the above procedure 2.

  4. When the Agent Collector collects the measurement result for the fourth time, the Probe Daemon's or the IE Probe Daemon's third measurement result is collected.

In this example, although the performance data of the Probe Daemon's or the IE Probe Daemon's third measurement is collected, the Agent Collector does not store the data so that the performance data from the second to the forth measurement (i.e. 12 minutes) lacks. Into this lack of the performance data, you can interpolate the data using the previously collected performance data.

For details about how to interpolate the data into the lack of the performance data, see 3.4.4 Interpolating performance data. Hitachi recommends that you properly specify the Agent Collector's collection interval and the Probe Daemon's or the IE Probe Daemon's measurement interval in order to prevent the lack of the performance data.

(3) Notes about service monitoring

The following notes are on the service monitoring:

  1. If the port number for a probe and an IE probe defined in the measurement conditions for DHCP has already been used (such as when the machine on which this product is installed is running as a DHCP client), this product may not be able to monitor DHCP correctly.

  2. PFM - Agent for Service Response ignores cookie information specified in the meta HTML tags that are acquired during monitoring of HTTP(S) and Web transactions.

  3. With respect to an embedded resource acquisition error during Web transaction monitoring, this product continues measurement processing even if acquisition of embedded resources based on the default settings fails. To treat an embedded resource acquisition error as a monitoring error, specify the following settings in the Probe action condition definition file (esp.conf):

    Section name: WEBTRANS Probe

    Key name: skip_emb_rsc_error

    Value to be set: N

  4. In Web transaction monitoring, the GET method is used to redirect the POST method.

  5. In Web transaction monitoring, if response determination is to be performed on HTML whose character set is not Shift_JIS on Japanese OS or GB18030 on Chinese OS, specify the correct character set for the corresponding step.

    You use the <DEFAULT_CHARSET> or <CHARSET> tag in the Web transaction file to specify a character set.

    When the character set does not specified in the <DEFAULT_CHARSET> or <CHARSET> tag, Shift_JIS is assumed for Japanese OS, GB18030 is assumed for Chinese OS and US-ASCII is assumed for other OS.

    If the HTML character set cannot be specified with the <DEFAULT_CHARSET> or <CHARSET> tag, do not specify multi-byte characters in a character string used for response determination.

  6. If FTP monitoring is to be performed in an environment in which a Windows firewall is in effect, reception of the FTP server's response message for logout (QUIT command entry) may fail. To avoid this, specify the following settings in the Probe action condition definition file (esp.conf):

    Section name: FTP Probe

    Key name: ignore_quit_resp_recv_error

    Value to be set: Y

  7. In Web transaction monitoring, if a URL in a request to be issued contains the hash mark (#), PFM - Agent for Service Response treats the character string following the # as a fragment specification (with its location specified in HTML), and deletes the fragment part before issuing the request. Thus, if a defined URL or substitute string for a variable string contains a # character that is not intended to be the delimiter for a fragment, add a # character at the end of the defined URL.

  8. In Web transaction monitoring, measurement may fail if the acquired HTML character set is not Shift_JIS on Japanese OS, and if the response determination information or substitute string for dynamic session management support contains multi-byte characters. Make sure that there are no multi-byte characters in the response determination information or in the substitute string for dynamic session management support.

    For Chinese OS, measurement may fail if the acquired HTML character set is not GB18030, and if the response determination information or substitute string for dynamic session management support contains Chinese characters.

  9. Notes about searching elements that contain substitute strings in Web transaction monitoring:

    When a substitute string is obtained from HTML, elements containing the substitute string are searched for.

    In this case, the specifications of this product are as follows:

    (i) If an element with the specified name does not have the end tag (</element-name>), its start tag (<element-name>) up to the start tag of the next element with the same name is treated as the element. If there is no element with the same name, the start tag through the end of the HTML file is treated as the element.

    (ii) If the end tag of an element with the specified name (</element-name>) is preceded by the start tag of an element with the same name (<element-name>), up to the start tag of the element with the same name is treated as the element.

    (iii) If an element with the specified name is the null element (<element-name/>) and its attribute value is not enclosed in quotation marks (" or '), and if the attribute value is continued to the end of the null element (/>), the value up to / is treated as the attribute value.

    In the example below, the value of the value attribute is user01/:

    <input type=hidden name=userid value=user01/>

    To use user01 as the value of the value attribute, change the specification as follows:

    Suggestion 1: Change the null element to the start tag:

    <input type=hidden name=userid value=user01>

    Suggestion 2: Separate the attribute value and the end of the null element with a space:

    <input type=hidden name=userid value=user01 />

    Suggestion 3: Enclose the attribute value in quotation marks:

    <input type=hidden name=userid value="user01"/>

  10. In Web transaction monitoring, if a substitute string contains a character that is treated as a delimiter in the URL, such as the ?, &, or =, PFM - Agent for Service Response replaces it with a variable string as is and issues the request. If you want to encode the characters treated as the delimiters in the URL string, specify the <SUBSTITUTE_FORCE_URLENCODE> tag in the Web transaction file. For details about the <SUBSTITUTE_FORCE_URLENCODE> tag, see 8.5.2 Format and definition of the Web transaction measurement conditions.

  11. Measurement fails on a POP3 server that does not support POP3 UIDL commands. Some older versions of POP3 servers may not support UIDL commands.

  12. In Web transaction monitoring, if a substitute string is to be searched for in the acquired HTML and the attribute value of some element specified in the HTML contains < or >, the substitute character search fails, resulting in an invalid measurement result.

  13. In Web transaction monitoring, a transaction that uploads files using the POST method (to transfer files from this product to the monitored server) cannot be monitored successfully. Specifically, this applies when the following conditions overlap in the definition:

    • The POST method is used.

    • The message body is in the format multipart/form-data.

    • The message body contains a part (delimited by a separator) that specifies the filename attribute of the Content-Disposition header.

  14. If the network connection between this product and the monitoring target goes through a proxy function, such as JP1/Cm2/Internet Gateway Server, the following items may not be monitored correctly:

    • DNS

    • DHCP

    • FTP

    • TCP

  15. To use GB18030 as encoding type in Chinese OS, you cannot use the 4 bytes characters. If you use them, the measurement might not perform correctly.

  16. When PFM - Agent for Service Response is started or reloaded, the definitions in the Web transaction file that are registered in the measurement condition registration file (esptask.xml) are verified. If the verification results indicate a syntax error#, the Probe Daemon (a measurement process) cannot start. Correct the syntax error, and restart PFM - Agent for Service Response.

    #

    The following are examples of syntax errors:

    - An XML tag contains an error (a format error in the Web transaction file).

    - The user to be authenticated is specified, but no password is specified (including a situation where a password is not correctly registered with the esppasswd command).

  17. If an OS to be monitored is Window Server 2012 or later and the failover function is used, the DHCP service cannot be measured.

  18. The measurement of HTTP(S) and the Web transaction supports the following protocols in communication of SSL performed between a probe and the Web servers for the monitor.

    • TLSv1.0

    • TLSv1.1

    • TLSv1.2

    About SSLv2.0 and SSLv3.0 which are the protocol that is lower than the above, PFM - Agent for Service Response disables it. However, you can enable the enable_low_level_ssl_protocol key to general section of ESPCONF by setting when Web server aimed for monitor permits communication by these protocols. But we do not recommend that you enable SSLv2 and SSLv3 which are the protocol that is lower. For more information about enable_low_level_ssl_protocol key, refer to "Table 8-3 Definition in the General section".