Configuring log messages
Log messages are displayed to the console by default. The messages can be tuned to be more or less detailed by passing--verbosity
and a value between 0
and 5
to the Parallax client at startup:
--verbosity 3
.
Log messages can also be redirected so they are saved to a text file instead of being displayed in the console. In Linux the syntax >> <path> 2>&1
redirects both stdout
and stderr
messages to <path>
. For example:
Startup
When the Parallax client starts up it immediately reports a fairly long page of configuration details and status reports that allow the user to confirm the Parallax client is on the right network and operating in its intended modes. The basic structure of a log message is as follows:MESSAGE_TYPE
can be INFO
, WARN
, ERROR
or DEBUG
. These tags categorize log messages according to their purpose. INFO
messages inform the user about the Parallax client’s current configuration and status. WARN
messages are for alerting the user to details that affect the way the Parallax client is running. ERROR
messages are for alerting the user to problems. DEBUG
is for messages that are relevant to troubleshooting or for developers working on the Parallax client.
The messages displayed on startup break down as follows:
Syncing
The default for the Parallax client is to sync in snap mode. The client requests block headers from its peers that are parents of the target until there is a continuous chain of sequential headers of sufficient length. Then, the Parallax client requests block bodies and receipts for each header and simultaneously starts downloading state data. This state data is stored in the form of a Patricia Merkle Trie. Only the leaves of the trie are downloaded, the full trie structure is then locally regenerated from the leaves up. Meanwhile, the blockchain continues to progress and the target header is updated. This means some of the regenerated state data need to be updated. This is known as healing. Assuming the Parallax client has some peers it will start importing headers, block bodies and receipts. The log messages for data downloading look as follows:accounts
, slots
, codes
and nodes
that were downloaded in the current healing phase, and the pending field is the number of state entires waiting to be downloaded. The pending
value is not necessarily the number of state entries remaining until the healing is finished. As the blockchain progresses the state trie is updated and therefore the data that need to be downloaded to heal the trie can increase as well as decrease over time. Ultimately, the state should heal faster than the blockchain progresses so the node can get in sync. When the state healing is finished there is a post-sync snapshot generation phase. The node is not in sync until the state healing phase is over. If the node is still regularly reporting State heal in progress
it is not yet in sync - the state healing is still ongoing.
false
if the node is in sync. If eth.syncing
returns anything other than false
it has not finished syncing. Generally, if syncing is still ongoing, eth.syncing
will return block info that looks as follows:
Transaction logs
Transactions submitted over local IPC, Websockets or HTTP connections are reported in the console logs. For example, a simple transaction appears in the console logs as follows:Common warnings
There are many warnings that can be emitted by the Parallax client as part of its normal operation.Summary
There are a wide range of log messages that are emitted while the Parallax client is running. The level of detail in the logs can be configured using theverbosity
flag at startup. This page has outlined some of the common messages users can expect to see when the Parallax client is run with default verbosity, without attempting to be comprehensive.