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
| Name | Comments |
|---|---|
| message_level | One 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

