> For the complete documentation index, see [llms.txt](https://docs.sealights.io/knowledgebase/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sealights.io/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent/configuration-settings.md).

# Configuration settings

This section describes the SeaLights ABAP Agent's configuration settings, stored in `config.toml`. The default location is `%ProgramData%\Tricentis\SeaLights\ABAP Agent\config\config.toml`. You can edit some of these settings as described below by modifying this file directly.

{% hint style="info" %}
Back up the `config.toml` file before you make any changes.
{% endhint %}

### Configuration file sections

The `config.toml` file has the following sections:

#### version

This root key identifies the configuration schema version. The current supported version is `2`.

```toml
version = 2
```

Do not modify this value manually. The agent automatically migrates the configuration to the current version on startup. To upgrade a legacy (v0.69 or earlier) configuration, see [Migrate a legacy configuration](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent/command-line-interface/set-up-the-agent/migrate-a-legacy-configuration.md).

#### \[settings]

This section stores the command-line interface's installation settings. It has the following fields:

<table><thead><tr><th width="110.94140625">Field</th><th width="644.1796875">Description</th></tr></thead><tbody><tr><td>userdata</td><td>The name of the ABAP Agent's userdata directory.</td></tr><tr><td>install</td><td>The path of the <code>bin</code>, <code>config</code> and <code>userdata</code> directories to the install directory.</td></tr><tr><td>key</td><td>Used for encryption. This field should be empty if there is no encryption.</td></tr><tr><td>iv</td><td>Used for encryption. This field should be empty if there is no encryption.</td></tr></tbody></table>

You can modify the **userdata** and **install** fields if you want to rename the userdata directory or change the location of the bin, config and userdata directories. Do not modify the **key** or **iv** fields.

#### \[\[rfc]]

These sections store the details for each of your RFC Destinations. They have the following fields:

<table><thead><tr><th width="157.046875">Field</th><th>Description</th></tr></thead><tbody><tr><td>name</td><td>The name of the RFC Destination.</td></tr><tr><td>router</td><td>(Optional) The router string used for the connection.</td></tr><tr><td>hostname</td><td>The hostname of the SAP server.</td></tr><tr><td>sysnr</td><td>The system number used for the connection.</td></tr><tr><td>client</td><td>The client number used for the connection.</td></tr><tr><td>username</td><td>The username used for the connection.</td></tr><tr><td>password</td><td>The password used for the connection.</td></tr><tr><td>cachedusage</td><td>Indicates whether usage data is cached for this RFC Destination.</td></tr></tbody></table>

You can rename an RFC Destination by modifying its **name** field. However, you'll also need to update each of \[\[Pipelines]] sections to use the new RFC Destination name.

Do not modify the **username** and **password** fields. These values are encrypted.

If you modify the connection details for an RFC Destination, you don't need to rerun the command-line interface's Initial Build Map or Build Modification commands. However, you will need to recreate any Footprints task that uses the RFC Destination by running `footprints stop` followed by `footprints run`. See [Collect Footprints data for your Pipeline](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent/command-line-interface/collect-footprints-data-for-your-pipeline.md).

#### \[rfcdata.prd]

This section defines how the Agent retrieves data from each PRD system. It has the following fields:

<table><thead><tr><th width="204.328125">Field</th><th>Description</th></tr></thead><tbody><tr><td>retentionperiod (<strong>N</strong>)</td><td>The Agent retains the most recent <strong>N</strong> months of data from each PRD system.</td></tr><tr><td>typequeries</td><td>The queries used to retrieve data from each PRD system.</td></tr><tr><td>separators</td><td>The field separators used when retrieving usage data from the PRD system.</td></tr><tr><td>mnemonicfieldtokens</td><td>The mnemonic field tokens used when retrieving usage data from the PRD system.</td></tr><tr><td>descriptionfieldtokens</td><td>The description field tokens used when retrieving usage data from the PRD system.</td></tr><tr><td>stepfieldtokens</td><td>The step field tokens used when retrieving usage data from the PRD system.</td></tr></tbody></table>

You can modify the **retentionperiod** and **separators** fields as required. Don't modify the other fields unless Tricentis Support asks you to.

#### \[rfcdata.qas]

This section defines how the ABAP Agent retrieves data from each QAS system. It has the following fields:

<table><thead><tr><th width="183.25390625">Field</th><th>Description</th></tr></thead><tbody><tr><td>retentionperiod (<strong>N</strong>)</td><td>The Agent retains the most recent N months of data from each QAS system.</td></tr><tr><td>tables</td><td>The SAP table from which to retrieve SCMON data.</td></tr></tbody></table>

You can modify the **retentionperiod** field as required. Don't modify the **tables** field unless Tricentis Support asks you to.

#### \[\[pipeline]]

These sections store details for each of your Pipelines. They have the following fields:

<table><thead><tr><th width="130">Field</th><th>Description</th></tr></thead><tbody><tr><td>appname</td><td>The SeaLights application name associated with this pipeline. Auto-populated by <code>slabapcli pipeline set --appname</code>.</td></tr><tr><td>name</td><td>The effective pipeline identifier used in <code>buildmap</code>, <code>buildmods</code>, and <code>footprints</code> commands. Auto-generated as <code>&#x3C;appname>-&#x3C;qas></code> if not set explicitly via <code>--name</code>.</td></tr><tr><td>qas</td><td>The Pipeline's QAS RFC Destination. Mutually exclusive with <code>dev</code>.</td></tr><tr><td>dev</td><td>The Pipeline's DEV RFC Destination (used in place of <code>qas</code> when the source system is a DEV system). Mutually exclusive with <code>qas</code>.</td></tr><tr><td>prd</td><td>The Pipeline's PRD RFC Destination.</td></tr><tr><td>labid</td><td>The lab ID associated with this pipeline. Auto-generated as <code>&#x3C;QAS SID> &#x3C;QAS hostname></code> if not set explicitly via <code>--labid</code>.</td></tr><tr><td>disablesetref</td><td>Boolean. Controls whether the set-ref step is disabled for this pipeline. Default: <code>false</code>. Managed via CLI only — do not edit directly.</td></tr></tbody></table>

If you modify the connection details for a Pipeline, you don't need to rerun the command-line interface's Initial Build Map or Build Modification commands. However, you will need to recreate any Footprints task that uses the Pipeline by running `footprints stop` followed by `footprints run`. See [Collect Footprints data for your Pipeline](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent/command-line-interface/collect-footprints-data-for-your-pipeline.md).

#### \[componentstoignore]

This optional section specifies SAP software components (delivery units) to exclude from the Initial Build Map. Objects belonging to these components are filtered out during build map creation.

{% code title="Example" overflow="wrap" %}

```toml
[componentstoignore]
components = ["SAP_BASIS", "SAP_UI"]
```

{% endcode %}

| Field        | Description                                                      |
| ------------ | ---------------------------------------------------------------- |
| `components` | An array of SAP delivery-unit names (DLVUNIT values) to exclude. |

{% hint style="info" %}
If this section is omitted or `components` is empty, **SAP\_BASIS** and **SAP\_UI** are excluded by default. To include all components (no filtering), set `components` to an explicit empty array `[]`.
{% endhint %}

#### \[logging]

This section defines the ABAP Agent's logging settings. It has the following fields:

<table><thead><tr><th width="122.83203125">Field</th><th>Description</th></tr></thead><tbody><tr><td>level</td><td>The logging level.</td></tr><tr><td>flushinterval</td><td>The interval in seconds after which logging messages are written to the log files (optional).</td></tr><tr><td>flushlevel</td><td>The logging flush level (optional). If you don't set this field, the Agent uses info as the default value.</td></tr><tr><td>consolelevel</td><td>The logging console level (optional). If you don't set this field, the Agent uses info as the default value.</td></tr></tbody></table>

You can modify any of these settings as required. The **...level** fields may have the following values:

<table><thead><tr><th width="116.046875">Value</th><th>Description</th></tr></thead><tbody><tr><td>trace</td><td>The Agent logs detailed trace information (where available).</td></tr><tr><td>debug</td><td>The Agent logs detailed debug details.</td></tr><tr><td>info</td><td>The Agent logs information details.</td></tr><tr><td>warning</td><td>The Agent logs warning details.</td></tr><tr><td>error</td><td>The Agent logs error details.</td></tr><tr><td>critical</td><td>The Agent logs critical messages.</td></tr><tr><td>off</td><td>The Agent logs no messages.</td></tr></tbody></table>

#### \[sealights]

This section defines how the ABAP Agent communicates with SeaLights.

<table><thead><tr><th width="170.7421875">Field</th><th>Description</th></tr></thead><tbody><tr><td>token</td><td>The SeaLights bearer token.</td></tr><tr><td>delaybetweenmods</td><td>The time in seconds after which each Build Modification is sent to SeaLights. If you don't set this field, the Agent uses 300 as the default value.</td></tr><tr><td>clientattempts</td><td>The number of attempts the Agent makes at calling the SeaLights REST_API method. If you don't set this field, the Agent uses <strong>5</strong> as the default value.</td></tr></tbody></table>

You can modify the **delaybetweenmods** and **clientattempts** fields as required. Do not modify the **token** field. This value is encrypted.

#### \[footprints]

This section defines how the ABAP Agent processes Footprints data. It has the following fields:

<table><thead><tr><th width="260">Field</th><th>Description</th></tr></thead><tbody><tr><td>readstartdate</td><td>Deprecated — retained for backward compatibility. Ignored by current agent versions.</td></tr><tr><td>readstarttime</td><td>Deprecated — retained for backward compatibility. Ignored by current agent versions.</td></tr><tr><td>readtime</td><td>Deprecated — retained for backward compatibility. Ignored by current agent versions.</td></tr><tr><td>labid</td><td>The lab ID for which to process Footprints data.</td></tr><tr><td>testexecutionqueryingfreq</td><td>The frequency in seconds with which SeaLights checks Tosca to find new test executions.</td></tr><tr><td>scmonrecollectionfreqmins</td><td>How often (in minutes) the agent re-collects SCMON baseline data. Optional — the agent uses a default interval if not set.</td></tr><tr><td>typequeries</td><td>An array of type/pattern entries used to filter out SCMON context objects from footprints collection. See <strong>Footprints type queries</strong> below.</td></tr></tbody></table>

You can modify the **labid**, **testexecutionqueryingfreq**, **scmonrecollectionfreqmins**, and **typequeries** fields as required. Do not modify the other fields.

**Footprints type queries**

The `typequeries` field lets you exclude specific SCMON context objects from footprints collection based on object type and name pattern. Each entry has a `type` and a `query` (glob pattern):

{% code title="Example" overflow="wrap" %}

```toml
[footprints]
typequeries = [
  { type = "PROG", query = "SAPL*" },
  { type = "TCOD", query = "SE*" },
  { type = "ALL", query = "/SAP/*" },
]
```

{% endcode %}

| Type   | Matches              |
| ------ | -------------------- |
| `ALL`  | Any object type      |
| `PROG` | Programs             |
| `TCOD` | Transaction codes    |
| `FUNC` | RFC function modules |
| `ODAT` | OData services       |

Pattern syntax: `*` matches any sequence of characters, `?` matches a single character. Matching is case-insensitive.

{% hint style="info" %}
If `typequeries` is empty or not set, no objects are excluded. The agent auto-migrates older configs to include an empty `typequeries` array.
{% endhint %}

#### \[proxy]

This optional section defines how the ABAP Agent connects to SeaLights through a proxy server.\
If this section is present, at least the **server** field must be specified.

```
[proxy] # optional, if present, at least 'server' must be specified
server = 'http://domain.com'    # valid uniform resource identifier (URI)
username = 'user'               # optional, encrypted using the 'key'
password = 'password'           # optional, encrypted using the 'key'
```

The agent supports two ways to define proxy settings, in the following order of priority:

1. **Environment variables**\
   The following environment variables override any values in the `[proxy]` section:
   * `SL_PROXY` or `SL_PROXY_SERVER` - proxy server address (URI)
   * `SL_PROXY_USERNAME` - proxy username (optional)
   * `SL_PROXY_PASSWORD` - proxy password (optional)
2. **Configuration file section**\
   The `[proxy]` section in the `config.toml` file, as shown above.

If no proxy settings are configured in either method, the ABAP Agent will connect directly without a proxy.

#### \[http]

<table><thead><tr><th width="191.6328125">Field</th><th>Description</th></tr></thead><tbody><tr><td>disableSslCheck</td><td>Disables ssl certificate check on https calls. Defaults to false.</td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sealights.io/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent/configuration-settings.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
