Crash API documentation

Version: stable

FUNCTION
crash.write_dump() writes crash dump
crash.set_file_path() sets the file location for crash dumps
crash.load_previous() loads a previously written crash dump
crash.release() releases a previously loaded crash dump
crash.set_user_field() stores user-defined string value
crash.get_modules() get all loaded modules from when the crash occured
crash.get_user_field() reads user field from a loaded crash dump
crash.get_sys_field() reads a system field from a loaded crash dump
crash.get_signum() read signal number from a crash report
crash.get_backtrace() read backtrace recorded in a loaded crash dump
crash.get_extra_data() read text blob recorded in a crash dump
CONSTANT
crash.SYSFIELD_ENGINE_VERSION engine version as release number
crash.SYSFIELD_ENGINE_HASH engine version as hash
crash.SYSFIELD_DEVICE_MODEL device model as reported by sys.get_sys_info
crash.SYSFIELD_MANUFACTURER device manufacturer as reported by sys.get_sys_info
crash.SYSFIELD_SYSTEM_NAME system name as reported by sys.get_sys_info
crash.SYSFIELD_SYSTEM_VERSION system version as reported by sys.get_sys_info
crash.SYSFIELD_LANGUAGE system language as reported by sys.get_sys_info
crash.SYSFIELD_DEVICE_LANGUAGE system device language as reported by sys.get_sys_info
crash.SYSFIELD_TERRITORY system territory as reported by sys.get_sys_info
crash.SYSFIELD_ANDROID_BUILD_FINGERPRINT android build fingerprint
crash.SYSFIELD_MAX The max number of sysfields.
crash.USERFIELD_MAX The max number of user fields.
crash.USERFIELD_SIZE The max size of a single user field.

Functions

crash.write_dump()

crash.write_dump()

Performs the same steps as if a crash had just occured but allows the program to continue. The generated dump can be read by crash.load_previous

PARAMETERS


crash.set_file_path()

crash.set_file_path(path)

Crashes occuring before the path is set will be stored to a default engine location.

PARAMETERS

path file path to use

crash.load_previous()

crash.load_previous()

The crash dump will be removed from disk upon a successful load, so loading is one-shot.

PARAMETERS

RETURNS

handle handle to the loaded dump, or nil if no dump was found

crash.release()

crash.release(handle)

releases a previously loaded crash dump

PARAMETERS

handle handle to loaded crash dump

crash.set_user_field()

crash.set_user_field(index,value)

Store a user value that will get written to a crash dump when a crash occurs. This can be user id:s, breadcrumb data etc. There are 32 slots indexed from 0. Each slot stores at most 255 characters.

PARAMETERS

index slot index. 0-indexed
value string value to store

crash.get_modules()

crash.get_modules(handle)

The function returns a table containing entries with sub-tables that have fields 'name' and 'address' set for all loaded modules.

PARAMETERS

handle crash dump handle

RETURNS

modules module table

crash.get_user_field()

crash.get_user_field(handle,index)

reads user field from a loaded crash dump

PARAMETERS

handle crash dump handle
index user data slot index

RETURNS

value user data value recorded in the crash dump

crash.get_sys_field()

crash.get_sys_field(handle,index)

reads a system field from a loaded crash dump

PARAMETERS

handle crash dump handle
index

RETURNS

value value recorded in the crash dump, or nil if it didn't exist

crash.get_signum()

crash.get_signum(handle)

read signal number from a crash report

PARAMETERS

handle crash dump handle

RETURNS

signal signal number

crash.get_backtrace()

crash.get_backtrace(handle)

A table is returned containing the addresses of the call stack.

PARAMETERS

handle crash dump handle

RETURNS

backtrace table containing the backtrace

crash.get_extra_data()

crash.get_extra_data(handle)

The format of read text blob is platform specific and not guaranteed but can be useful for manual inspection.

PARAMETERS

handle crash dump handle

RETURNS

blob string with the platform specific data

Constants

crash.SYSFIELD_ENGINE_VERSION

engine version as release number

engine version as release number


crash.SYSFIELD_ENGINE_HASH

engine version as hash

engine version as hash


crash.SYSFIELD_DEVICE_MODEL

device model as reported by sys.get_sys_info

device model as reported by sys.get_sys_info


crash.SYSFIELD_MANUFACTURER

device manufacturer as reported by sys.get_sys_info

device manufacturer as reported by sys.get_sys_info


crash.SYSFIELD_SYSTEM_NAME

system name as reported by sys.get_sys_info

system name as reported by sys.get_sys_info


crash.SYSFIELD_SYSTEM_VERSION

system version as reported by sys.get_sys_info

system version as reported by sys.get_sys_info


crash.SYSFIELD_LANGUAGE

system language as reported by sys.get_sys_info

system language as reported by sys.get_sys_info


crash.SYSFIELD_DEVICE_LANGUAGE

system device language as reported by sys.get_sys_info

system device language as reported by sys.get_sys_info


crash.SYSFIELD_TERRITORY

system territory as reported by sys.get_sys_info

system territory as reported by sys.get_sys_info


crash.SYSFIELD_ANDROID_BUILD_FINGERPRINT

android build fingerprint

android build fingerprint


crash.SYSFIELD_MAX

The max number of sysfields.

The max number of sysfields.


crash.USERFIELD_MAX

The max number of user fields.

The max number of user fields.


crash.USERFIELD_SIZE

The max size of a single user field.

The max size of a single user field.