lr.debug_message

Sends a debug message to the log file.

JavaScript

function lr.debug_message(  message_level, message  )

VBScript

Function lr.debug_message(  message_level, message  )
Message Functions

Arguments

NameComments
message_levelOne of the Message Log Runtime Settings. Disabled does not apply.

The lr.debug_message function sends a debug message when the specified message level is active. If the specified message level is not active, a message is not issued. You can set the active message level to MSG_CLASS_BRIEF_LOG or MSG_CLASS_EXTENDED_LOG from the user interface or by using lr.set_debug_message. To determine the current level, use lr.get_debug_message.

Note that you can also specify multiple message levels with an OR separator ("|"). If any one of the levels are active (from the UI), the message is issued to the Output window. If none of the levels are active, the message is not issued.

The message is sent to the output window. To display the debug messages in the output window or log file, use the Expert Mode Settings. Activate Expert Mode (Tools > Expert Mode) and then choose Tools > Options > Debug Information and select the General check box.

Return Values

On success, returns the number of characters written, not including the terminating null-character. On error, returns a negative value.

Parameterization

Standard parameterization is not available for this function.

VBScript Example

The following example illustrates the use of the debug_message functions. The initial message level setting is lr.MSG_CLASS_BRIEF_LOG. After two calls to lr.set_debug_message, the setting is the ORed value of lr.MSG_CLASS_BRIEF_LOG, lr.MSG_CLASS_EXTENDED_LOG, and lr.MSG_CLASS_RESULT_DATA, which is 19.The values are retrieved for display with lr.get_debug_message. Then, lr.debug_message is called with several message level values to illustrate when there is output.

To help understand the example, refer to the table showing the decimal values of the message level constants and their bit masks.

Constant
Value
Mask
lr.MSG_CLASS_BRIEF_LOG
1
00001
lr.MSG_CLASS_EXTENDED_LOG
16
10000
lr.MSG_CLASS_PARAMETERS
4
00100
lr.MSG_CLASS_RESULT_DATA
2
00010
lr.MSG_CLASS_FULL_TRACE
8
01000
lr.MSG_CLASS_RESULT_DATA | lr.MSG_CLASS_FULL_TRACE
10
01010
lr.message "Initial Log level is " + CStr(lr.get_debug_message)


' Initial Log level is 1
lr.set_debug_message lr.MSG_CLASS_EXTENDED_LOG, 1
lr.message "Extended Log level is " + CStr(lr.get_debug_message)

' Extended Log level is 17
lr.set_debug_message lr.MSG_CLASS_EXTENDED_LOG Or lr.MSG_CLASS_RESULT_DATA , 1

lr.message "Extended with Results Log level is " + CStr(lr.get_debug_message)

'Extended with Results Log level is 19
' Call to any function or API 
' emulated with random number. 
' Return code over 2000 means the call failed.

Randomize
rc = Rnd * 4000
lr.message "Return code = " + Cstr(rc)
' Return code = 3713.669

if (rc>2000) then
lr.debug_message lr.MSG_CLASS_BRIEF_LOG , _
	"Operation failed with basic logging."

' Output: Operation failed with basic logging.

lr.debug_message lr.MSG_CLASS_EXTENDED_LOG, _
	"Operation failed with extended logging."

' Output: Operation failed with extended logging.

lr.debug_message lr.MSG_CLASS_PARAMETERS , _
	"Operation failed with parameter substitution logging."

' --- No output.

`lr.MSG_CLASS_PARAMETERS AND Current level:
` 00100 AND 10011 = 0

lr.debug_message lr.MSG_CLASS_RESULT_DATA , _
	"Operation failed with result data logging."

' Output: Operation failed with result data logging.

lr.debug_message lr.MSG_CLASS_FULL_TRACE , _
	"Operation failed with full trace logging."

' --- No output
`lr.MSG_CLASS_FULL_TRACE AND Current level:
`01000 AND 10011 = 0

lr.debug_message lr.MSG_CLASS_RESULT_DATA Or _
	 lr.MSG_CLASS_FULL_TRACE , _
	"Operation failed with either result data or full trace logging."

' Output: Operation failed with either result data or full trace logging.
` Full trace is not active, but Result data is, so this call outputs 
` the message
end if