uCosminexus Application Server, Maintenance and Migration Guide

[Contents][Glossary][Index][Back][Next]

8.28.2 Trace information that can be collected

This subsection describes the trace information of the user-extended trace based performance analysis.

Organization of this subsection
(1) Trace information of the user-extended trace based performance analysis
(2) Output levels
(3) Example of output of the user-extended trace based performance analysis

(1) Trace information of the user-extended trace based performance analysis

The following table describes the trace information of the user-extended trace based performance analysis.

Table 8-191 Trace information of the user-extended trace based performance analysis

No. in the figure#1 Information that you can acquire
Event ID
(Event)
Return code (Rc) Interface name (INT) Operation information (OPR) Additional information#2
(OPT/ASCII#3)
1 Event ID specified in the configuration file for the user-extended trace based performance analysis.
When not specified, 0xae00.
0 Identity ID specified by the user in the configuration file for the user-extended trace based performance analysis. -- The following information is output:
  • Package name
  • Class name
  • Method name
2 Event ID specified in the configuration file for the user-extended trace based performance analysis + 1.
When not specified, 0xae01.
0 Identity ID specified by the user in the configuration file for the user-extended trace based performance analysis. Line number of the text executed last by the method #4. The following information is output:
  • Package name
  • Class name
  • Method name
3 Event ID specified in the configuration file for the user-extended trace based performance analysis +1.
When not specified, 0xae01.
1 Identity ID specified by the user in the configuration file for the user-extended trace based performance analysis. Class name of the exception or error#5. The following information is output:
  • Package name
  • Class name
  • Method name

Legend:
--: No output.

#1:
Corresponds to the numbers in Figure 8-119.

#2:
The user-extended trace based performance analysis outputs the method name with the output level specified in the jvm.userprf.LogLevel property. For details on the output levels and the information output at each level, see (2) Output levels.

#3:
If the additional information output to the ASCII area exceeds 256 ASCII characters, 256 characters are output from the beginning.

#4:
Output when true is specified for the jvm.userprf.LineNumber property. For details on the jvm.userprf.LineNumber property, see 16.3 Properties used in JavaVM in the manual uCosminexus Application Server Definition Reference Guide.

#5:
When true is specified for the jvm.userprf.ThrowableName property, the class name is output with the output level specified in the jvm.userprf.LogLevel property, and the editing method specified in the jvm.userprf.ThrowableNameEditMethod property. For details on the jvm.userprf.ThrowableName and jvm.userprf.ThrowableNameEditMethod properties, see 16.3 Properties used in JavaVM in the manual uCosminexus Application Server Definition Reference Guide.

(2) Output levels

You specify the trace information output level for the user-extended trace based performance analysis in the jvm.userprf.LogLevel property.

The following table describes the output levels and the trace information that is output.

Table 8-192 Specification of the output levels and the trace information that is output

Specification in the jvm.userprf.LogLevel property Additional information (OPT/ASCII) Operation information for abnormal exit of the method (OPR)
class Class name Class name of the exception or error
package Fully qualified class name Fully qualified class name of the exception or error
method Fully qualified class name + method name
signature Fully qualified class name + method name + method argument type

For details on the jvm.userprf.LogLevel property, see 16.3 Properties used in JavaVM in the manual uCosminexus Application Server Definition Reference Guide.

(3) Example of output of the user-extended trace based performance analysis

The following are the examples of output of the user-extended trace based performance analysis.

Example when the output contents of the trace information are not changed

The following is an example of settings when the output contents of the trace information are not changed:

Example of settings in the Easy Setup definition file
... 
<param>
<param-name>UserPrfText</param-name>
<param-value>
<![CDATA[
com.sample.ClassA.method1(int),test00,false
]]>
</param-value>
</param>
<param>
<param-name>add.jvm.arg</param-name>
<param-value>-Djvm.userprf.Enable=true</param-value>
</param>
... 

Output contents
Event Rc INT OPR ASCII
0xae00 0 test00 (Blank) ClassA
0xae01 0 test00 (Blank) ClassA
The trace information is output as follows in this example:
  • The event ID settings are omitted for the method to be traced, so if the method to be traced is invoked, the default value of 0xae00 is output as the event ID at the method entry, and 0xae01 is output as the event ID at the method exit.
Example for the output of the line number in the operation information

The following is an example of settings when the configuration file for the user-extended trace based performance analysis (/test/setting.txt) is used to output the line number in the operation information:

Example of settings in the Easy Setup definition file
... 
<param>
<param-name>add.jvm.arg</param-name>
<param-value>-Djvm.userprf.Enable=true</param-value>
<param-value>-Djvm.userprf.File=/test/setting.txt</param-value>
<param-value>-Djvm.userprf.LineNumber=true</param-value>
</param>
... 

Example of settings in the configuration file for the user-extended trace based performance analysis (setting.txt)
com.sample.ClassA.method1(java.lang.String),test00,false,0xae77
com.sample.ClassB.method2(boolean),test01.false

Output contents
jvm.userprf.LineNumber=true is specified in this example, so the line number executed last by each method is output in the operation information (OPR area) if the method exits normally.
Event Rc INT OPR ASCII
0xae77 0 test00 (Blank) ClassA
0xae78 0 test00 324 ClassA
0xae00 0 test01 (Blank) ClassB
0xae01 0 test01 15 ClassB
The trace information is output as follows in this example:
  • In the second line specified in the configuration file for the user-extended trace based performance analysis, the event ID settings are omitted for the method to be traced, so if the method to be traced is invoked, the default value of 0xae00 is output as the event ID at the method entry, and 0xae01 is output as the event ID at the method exit.
Example for the output of the exception or error class name

The following is an example of settings when the class name of the thrown exception is output in the operation information (OPR area) if the method exits abnormally. Note that this example describes the case in which ClassC exists in the subclass ClassA, and ClassA.method1 is overridden in ClassC.

Example of settings in the Easy Setup definition file
... 
<param>
<param-name>UserPrfText</param-name>
<param-value>
<![CDATA[
com.sample.ClassA.method1(),test00,true,0xae0a
]]>
</param-value>
</param>
<param>
<param-name>add.jvm.arg</param-name>
<param-value>-Djvm.userprf.Enable=true</param-value>
<param-value>-Djvm.userprf.LineNumber=true</param-value>
<param-value>-Djvm.userprf.ThrowableName=true</param-value>
</param>
... 

Output contents
Event Rc INT OPR ASCII
0xae0a 0 test00 (Blank) ClassA
0xae0b 0 test00 324 ClassA
0xae0a 0 test00 (Blank) ClassC
0xae0b 1 test00 IOException ClassC
The trace information is output as follows in this example:
  • true is set in the subclass flag, so the information of ClassC.method1 that overrides ClassA.method1 is also output.
  • jvm.userprf.LineNumber=true is specified, so the line number executed last by each method is output in the operation information (OPR area) if the method exits normally.
  • jvm.userprf.ThrowableName=true is set, so the class name of the thrown exception is output in the operation information (OPR area) if the method exits abnormally. However, the jvm.userprf.LogLevel property is not specified, so only the class name of the thrown exception is output.
Example of changing the output method of the exception or error class name

The following is an example of settings when the output method of the exception or error class name is changed.

Example of settings in the Easy Setup definition file
... 
<param>
<param-name>UserPrfText</param-name>
<param-value>
<![CDATA[
com.sample.ClassA.method1(),test00,false
]]>
</param-value>
</param>
<param>
<param-name>add.jvm.arg</param-name>
<param-value>-Djvm.userprf.Enable=true</param-value>
<param-value>-Djvm.userprf.ThrowableName=true</param-value>
<param-value>-Djvm.userprf.ThrowableNameEditMethod=FRONT_CUT</param-value>
<param-value>-Djvm.userprf.LogLevel=method</param-value>
</param>
... 

Output contents
Event Rc INT OPR ASCII
0xae00 0 test00 (Blank) com.sample.ClassA.method1
0xae01 1 test00 *ment.IllegalClassFormatException com.sample.ClassA.method1
The trace information is output as follows in this example:
  • The event ID settings are omitted for the method to be traced, so if the method to be traced is invoked, the default value of 0xae00 is output as the event ID at the method entry, and 0xae01 is output as the event ID at the method exit.
  • jvm.userprf.ThrowableName=true is specified, so the exception or error class name is output to the operation information (OPR area) if the method exits abnormally. However, the thrown exception name is 33 characters or more and jvm.userprf.ThrowableNameEditMethod=FRONT_CUT is specified, so the name is output with the front part omitted. The omitted part is displayed using * (asterisk).
  • jvm.userprf.LogLevel=method is specified, so the fully qualified class name + method name is output in the additional information (ASCII area).