Share this page

# 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

Tips to improve your search results... VuGen Function Reference Version 26.1 Function Reference 26.1 All View Local Help Center View Online Help Center Version: