Skip to content

Commit ee803ef

Browse files
committed
feat: improve logging in leadership schedule test
Add debug logs for leadership schedule and minted blocks. This change helps in better debugging and understanding of the test results.
1 parent cc3d9d8 commit ee803ef

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

cardano_node_tests/tests/test_blocks.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,14 +55,13 @@ def test_pool_blocks( # noqa: C901
5555
"""
5656
# pylint: disable=unused-argument
5757
cluster, pool_name = cluster_use_pool
58+
pool_short_name = f"{pool_name.replace('node-', '')}"
5859
temp_template = common.get_test_id(cluster)
5960

6061
pool_rec = cluster_manager.cache.addrs_data[pool_name]
6162
pool_id = cluster.g_stake_pool.get_stake_pool_id(pool_rec["cold_key_pair"].vkey_file)
6263

63-
pool_log = (
64-
cluster_nodes.get_cluster_env().state_dir / f"{pool_name.replace('node-', '')}.stdout"
65-
)
64+
pool_log = cluster_nodes.get_cluster_env().state_dir / f"{pool_short_name}.stdout"
6665
seek_offset = helpers.get_eof_offset(pool_log)
6766
timestamp = time.time()
6867

@@ -80,12 +79,16 @@ def test_pool_blocks( # noqa: C901
8079
)
8180
queried_epoch = cluster.g_query.get_epoch() + 1
8281

82+
debug_log_template = (f"{temp_template}_ep{queried_epoch}_pool_{pool_short_name}",)
83+
8384
# Query leadership schedule for selected pool
8485
leadership_schedule = cluster.g_query.get_leadership_schedule(
8586
vrf_skey_file=pool_rec["vrf_key_pair"].skey_file,
8687
cold_vkey_file=pool_rec["cold_key_pair"].vkey_file,
8788
for_next=for_epoch != "current",
8889
)
90+
with open(f"{debug_log_template}_schedule.txt", "w", encoding="utf-8") as out_fp:
91+
out_fp.write("\n".join(str(s) for s in leadership_schedule))
8992
slots_when_scheduled = {r.slot_no for r in leadership_schedule}
9093

9194
# Wait for epoch that comes after the queried epoch
@@ -126,6 +129,8 @@ def _check_logs() -> None:
126129
if (o := slots_pattern.search(m)) is not None
127130
and first_slot_queried_ep <= (s := int(o.group(1))) <= last_slot_queried_ep
128131
}
132+
with open(f"{debug_log_template}_minted.txt", "w", encoding="utf-8") as out_fp:
133+
out_fp.write(f"{pool_id_dec}: {slots_when_minted}")
129134

130135
# Compare leadership schedule with blocks that were actually minted
131136
difference_scheduled = slots_when_minted.difference(slots_when_scheduled)
@@ -157,6 +162,8 @@ def _check_dbsync() -> None:
157162
)
158163
)
159164
slots_when_minted = {r.slot_no for r in minted_blocks}
165+
with open(f"{debug_log_template}_db_minted.txt", "w", encoding="utf-8") as out_fp:
166+
out_fp.write(f"{pool_id_dec}: {slots_when_minted}")
160167

161168
# Compare leadership schedule with blocks that were actually minted
162169
difference_scheduled = slots_when_minted.difference(slots_when_scheduled)

0 commit comments

Comments
 (0)