Skip to main content

Logging Reference

Chia blockchain nodes consist of several components that each handle different aspects of farming, harvesting, the wallet and general management of a node. Each component creates entries in a single log file debug.log.

Log file Location:

OSLocation
Linux~/.chia/mainnet/log/debug.log
Windows%systemdrive% %homepath% \.chia\mainnet\debug.log (C:\Users\<username>\.chia…)
MacOS/Users/<username>/.chia/mainnet/log/debug.log

Log File Management:

By default, Chia allows debug.log to grow to 20MB, and then rotates the file by closing debug.log, renaming it to debug.log.1, and renames any existing older log files to debug.log.x, to a maximum of 7 old log files. If a log rotation is required and all 7 old log files exist, the oldest log file is overwritten with the next earliest file; resulting in a maximum of 160MB of the most recent messages being stored.

Log Detail Level:

Chia is shipped with the debug.log only containing messages at the WARN or ERROR level. Many of the messages needed to fully monitor a node are only visible at the INFO level. Changes to the logging level can be done in the config.yaml file in the mainnet/config folder.

Change the Log Level Output:

You are looking for the first reference to logging in the file that looks like this:

farmer:
logging: &id001
log_filename: log/debug.log
log_level: WARN
log_stdout: false

Change the log_level to INFO, save the file, and restart the node.

Node Components:

ComponentFunction
farmer_serverSignage stuff about signs and things
harvester_serverGathers and shares plot information
timelord_serverManages Verifiable Delay Functions for the node
wallet_serverControls wallet functions
full_node_serverThis component manages the node

Log Message Format:

FieldContent
Date/timein ISO format, in local timezone
Node Componentsee the list above
Log LevelERROR, WARN, INFO
Directional Arrow
Messagesee below

Log Messages Confirming Node Health:

09:55:43.847 harvester src.harvester.harvester : INFO     1 plots were eligible for farming 2d8b1c58a0... Found 0 proofs. Time: 0.13772 s. Total 100 plots
09:55:52.737 harvester src.harvester.harvester : INFO 3 plots were eligible for farming 2d8b1c58a0... Found 0 proofs. Time: 0.43679 s. Total 100 plots
09:56:01.646 harvester src.harvester.harvester : INFO 2 plots were eligible for farming 2d8b1c58a0... Found 0 proofs. Time: 0.14055 s. Total 100 plots

x plots were eligible for farming – This message from the harvester shows how the node responds to challenges. The x value shows how many plots passed the initial filter, more on filters here.

  • The block prefix is shown, and the Found y proofs. The y value shows how many plots were accepted as proofs, and usually the value is zero. Most of the time if there is a proof you win, but not always as described in the FAQ page.
  • Next is Time: x.xxx s which shows how long the node took to respond to the challenge. A recommended response time is less than 5 seconds. If this value is greater than 3 seconds a warning will be displayed in the GUI.
  • Finally Total x plots shows the number of plots recognized by the node. If this doesn't look right check your plots are valid.

Another log message you will see is Updated Wallet peak to height x, weight y - This message is from the wallet_blockchain component. Value x is the current height of the blockchain and should match the Height shown in the chia show -s command. This indicates that the node wallet is fully synced with the network. If that is not the case check here for a common solution.

Other Normal Log Messages:

ComponentMessageDirectionDestinationCross componentComment
mempool_manageradd_spendbundle took x seconds
mempool_managerIt took x to pre validate transaction
full_nodeAdded unfinished_block x, not farmed by us
full_nodeAlready compactified block:
full_nodeDuplicate compact proof. Height: x
full_nodeFinished signage point x/64:
full_nodeScanning the blockchain for uncompact blocks.
full_nodeUpdated peak to height x
full_node_servernew_compact_vdfto/frompeer
full_node_servernew_peakto/frompeer
full_node_servernew_peak_timelordtolocalhostfrom timelord_server
full_node_servernew_peak_wallettolocalhostfrom wallet_server
full_node_servernew_signage_pointtolocalhostfrom farmer_server
full_node_servernew_signage_point_or_end_of_sub_slotto/frompeer
full_node_servernew_transactionto/frompeer
full_node_servernew_unfinished_blockto/frompeer
full_node_servernew_unfinished_block_timelordto/fromlocalhost
full_node_serverrequest_blockto/frompeer
full_node_serverrequest_block_headerfromlocalhostto wallet_server
full_node_serverrequest_compact_vdfto/frompeer
full_node_serverrequest_compact_proof_of_timetolocalhostfrom timelord_server
full_node_serverrequest_signage_point_or_end_of_sub_slotto/frompeer
full_node_serverrequest_transactionto/frompeer
full_node_serverrequest_unfinished_blockto/frompeer
full_node_serverrespond_blockto/frompeer
full_node_serverrespond_compact_vdfto/frompeer
full_node_serverrespond_signage_pointto/frompeer
full_node_serverrespond_transactionto/frompeer
full_node_serverrespond_unfinished_blockto/frompeer
wallet_serverrequest_block_headertolocalhostfrom full_node
wallet_serverrespond_block_headerfromlocalhostto full_node
wallet_servernew_peak_walletfromlocalhostto full_node
wallet_blockchainUpdated Wallet peak to height x, weight y
timelord_servernew_peak_timelordfromlocalhostto full_node
timelord_servernew_unfinished_block_timelordfromlocalhostto full_node
timelord_launcherVDF client x: VDF Client: Discriminant =
VDF ClientSending Proof, Sent Proof, Stopped everything!
harvester_serverfarming_infoto/fromlocalhost
harvester_servernew_signage_point_harvesterfromlocalhostto farmer_server
harvesterx plots were eligible for farming
plot_toolsLoaded a total of x plots of size y in z seconds
plot_toolsSearching directories
farmer_servernew_signage_pointfromlocalhostto full_node
farmer_serverfarming_infofromlocalhostto full_node
farmer_servernew_signage_point_harvestertolocalhostfrom harvester
SourceLevelMessageDescription
daemon asyncioERRORTask exception was never retrieved future: <Task finished coro=<WebSocketServer.statechanged() done, defined at src\daemon\server.py:316> exception=ValueError('list.remove(x): x not in list')>
full_node asyncioERRORSSL error in data received protocol: <asyncio.sslproto.SSLProtocol object at 0x7f762544a8>
full_node full_node_serverERRORException: Failed to fetch block N from {'host': IP ADDRESS, 'port': 8444}, timed out, {'host': IP ADDRESS, 'port': 8444}.Peer disconnected, other peer connections will take over
full_node full_node_serverERRORException: <class 'concurrent.futures._base.CancelledError'>, closing connection None.Peer disconnected
full_node full_node_serverWARNING[Errno 32] Broken pipe IP AddressPeer disconnected
full_node full_node_serverWARNINGCannot write to closing transport IP AddressPeer disconnected
harvester src.plotting.plot_toolsWARNINGNot farming plot plotfilename. Size is filesize GiB, but expected at least: 99.06 GiB. We assume the file is being copied.Periodic scan for new plots have discovered partial file - OK if you are in the middle of copying a file
harvester src.plotting.plot_toolsWARNINGDirectory: Dir1 does not exist.One of your monitored plot folders is no longer accessible - eg external drive offline - if permanent remove from GUI or chia plots remove -d <Dir1>
harvester src.plotting.plot_toolsWARNINGHave multiple copies of the plot plotfilename, not adding it.
harvester src.plotting.plot_toolsINFONot checking subdirectory Dir1/directory, subdirectories not added by default
full_node full_node_serverINFOConnection closed: IP Address, node id: hexPeer disconnected
full_node src.full_node.full_nodeINFO⏲️ Finished signage point N/64: hex
full_node src.full_node.full_nodeINFOAdded unfinished_block hex, not farmed
harvester src.plotting.plot_toolsINFOSearching directories [Dir1,Dir2]
harvester src.plotting.plot_toolsINFOLoaded a total of N plots of size size TiB, in time seconds
harvester src.harvester.harvesterINFOX plots were eligible for farming hex... Found Y proofs. Time: Time s. Total Z plotsThis is a vital message and should be seen at regular intervals. Note that Time is ideally < 1s. If drive is in sleep mode, may show ~10 seconds, and should be prevented
wallet src.wallet.wallet_blockchainINFO💰 Updated wallet peak to height HEIGHT, weight WEIGHT,