To test drive your lambda in a productive environment you can use the Debugger within Functions. Simply click on the "Debug" tab of while developing your lambda. Your code will then be executed inside an environment where all of Functions' features (e.g. Secrets, Payload and Domain Whitelist) are at its disposal.

LivePerson Functions Debugger

The debugging interface consists of three main parts:

  • The Editor allows you to place breakpoints at which debugging execution will halt. Simply add/remove breakpoints by clicking the grey gutter on its left side of the corresponding line number.
  • Use the Output to gain more insights about your lambdas execution. It displays the logs generated by console.debug/.info/.warn/.error statements in addition to the output of execution itself, whether it resulted in an error or success.
  • The Sidebar hosts various functionalities: the Actions, the Payload-Editor and the Variable Inspector.

Actions

LivePerson Functions Debugger Button Startup Start the Debugger

LivePerson Functions Debugger Button Start Start the debug execution

LivePerson Functions Debugger Button Resume Resume to the next breakpoint

LivePerson Functions Debugger Button Stepover Stepover to the next line of code

LivePerson Functions Debugger Button Restart Stop and Restart debug execution

LivePerson Functions Debugger Button Stop Stop the debug execution

Debugger States

State Description
Initial LivePerson Functions Debugger State Not Started In this state the Debugger hasn't been started yet.
To startup the Debugger, press the LivePerson Functions Debugger Button Startup button. After startup the debug of your lambda code will directly be started.
Start Up LivePerson Functions Debugger State Starting The Debugger is starting up. This will take around 30 seconds.
Ready LivePerson Functions Debugger State Ready The Debugger is currently idle i.e. ready to be started.
To start debugging, press the LivePerson Functions Debugger Button Start button and the Debugger will start to debug your lambda code.
Loading LivePerson Functions Debugger State Loading Code The Debugger is loading your lambda code. This might take up to 20s to complete.
Running LivePerson Functions Debugger State Running The Debugger is currently executing the code. After a while the Debugger should either enter the Paused state or - if reached the end of the lambda code - back to its Ready state
Paused LivePerson Functions Debugger State Paused The Debugger is paused. In this state you can inspect variables via the Variable Inspector.
Crashed LivePerson Functions Debugger State Crashed The Debugger has crashed and will try to recover.

Payload Editor

The Payload Editor enables you to edit and reset the payload that input to your lambda. Initially this is set to the default of your lambdas event but can be modified to fit custom scenarios. You can also reset the payload here if you want to recreate the initial payload.

LivePerson Functions Debugger Payload Editor

Payloads will be retained client-side for your convenience. If you want to reset to the original payload you will have to do so explicitly in the editor.

Variable Inspector

If there is a breakpoint set, the debugger will pause at the next breakpoint in the code flow. In this state you can inspect the current values of your variables and the environment variables. LivePerson Functions Sidebar Debugger Paused