Skip to content

Commit

Permalink
doc: Drop description of LogError messages as fatal
Browse files Browse the repository at this point in the history
Remove documentation that says LogError should be used for "severe problems
that require the node (or a subsystem) to shut down entirely" because:

- This is not how `LogError` and `Level::Error` are used currently. Of 129
  current uses only 58 cases are fatal according to
  bitcoin#30348

- "[T]here's not much benefit in a log that says "hey this error is about to
  cause the node to stop" -- you already get that information by seeing
  "Shutdown: in progress..." immediately following." according to
  bitcoin#30347 (comment)
  • Loading branch information
ryanofsky committed Jun 30, 2024
1 parent 2f6dca4 commit b7aae36
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions doc/developer-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ Developer Notes
- [Ignoring IDE/editor files](#ignoring-ideeditor-files)
- [Development guidelines](#development-guidelines)
- [General Bitcoin Core](#general-bitcoin-core)
- [Logging](#logging)
- [Wallet](#wallet)
- [General C++](#general-c)
- [C++ data structures](#c-data-structures)
Expand Down Expand Up @@ -742,14 +743,13 @@ logging messages. They should be used as follows:
attacker to fill up storage. Note that `LogPrintf(fmt, params...)` is
a deprecated alias for `LogInfo`.

- `LogError(fmt, params...)` should be used in place of `LogInfo` for
severe problems that require the node (or a subsystem) to shut down
entirely (e.g., insufficient storage space).
- `LogError(fmt, params...)` should be used in place of `LogInfo` for severe
errors the node admin will need to address (e.g., failure to write data).

- `LogWarning(fmt, params...)` should be used in place of `LogInfo` for
severe problems that the node admin should address, but are not
severe enough to warrant shutting down the node (e.g., system time
appears to be wrong, unknown soft fork appears to have activated).
unexpected conditions indicating potentially severe problems the node admin
should address (e.g. system time appears to be wrong, unknown soft fork
appears to have activated).

- `LogTrace(BCLog::CATEGORY, fmt, params...)` should be used in place of
`LogDebug` for log messages that would be unusable on a production
Expand Down

0 comments on commit b7aae36

Please sign in to comment.