zoukankan      html  css  js  c++  java
  • (转)运行跟踪格式化程序

    运行跟踪格式化程序

    原文:https://www.ibm.com/support/knowledgecenter/zh/SSYKE2_8.0.0/com.ibm.java.lnx.80.doc/diag/tools/trace_formatter.html

    跟踪格式化程序是 Java™ 程序,它可将跟踪文件中的二进制跟踪点数据转换为可读格式。该格式化程序需要包含格式化模板的 TraceFormat.dat 和 J9TraceFormat.dat 文件。格式化程序生成包含有关 JVM 的头信息的文件,此 JVM 生成了二进制跟踪文件、为其生成跟踪点的线程列表和格式化的跟踪点及其时间戳记、线程标识、跟踪点标识和跟踪点数据。

    要在二进制跟踪文件类型上使用跟踪格式化程序:
    java com.ibm.jvm.TraceFormat <input_file>  [<output_file>] [options]

    其中,<input_file> 是要格式化的二进制跟踪文件的名称,<output_file> 是输出文件的名称。

    如果未指定输出文件,那么输出文件名为 <input_file>.fmt。

    格式化跟踪所需的堆大小与跟踪文件中存在的线程数成正比。对于较多数量的线程,格式化程序可能会耗尽内存,生成错误 OutOfMemoryError。 在此情况下,请使用 -Xmx 选项增加堆大小。

    可用选项

    以下选项可用于跟踪格式化程序:
    -datfile=<file1.dat>[,<file2.dat>]
    以逗号分隔的跟踪格式化数据文件的列表。缺省情况下,使用以下文件:$JAVA_HOME/lib/J9TraceFormat.dat 和 $JAVA_HOME/lib/TraceFormat.dat
    -format_time=yes|no
    指定是否将时间戳记格式化为可人可读的格式。缺省值为 yes。
    -help
    显示用法信息。
    -indent
    增加每个入口跟踪点上的跟踪消息缩进,并减少每个出口跟踪点上的跟踪消息缩进。缺省为不增加消息缩进。
    -summary
    将摘要信息打印到屏幕而不生成输出文件。
    -threads=<thread id>[,<thread id>]...
    过滤输出以仅显示指定的线程标识。thread id 是线程标识,可指定为十进制或十六进制 (0x) 格式。可以指定任意数量的线程标识,以逗号分隔。
    -timezone=+|-HH:MM
    指定在格式化时间戳记时要应用的 UTC 偏移量(正或负小时和分钟数)。
    -verbose
    输出详细描述的警告和错误消息以及性能统计信息。
    以下示例显示通过运行跟踪格式化程序命令产生的输出:
    C:	est>java com.ibm.jvm.TraceFormat sample.trc
    Writing formatted trace output to file sample.trc.fmt
    Processing 0.4921875Mb of binary trace data
    Completed processing of 6983 tracepoints with 0 warnings and 0 errors

    格式化跟踪输出类似于以下摘录(为了显示关键方面的信息而被截断):
                   Trace Summary
    
    Service level:
            JRE 1.8.0 Windows 7 amd64-64 build  (pwa6480sr2-20150624_06(SR2))
    
    JVM startup options:
    -Xoptionsfile=c:uildpwa6480sr2-20150624sdkjreincompressedrefsoptions.default
    ....
    
    Processor information:
            Arch family:         AMD64
            Processor Sub-type:  Opteron
            Num Processors:      8
            Word size:           64
    
    Trace activation information::
            FORMAT=c:uildpwa6480sr2-20150624sdkjrelib;.
            MAXIMAL=all{level1}
            EXCEPTION=j9mm{gclogger}
            MAXIMAL=all{level2}
            output=sample
    
    Trace file header:
            JVM start time: 08:58:35.527000000
            Generations:    1
            Pointer size:   8
    
    Active threads
    ....
            0x000000000f155f00  Attach API wait loop
            0x000000000f18b200  Thread-1
            0x000000000f190200  Thread-3
    
    
                    Trace Formatted Data 
    
    Time (UTC)          Thread ID          Tracepoint ID Type   Tracepoint Data
    08:58:35.527291919 *0x000000000f010500 j9trc.0       Event  Trace engine initialized for VM = 0x3ad4d0
    08:58:35.527349836  0x000000000f010500 j9prt.0       Event  Trace engine initialized for module j9port
    08:58:35.527354040  0x000000000f010500 j9thr.0       Event  Trace engine initialized for module j9thr
    08:58:35.529409621 *0x000000000f01eb00 j9trc.5       Event  Thread started VMthread = 0xf01eb00, name = (unnamed thread), nativeID = 0x24a798
    ....
    08:58:35.536134516  0x000000000f010500 j9vm.1        Entry >Create RAM class from ROM class 0x3cab680 in class loader 0x3042338
    08:58:35.536136384  0x000000000f010500 j9vm.80       Event  ROM class 0x3cab680 is named java/lang/Object
    08:58:35.536200373  0x000000000f010500 j9vm.2        Exit  <Created RAM class 0xf03ef00 from ROM class 0x3cab680

  • 相关阅读:
    JavaScript对原始数据类型的拆装箱操作
    Javascript继承(原始写法,非es6 class)
    动态作用域与词法作用域
    自行车的保养
    探索JS引擎工作原理 (转)
    C语言提高 (7) 第七天 回调函数 预处理函数DEBUG 动态链接库
    C语言提高 (6) 第六天 文件(续) 链表的操作
    C语言提高 (5) 第五天 结构体,结构体对齐 文件
    C语言提高 (4) 第四天 数组与数组作为参数时的数组指针
    C语言提高 (3) 第三天 二级指针的三种模型 栈上指针数组、栈上二维数组、堆上开辟空间
  • 原文地址:https://www.cnblogs.com/liujiacai/p/7687733.html
Copyright © 2011-2022 走看看