Skip to main content

Reading the output

Each line has the time, the level, the source and the message:
The level is INFO, WARN or ERROR (and DEBUG with --log-level debug). The source says what the line is about:

The hashrate line

Every 10 seconds (--display-interval) Hashwarp prints:
  • the current hashrate, then its 1 minute (60s) and 15 minute (15m) averages;
  • eff: the effective hashrate, what the accepted shares of the last 15 minutes are worth, from 2 minutes after the start. It follows the pool’s view of your hashrate, luck included, so it swings above and below the real one;
  • the shares: accepted (A), rejected by the pool (R) and failed (F), which are wrong results Hashwarp caught before sending them;
  • the temperature, fan, power draw and efficiency in kH/J (thousands of hashes per joule).
With several GPUs, the totals come on the miner line, followed by a line per GPU:

The statistics table

Every 60 seconds (--stats-interval, 0 to turn it off), and when you press s, Hashwarp prints a table per GPU with the clocks as well, then the pool, its difficulty and the blocks left before the next epoch:

Keys

While Hashwarp runs in a terminal, these keys work (--no-hotkeys turns them off):

Without UTF-8

On a console without UTF-8 (on Linux, LANG not set to a UTF-8 locale, as in some services and containers), the symbols are replaced by ASCII: | for ·, + for ✔, x for ✘, and C for °C.

Logging to a file

writes every line to the file as well, without colors and with the full date and time (ISO 8601, with the time zone). The file is rotated when it reaches 20 MB, keeping 3 old ones (hashwarp.log.1 …).

Options


JSON lines

--log-format json writes each line as a JSON object with time, level, source and msg (the text of the line, without colors), for log collectors and scripts:
The lines worth reading by a program also have an event and its values: With --log-level debug each line also has the thread. For the current state rather than a stream of events, the JSON API is easier to read.