Symbian3/PDK/Source/GUID-ABE77283-EED8-5A33-B574-3B771EF11086.dita
changeset 5 f345bda72bc4
parent 3 46218c8b8afa
child 9 59758314f811
equal deleted inserted replaced
4:4816d766a08a 5:f345bda72bc4
    12 <concept id="GUID-ABE77283-EED8-5A33-B574-3B771EF11086" xml:lang="en"><title>How
    12 <concept id="GUID-ABE77283-EED8-5A33-B574-3B771EF11086" xml:lang="en"><title>How
    13 to Use ULogger with Comms</title><prolog><metadata><keywords/></metadata></prolog><conbody>
    13 to Use ULogger with Comms</title><prolog><metadata><keywords/></metadata></prolog><conbody>
    14 <p>This tutorial summarises one approach for enabling, retrieving and post-processing
    14 <p>This tutorial summarises one approach for enabling, retrieving and post-processing
    15 the <xref href="GUID-B25AB5A9-52A6-50C2-8656-F8ADEE260FC9.dita">ULogger</xref> logs
    15 the <xref href="GUID-B25AB5A9-52A6-50C2-8656-F8ADEE260FC9.dita">ULogger</xref> logs
    16 for Comms. ULogger is part of the Unified Trace framework which replaces other
    16 for Comms. ULogger is part of the Unified Trace framework which replaces other
    17 logging mechanisms for Symbian OS including Flogger and CDU. </p>
    17 logging mechanisms for Symbian platform including Flogger and
       
    18 CDU. </p>
    18 <p>The Unified Trace framework has greater flexibility and speed compared
    19 <p>The Unified Trace framework has greater flexibility and speed compared
    19 to Flogger and CDU. </p>
    20 to Flogger and CDU. </p>
    20 <section><title>Introduction</title> <p>The Comms logging which has been migrated
    21 <section id="GUID-6FF10945-4E25-4F91-BDA4-CC363EEC2480"><title>Introduction</title> <p>The Comms logging which has been migrated
    21 to ULogger is as follows: </p> <ul>
    22 to ULogger is as follows: </p> <ul>
    22 <li id="GUID-677DDC92-E655-50AD-85A3-7B6817F9E12A"><p>Comms Framework Node
    23 <li id="GUID-677DDC92-E655-50AD-85A3-7B6817F9E12A"><p>Comms Framework Node
    23 messages - creation and destruction of Nodes and messages between Nodes. </p> </li>
    24 messages - creation and destruction of Nodes and messages between Nodes. </p> </li>
    24 <li id="GUID-E496D531-2CF2-5042-8820-BC8CE75CE4C6"><p>Mesh Machine messages </p> </li>
    25 <li id="GUID-E496D531-2CF2-5042-8820-BC8CE75CE4C6"><p>Mesh Machine messages </p> </li>
    25 <li id="GUID-E4892E5F-845B-5672-AB90-944A8B7DAEBE"><p>data to support the
    26 <li id="GUID-E4892E5F-845B-5672-AB90-944A8B7DAEBE"><p>data to support the
    27 </ul> <p>This logging replaces some of what was logged through the "<codeph>LOG
    28 </ul> <p>This logging replaces some of what was logged through the "<codeph>LOG
    28 CFNode *</codeph> ", "<codeph>LOG Mesh *</codeph> " and "<codeph>LOG ESock
    29 CFNode *</codeph> ", "<codeph>LOG Mesh *</codeph> " and "<codeph>LOG ESock
    29 *</codeph> " tags. In the case of the <codeph>ESock</codeph> tag, the logging
    30 *</codeph> " tags. In the case of the <codeph>ESock</codeph> tag, the logging
    30 which is written to ULogger is also written to CDU. </p> <p>This usage description
    31 which is written to ULogger is also written to CDU. </p> <p>This usage description
    31 assumes that the development tools already include ULogger support. </p>  </section>
    32 assumes that the development tools already include ULogger support. </p>  </section>
    32 <section><title>Procedure - Using ULogger</title> <p><b>Requirements</b></p> <p> 
    33 <section id="GUID-BB759C19-49DA-48EA-8550-11B897A2E768"><title>Procedure - Using ULogger</title> <p><b>Requirements</b></p> <p> 
    33           For this tutorial, the code under observation must be run from <xref href="GUID-D90C86C6-B85D-5941-9919-3725A9FFD548.dita">EShell</xref>.          </p> <p> 
    34           For this tutorial, the code under observation must be run from <xref href="GUID-D90C86C6-B85D-5941-9919-3725A9FFD548.dita">EShell</xref>.          </p> <p> 
    34           The following binaries must include logging:          </p> <ul>
    35           The following binaries must include logging:          </p> <ul>
    35 <li><p>                 <filepath>nodemessages.dll</filepath>            
    36 <li><p>                 <filepath>nodemessages.dll</filepath>            
    36    </p> </li>
    37    </p> </li>
    37 <li><p>                 <filepath>meshmachine.dll</filepath>             
    38 <li><p>                 <filepath>meshmachine.dll</filepath>             
    40 <li><p>                 <filepath>serverden.dll</filepath>                </p> </li>
    41 <li><p>                 <filepath>serverden.dll</filepath>                </p> </li>
    41 <li><p>                 <filepath>esocksvr.dll</filepath>                </p> </li>
    42 <li><p>                 <filepath>esocksvr.dll</filepath>                </p> </li>
    42 </ul><p> To enable logging for a binary either use the UDEB version of the
    43 </ul><p> To enable logging for a binary either use the UDEB version of the
    43  binary or rebuild the binary with the <codeph>SYMBIAN_TRACE_ENABLED</codeph> macro
    44  binary or rebuild the binary with the <codeph>SYMBIAN_TRACE_ENABLED</codeph> macro
    44 defined. </p></section>
    45 defined. </p></section>
    45 <section><title>Steps</title> <ol>
    46 <section id="GUID-72A353DC-CFD8-482E-B2E4-9CCCCD1C9BBA"><title>Steps</title> <ol>
    46 <li id="GUID-E3B09A4E-C87A-45F9-8DE6-653BA1A2E426"><p>                 <b>Start
    47 <li id="GUID-E3B09A4E-C87A-45F9-8DE6-653BA1A2E426"><p>                 <b>Start
    47 Eshell</b> - ULogger only supports asynchronous                 logging, so
    48 Eshell</b> - ULogger only supports asynchronous                 logging, so
    48 from EShell start a second instance of EShell.                </p> <codeblock xml:space="preserve">start eshell</codeblock> <p> 
    49 from EShell start a second instance of EShell.                </p> <codeblock xml:space="preserve">start eshell</codeblock> <p> 
    49                This allows ULogger to be stopped even if the code under  
    50                This allows ULogger to be stopped even if the code under  
    50               observation does not exit normally.                </p> </li>
    51               observation does not exit normally.                </p> </li>
   128 the SVG diagram</b> - The exchange of                 messages between Nodes
   129 the SVG diagram</b> - The exchange of                 messages between Nodes
   129 can be rendered into a diagram.                </p> <p>                 From <filepath>…\os\commsfw\commsfwtools\commstools\svg</filepath> run
   130 can be rendered into a diagram.                </p> <p>                 From <filepath>…\os\commsfw\commsfwtools\commstools\svg</filepath> run
   130                 <filepath>parseit.bat</filepath> specifying the path to the
   131                 <filepath>parseit.bat</filepath> specifying the path to the
   131 generated log.txt file:                </p> <codeblock xml:space="preserve">parseit.bat /log M:\path_to_log_file\log.txt</codeblock><fig id="GUID-F6E85A8D-09B3-40A1-B3DC-5B968C3F1A4C">
   132 generated log.txt file:                </p> <codeblock xml:space="preserve">parseit.bat /log M:\path_to_log_file\log.txt</codeblock><fig id="GUID-F6E85A8D-09B3-40A1-B3DC-5B968C3F1A4C">
   132 <desc>Example SVG output from the Message Sequence Display Tool </desc>
   133 <desc>Example SVG output from the Message Sequence Display Tool </desc>
   133 <image href="GUID-D7E5FECF-0B29-5908-A163-37036DF165E1_d0e90460_href.png" placement="inline"/>
   134 <image href="GUID-D7E5FECF-0B29-5908-A163-37036DF165E1_d0e113980_href.png" placement="inline"/>
   134 </fig> <p>                 Key to the SVG diagram:                </p> <ol>
   135 </fig> <p>                 Key to the SVG diagram:                </p> <ol>
   135 <li id="GUID-64C07144-E5BD-465E-915F-1A867AD62FAB"><p>                   
   136 <li id="GUID-64C07144-E5BD-465E-915F-1A867AD62FAB"><p>                   
   136    Vertical black lines are tagged with names to represent node          
   137    Vertical black lines are tagged with names to represent node          
   137             lifetimes. For example: <codeph>IPCpr</codeph>               
   138             lifetimes. For example: <codeph>IPCpr</codeph>               
   138      </p> </li>
   139      </p> </li>