Using Go Agent - Running your instrumented application for testing

Deployment types

Standalone

When deploying the application, the Sealights agent, which was embedded in the application via static instrumentation, will run when enabled.

Lambda

When deploying to lambda, the performance and network communication are critical. Therefore the scan should be done with light-mode set to true, and the lambda agent should communicate through the Sealights collector rather than directly to the Sealights servers by setting the collector-url.

Enabling the agent

If during the scan, the flag --disable-on-init true was provided, then the agent will be off by default. This is the recommended way to work as it prevents the agent from being accidentally in an environment not meant to have the agent running in.

  • To enable the agent, you need to provide the env variable SEALIGHTS_DISABLE_ON_INIT set to false

  • If the --disable-on-init was not provided or set to false, then the agent will start working automatically with your application. To disable it, you can provide the env variable SEALIGHTS_DISABLE set to true

Providing a lab ID

To associate the application to a lab that the tests run against, the Lab ID needs to be provided via the dedicated environment variable SEALIGHTS_LAB_ID

For example, you can use the following commands:

Dockerfile

ENV SEALIGHTS_LAB_ID=integ_test_myapp

Linux

export SEALIGHTS_LAB_ID=integ_test_myapp

Powershell

$env:SEALIGHTS_LAB_ID='integ_test_myapp'

Additional Environment variables

The go agent sets the runtime configuration during the scan process. however, in some cases, there is a need to override the configuration parameters during runtime.

This can be done via environment variables as below:

Environment Variable Name

Default Value

Description

Environment Variable Name

Default Value

Description

SEALIGHTS_DISABLE_ON_INIT

TRUE

You need to set this env variable to false in order to enable sealights when running the scan with --disable-on-init true

SEALIGHTS_DISABLE

FALSE

If you do not run the scan with --disable-on-init true, then use this flag to disable Sealights. (For instance in production)

SEALIGHTS_COLLECTOR_URL

““

Setting Collector URL in light mode (for lambda apps)

SEALIGHTS_LAB_ID

BuildSession Id

Setting Lab Id

SEALIGHTS_PROXY_URL

““

Proxy URL for connection to server

SEALIGHTS_LOG_LEVEL

info

Min log level: “debug", "info", "warn", "error"

SEALIGHTS_LIGHT_MODE

FALSE

Enable/Disable agent mode in light mode (for lambda apps)