API Docs
General configuration

General configuration

Application options

The first section is app, which control general options:

autosave = true
immersion = false

The autosave key controls wether the changes on the runtime made via API to the configuration will be saved or not. When enabled, every change triggers first a backup of the current TOML file (in the /backup directory, with the current UTC timestamp as suffix), and then save the new values on the existing files. Note that only certains commands trigger autosaving.

The immersion key indicates wether immersion mode is enabled or not. When enabled, this mode sets the fan speed to a fixed zero, and ignores the minimum number of fans check.


The logging configuration is stored in app.logging:

level = "info"
file_level = "trace"

The level key controls the logging level on stdout. If you're not running the miner in you ssh session and looking at the live logs while your miner runs, you might as well leave it as off if you want.

The file_level is the logging level for file output. Each time luxminer is ran, a brand new logs/<DATE>/luxminer.log file is created, and the previous file is kept in the same folder, with a timestamp suffix. Log file rolling happens every run, or when the file reaches around 100MB. Past log files are automatically discarded when the system is close to running out of space.

Both keys can accept either a single "level" value (error, warn, info, debug or trace), or a complex logging filter in the form of module=level, to use different levels for different pieces of the system.


Logging and performance

Choosing the right level of logging depends on a multitude of scenarios like available disk space and being able to track down eventual failures. The correct logging level, will depend of your needs.

As a general rule, more verbose level incurs in more performance penalty, but allows for much more detail when troubleshooting. When requesting support help, try to do the minimun steps to reproduce the problem with file_level=trace.

API access

API access can be configured on the app.api section:

port = 4028
http_port = 8080

The "core" API is a TCP, CGMiner-like API, running on port 4028 by default. Additionally, an HTTP RPC layer on port 8080 is provided to make integration with different tools and languages easier. Any of them can be disabled by setting the port number to zero.

It is recommended to leave the API ports on the default setting since they are used (or assumed) as default for most tools and scripts, so consider changing or disabling those ports only if you have a good reason to do so. For usage information and examples, check the API section of the documentation.


If you disable the HTTP layer, the built-in LUXminer UI won't be able to communicate with the miner.