Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[1.0] Logging improvements #665

Merged
merged 9 commits into from
Aug 29, 2024
Merged

[1.0] Logging improvements #665

merged 9 commits into from
Aug 29, 2024

Conversation

heifner
Copy link
Member

@heifner heifner commented Aug 28, 2024

Misc logging improvements:

  • Change liveness check failed log message to debug level to match logging of other finality checks in decide_vote.

  • Add block timestamp to all Not producing because log messages in producer_plugin.

  • Indicate why producer is implicitly paused in the Not producing because log message.

  • Add info level decide_vote summary log statement, for example:

info  2024-08-28T23:54:05.066 chain-0   finalizer.cpp:111             decide_vote          ] block=241 000000f1bd378c3eba4e81bd3e09677f30e7019c41e1c69da066818b2ff95a46, liveness=false, safety=false, can vote=false, voting=no_vote, 2024-08-28T23:52:23.500 <= 2024-08-28T23:52:24.500, locked=145 00000091cee2536578652ccc49fdf32eaac70fe9851e615e1f9834372541af91, latest_qc_claim: {"block_num":143,"is_strong_qc":true}
  • Change the logging around a corrupt safety.dat file. Now when invalid bls key you get the following:
info  2024-08-29T00:23:38.026 nodeos    chain_plugin.cpp:1146         plugin_startup       ] Blockchain started; head block is #137
info  2024-08-29T00:23:38.026 nodeos    producer_plugin.cpp:1473      plugin_startup       ] producer plugin:  plugin_startup() begin
info  2024-08-29T00:23:38.027 nodeos    producer_plugin.cpp:1582      plugin_shutdown      ] exit shutdown
info  2024-08-29T00:23:38.027 nodeos    producer_plugin.cpp:1582      plugin_shutdown      ] exit shutdown
info  2024-08-29T00:23:38.041 nodeos    block_handle.cpp:11           write                ] Writing chain_head block 137 00000089843fa26b3eed676d75924faadb4a854da84c16d6fe8f5cffb92de9e1
info  2024-08-29T00:23:38.041 nodeos    fork_database.cpp:646         close                ] Persisting to fork_database file: /home/heifner/ext/spring/cmake-build-debug/TestLogs/disaster_recovery13174/node_00/blocks/reversible/fork_db.dat
info  2024-08-29T00:23:38.041 nodeos    fork_database.cpp:168         close_impl           ] Writing fork_database 8 blocks with root 129:0000008181477bd1bf43bd2f369468ea2ae174d4f43d4e4277020c94cc38604c and head 137:00000089843fa26b3eed676d75924faadb4a854da84c16d6fe8f5cffb92de9e1
debug 2024-08-29T00:23:38.069 nodeos    chain_plugin.cpp:1172         plugin_shutdown      ] exit shutdown
info  2024-08-29T00:23:38.070 nodeos    main.cpp:172                  operator()           ] appbase quit called
info  2024-08-29T00:23:38.070 nodeos    main.cpp:165                  operator()           ] nodeos version v1.0.0-rc2 v1.0.0-rc2-e61b02c84218ac62af7817545dc07dc60d6d7595-dirty
info  2024-08-29T00:23:38.070 nodeos    main.cpp:69                   log_non_default_opti ] Non-default options: blocks-dir = blocks, p2p-listen-endpoint = 0.0.0.0:9876, p2p-server-address = localhost:9876, p2p-peer-address = localhost:9776, p2p-peer-address = localhost:9877, p2p-peer-address = localhost:9878, p2p-peer-address = localhost:9879, plugin = eosio::producer_plugin, signature-provider = EOS6qQjhVb63nCxNkcCsHFW1FaAB5VKrFcnD1iViQ73TPt4jGootd=KEY:***, signature-provider = PUB_BLS_JS5CvKI_f6wZvD4UICBwrAFsHlZ95jr2o5qW04bG1Vs-b_oqcKPjaU-TAfClHV8E2shRfCma13igh-Hlq_lfqETu6h1GccxTFhyvthmCnti9QZyCg5Qs9s9yKMmaTPYAkxMHRQ=KEY:***, producer-name = defproducera, plugin = eosio::net_plugin, plugin = eosio::chain_api_plugin, vote-threads = 4, max-transaction-time = -1, abi-serializer-max-time-ms = 990000, p2p-max-nodes-per-host = 4, max-clients = 25, connection-cleanup-period = 15, plugin = eosio::producer_api_plugin, plugin = eosio::trace_api_plugin, trace-no-abis, production-pause-vote-timeout-ms = 0, http-max-response-time-ms = 990000, config-dir = /home/heifner/ext/spring/cmake-build-debug/TestLogs/disaster_recovery13174/node_00, data-dir = /home/heifner/ext/spring/cmake-build-debug/TestLogs/disaster_recovery13174/node_00, http-validate-host = false, http-server-address = localhost:8888, enable-stale-production, snapshot = /home/heifner/ext/spring/cmake-build-debug/TestLogs/disaster_recovery13174/node_00/snapshots/snapshot-0000007ab3f5f7ce5f6e4193dbf998900afbb7ef2d5db8ad8260711b5e34f4cc.bin
error 2024-08-29T00:23:38.071 nodeos    main.cpp:224                  main                 ] 10 assert_exception: Assert Exception
g1:
    {}
    nodeos  bls_public_key.cpp:18 from_affine_bytes_le
error unpacking St7variantIJN2fc6crypto6blslib14bls_public_keyEEE
    {"type":"St7variantIJN2fc6crypto6blslib14bls_public_keyEEE"}
    nodeos  raw.hpp:701 unpack
corrupted finalizer safety persistence file /home/heifner/ext/spring/cmake-build-debug/TestLogs/disaster_recovery13174/node_00/finalizers/safety.dat
    {"p":"/home/heifner/ext/spring/cmake-build-debug/TestLogs/disaster_recovery13174/node_00/finalizers/safety.dat"}
    nodeos  finalizer.cpp:342 load_finalizer_safety_info

    {}
    nodeos  producer_plugin.cpp:1565 plugin_startup

@heifner heifner added the OCI Work exclusive to OCI team label Aug 28, 2024
bool is_implicitly_paused() const {
enum class implicit_pause {
not_paused, // not implicitly paused
prod_paused, // paused do to not receiving vote associated with producer
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do -> due

plugins/chain_plugin/tracked_votes.cpp Outdated Show resolved Hide resolved
plugins/producer_plugin/producer_plugin.cpp Outdated Show resolved Hide resolved
plugins/producer_plugin/producer_plugin.cpp Show resolved Hide resolved
@arhag arhag added this to the Spring v1.0.0-rc3 milestone Aug 28, 2024
…ty check when liveness succeeds as it is not checked. Use debug level for all but the summary log in decide_vote. Add additional info to info level decide_vote summary log.
libraries/chain/finality/finalizer.cpp Outdated Show resolved Hide resolved
libraries/chain/finality/finalizer.cpp Show resolved Hide resolved
@heifner heifner merged commit ffeef7b into release/1.0 Aug 29, 2024
36 checks passed
@heifner heifner deleted the logging-improvements-rc3 branch August 29, 2024 01:50
@ericpassmore
Copy link
Contributor

Note:start
group: LOGGING
category: INTERNALS
summary: More appropriate logging for block production issues.
Note: end

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
OCI Work exclusive to OCI team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants