Skip to main content
Version: 3.3

USP Client Configuration File

The Configuration File is the central setup point for USP Client instances.

On the host where USP Client is installed, the default location of the file is:

# Linux
/opt/udmg/etc/usp-client.hcl
# Windows
C:\Program Files\Stonebranch\USP Client\usp-client.hcl

What is HCL?

The USP Client configuration file is written in HCL (HashiCorp Configuration Language), a human-friendly syntax for structured configuration.

Key points about HCL:

  • Blocks group related settings inside curly braces ({}). For example, the api block contains all API-related options.
  • Arguments are key-value pairs defined within blocks. Each argument has a name (the key) and a value.
  • Argument names are unique within their block and describe the purpose of the setting.

Dot Notation

Throughout this documentation we use dot notation to reference nested arguments.

This notation is used only in the documentation for clarity. In the actual HCL file, arguments are defined within their respective blocks, not as dot-separated keys.

Dot notation examples
api {
port = # Referenced as: api.port

secure {
enable = # Referenced as: api.secure.enable
}
}

HCL vs Environment Variables

Environment Variables override any value specified in the HCL configuration when both are present.

tip

Use HCL arguments for persistent, auditable configuration. Reserve environment variables for temporary overrides or sensitive values such as passwords or keys (for example, in containerized deployments).

Arguments by Block

This section lists all configurable arguments available in usp-client.hcl. Arguments are grouped by configuration block (including the root level). For every argument, the table shows its name, description, type, and default value—helping you quickly understand what it controls and how to set it.

info

All HCL arguments described on this page use dot notation to reference their full path from the root of the configuration file.


Root Level

Defines the top-level attributes of the USP Client.


key

USP Client private key's path for authentication with the Tunnel.

Type: string

Default: N/A


name

Name of the USP Client instance.

Type: string

Default: N/A


log

The log block configures USP Client logging output, verbosity level, and log rotation settings.

log.level

Controls the verbosity of logs.

Options (every option contains the messages from the ones below it):

  • TRACE: The most detailed logging level, used to record fine-grained information about internal operations (e.g., database queries).
  • DEBUG: Detailed internal information for troubleshooting.
  • INFO: General operational messages.
  • WARN: Unexpected errors that are not critical.
  • ERROR: Critical errors.
tip

Use INFO for normal operation and DEBUG when troubleshooting.

Type: string

Default: "INFO"


log.max_age

Rotates logs that are older than a specified number of days.

Each Component checks the age of each log file every time a log message is written, and when the configured threshold is reached, it archives the current log as the original log file plus the time at which the log was rotated (name-timestamp.extension).

For example: if manager.log is the original log file and a rotation happens at 3:00pm on May 10th 2025, the archived file would be named: manager-2025-05-10-T15-00-00.000.log.

Type: number

Default: 0 (disabled)


log.max_backups

Defines how many rotated log files must be kept. Once the number is exceeded, the older log file gets deleted when a new log rotation takes effect.

Type: number

Default: 0 (disabled)


log.max_size

Rotates logs when the log file grows beyond a threshold measured (in MB).

Type: number

Default: 0 (disabled)


log.path

The path to the log file. If no value is set, logs are written to standard output.

Type: string

Default: "" (standard output)


tunnel

The tunnel block specifies the tunnel the USP Client uses to connect to its USP Server.


tunnel.host

Hostname of the USP Server's Tunnel that the USP Client connects to.

Type: string

Default: N/A


tunnel.host_key

Path of the USP Server Tunnel's public key for authentication. Must be in "authorized_keys" format.

Type: string

Default: N/A


tunnel.port

Port of the USP Server's Tunnel that the USP Client connects to.

Type: string

Default: N/A