3 This utility is intended to assist in the analysis of large debug output
4 files generated with -ORBDebuglevel 10. The utility summarizes thread,
5 connection, and invocation details for a collection of related processes.
7 This is a work in progress. It currently is limited to parsing logs of
10 The executable is installed as $ACE_ROOT/bin/tao_logWalker.
12 The command line options are:
14 -t <version> where <version> represents a TAO minor version
15 number, currently 1.5 through 2.0 are supported.
16 As variations in logfile output bound to version
17 are found, this option will expand and may include
18 micro release numbers as well. Default is 2.0.
20 -o <filename> redirects the output to the named file rather than
23 -d <directory> breaks the output into multiple files under the
24 named directory. The directory will be created if
25 it does not exist. -o and -d are mutually exclusive.
27 -p <name=value> allows the tagging of processes participating in
28 a logged run, but for which no log file exists. The
29 name in this case is some alias which will appear in
30 the output, and value is the TCP endpoint used by
33 -a <name=value> allows for substitution of addresses. Some endpoints
34 may be logged using a hostname, while other instances
35 may appear as an IP address. This is a simple means
36 of substituting one for the other to improve the
37 recognition of a peer process.
39 -m <filename> read argument from the named manifest file. For
40 repeated analysis of may perhaps distributed log files,
41 use a manifest file to minimize keying in long command
42 lines. Each line of the file contains one full argument.
44 [alias=]logfile provide as many log files as needed. The optional
45 alias gives a way to assign a useful name to the process
46 that generated the log output in the file. If many
47 processes shared a logfile so that their output is
48 comingled or consecutive, each process instance will be
49 given an indexed alias such as alias_1, alias_2, etc.
51 Below is a sample output resulting from a run of tests/Hello, which can be
52 reproduced by running: ./tao_logWalker -m hello.mft
55 Session summary report: 2 Processes detected.
56 Host process HelloServer pid(8447) from logfile helloServer.log
57 listening on phil.ociweb.com:33152, 10.201.200.173:33152
58 1 threads, server to 1
59 Host process HelloClient pid(8448) from logfile helloClient.log
60 listening on 10.201.200.173:40203
61 1 threads, client to 1
65 Session detail threads report:
67 Host process HelloServer pid (8447) thread details:
68 Thread[1] tid = 2147483647 2 encounters
70 Host process HelloClient pid (8448) thread details:
71 Thread[1] tid = 2147483647 2 encounters
75 Session detail peer process report:
77 Host process HelloServer pid (8447) peer processes:
80 peer process proc_0 handle[8] as server to HelloClient referenced 1 objects in 2 invocations closed on line 71
82 Host process HelloClient pid (8448) peer processes:
84 peer process proc_1 handle[7] as client on 10.201.200.173:40203 to HelloServer referenced 1 objects in 2 invocations closed on line 77
89 Session detail object report:
91 Host process HelloServer pid (8447) peer objects:
92 1 Objects referenced in proc_0:
94 Total of 2 invocations
97 Host process HelloClient pid (8448) peer objects:
98 1 Objects referenced in proc_1:
100 Total of 2 invocations
105 Session detail invocation report:
107 Host process HelloServer pid (8447) invocations:
109 2 Invocations with proc_0:
110 1 for obj_0 from HelloClient [get_string] Request, line 30 Thread[1] Reply, line 37 log offset = 7
111 2 for obj_0 from HelloClient [shutdown] Request, line 58 Thread[1] oneway
113 Host process HelloServer pid (8447) end invocation report
115 Host process HelloClient pid (8448) invocations:
117 2 Invocations with proc_1:
118 1 to obj_0 in HelloServer [get_string] Request, line 27 Thread[1] Reply, line 49 log offset = 22
119 2 to obj_0 in HelloServer [shutdown] Request, line 62 Thread[1] oneway
121 Host process HelloClient pid (8448) end invocation report