View a printable version of the current page.
  Wiki > Symbian Developer Network Public Wiki > ... > Test and analysis > Core Dump Server configuration file
  Core Dump Server configuration file
Added by fporta, last edited by fporta on May 14, 2008
Labels: 
(None)

Core Dump Server configuration file.


Introduction

The Core Dump Server is used to capture application crash events. It is typically used with configuration GUI. However if a GUI is not available on a given platform, an application called coredumpscript.exe can be used in conjunction with a configuration file to setup the Core Dump Server. The information
that follows describes the configuration file. 

A sample file is attached. 

File Format 

The configuration file is a Unicode file, and thus it can edited by users using a unicode editor such as VIM. 

The configuration file has several sections, with each section having several parameters. There are parameter types. Some parameters consist of pairs ( KeyType<n>, KeyValue<n> ) or triplets ( KeyIndex<n>, KeyType<n>, KeyValue<n> ). Other parameters are UIDs for ECOM plugins or the Core Dump Server itself.

File Sections 

The configuration file has the following sections: 

  • [ObservedConfiguration] : Which applications and threads to observe
  • [CoreDumpServerConfiguration]  : Data used by the Core Dump Server
  • [FormatterConfiguration] : Formatter plugin configuration
  • [WriterConfiguration] : Writer plugin configuration
  • [CoreDumpServerSettingsFile] : File version data (for internal use only, not covered below).

For the purpose of this example we will show the sections of the script when the Core Dump Server has been configured use the Symbian ELF plugin and the File Writer plugin.

Most users will be interested in specifying the application that they are trying to debug. This is covered in section [ObservedConfiguration] below.

[ObservedConfiguration] Section

This section consists of pairs of executables, processes and threads to be observed by the Core Dump Server. 

As an example, the parameter pair ( KeyType0=Z:\sys\bin\crashapp.exe   KeyValue0=Z:\sys\bin\crashapp.exe ) specifies that the Core Dump Server will observe all processes created from the executable Z:\sys\bin\crashapp.exe.

The parameter pair ( KeyType0=Z:\sys\bin\crashapp.exe   KeyValue0=crashapp.exe[102831e5]0001::Main ) specifies that the Core Dump Server will the thread named crashapp.exe[102831e5]0001::Main from executable Z:\sys\bin\crashapp.exe.

[CoreDumpServerConfiguration]Section

The [CoreDumpServerConfiguration] section configures the Core Dump Server. The UID parameter in this section is the Core Dump Server's UID=10282fe5. The section also has the following parameter triplets.

Crash Trigger

Parameter triplet ( KeyIndex0=0, KeyType0=1, KeyValue0=3 ) specifies the crash trigger for core dump creation. The GUI description for this parameter is:
                       "Select Crash Trigger:
                                   1-HW Exception
                                   2-Thread Kill
                                   3-Both"
The default value is 3-Both, thus capturing Hardware Exceptions and Thread kill events.

Action on Crash Event

Parameter triplet ( KeyIndex1=1, KeyType1=1, KeyValue1=1 ) specifies the action to apply to the target on a crash event. The GUI description for this parameter is:
                        "Action On Crash:
                                    0-None
                                    1-Suspend Thread
                                    2-Suspend Process"

 The default value is 1-Suspend Thread, thus suspending the thread that caused the crash while the crash data is gathered.

Action After Crash Event

Parameter triplet ( KeyIndex2=2, KeyType2=1, KeyValue2=1 ) specifies the action to apply to the target after the crash. The GUI description for this parameter is:
                        "Action After Crash:
                                    0-None
                                    1-Resume Thread
                                    2-Resume Process
                                    4-Kill Process"

 The default value is 1-Resume Thread, thus resuming the thread that caused the crash after the crash data is gathered.

[FormatterConfiguration] Section

The [FormatterConfiguration] section configures configures the formatter plugin. The UID parameter in this section is the Symbian ELF Formatter  UID=10282fe3. The section also has the following parameter triplets.

System-wide Data

Parameter triplet ( KeyIndex0=0, KeyType0=1, KeyValue0=2 ) specifies the System-wide crash data option. The GUI description for this parameter is:

                         "System-Wide Crash Data Option:
                                    0-    System-Wide Data
                                    1-    Crashed Process Only
                                    2-    Both"

The default value is 2-Both, thus capturing system-wide and crashed process data.

Thread Data

Parameter triplet ( KeyIndex1=1, KeyType1=6, KeyValue1=1 ) specifies whether to collect information about all the threads in the failed process. The GUI description for this parameter is:

                        "Create Data for all Threads in Crashed Process?"

The default value is 1-True.

Data Segments

Parameter triplet ( KeyIndex2=2, KeyType2=6, KeyValue2=1 ) specifies whether to create data segments for the failed process. The GUI description for this parameter is:
                        "Create Data Segments?"

 The default value is 1-True.

Code Segments

Parameter triplet ( KeyIndex3=3, KeyType3=6, KeyValue3=1 ) specifies whether to create code segments for the failed process. The GUI description for this parameter is:

                        "Create Code Segments?"

The default value is 1-True.

Thread Segments

Parameter triplet ( KeyIndex4=4, KeyType4=6, KeyValue4=1 ) specifies whether to create thread segments for the failed process. The GUI description for this parameter is:

                        "Create Thread Segments?"

 The default value is 1-True.

Register Segments 

Parameter triplet ( KeyIndex5=5, KeyType5=6, KeyValue5=1 ) specifies whether to create register segments for the failed process. The GUI description for this parameter is:

                        "Create Register Segments?"

The default value is 1-True.

Executable Information

Parameter triplet ( KeyIndex6=6, KeyType6=6, KeyValue6=1 ) specifies whether to create an executable information segment for the failed executable. The GUI description for this parameter is:

                        "Create Exec Info?"

The default value is 1-True.

Process Segment

Parameter triplet ( KeyIndex7=7, KeyType7=6, KeyValue7=1 ) specifies whether to create process segments. The GUI description for this parameter is:

                        "Create Process Info?"

 The default value is 1-True.

 

[WriterConfiguration] Section

The [WriterConfiguration] section configures the writer plugin. The UID parameter in this section is the File Writer UID=102831e4. The section also has the following parameter triplet.

File Path

Parameter triplet ( KeyIndex0=0, KeyType0=3, KeyValue0=e:\test.core  ) specifies the file path to use as the basis for each core dump file. The GUI description for this parameter is:

                  "Please supply Full Core Dump Filepath (eg "C:\coredump.core")

The default value is empty.

[live-web] Interactive Services Terms & Conditions of use | Terms of use | Privacy policy | Media Center | Contact us | © 2008 Symbian