Gtest IT: log also to stderr, not only to file#461
Merged
Conversation
MAINTENANCE.md contained obsolete information that no docs are available yet.
This will improve debuggability.
This will improve debuggability.
The C++ integration tests used to redirect logs to a file. In CI, this made debugging harder, especially in case of an abort. Now the test Logger also passes the logs to stderr, ensuring the output is visible in real-time.
Color the severity level and dim the target:line when stderr is a TTY. Uses the same palette as the Rust tracing subscriber (magenta TRACE, blue DEBUG, green INFO, yellow WARN, red ERROR).
Format the timestamp as UTC ISO 8601 with millisecond precision (e.g. 2026-05-25T08:35:04.515Z), matching the format used by the Rust tracing subscriber.
There was a problem hiding this comment.
Pull request overview
This PR improves integration-test observability by mirroring driver logs to stderr while preserving per-test log files, and configures CI to emit richer Rust diagnostics.
Changes:
- Adds real-time
stderrlogging in the C++ integration-test logger with UTC timestamps and optional ANSI coloring. - Enables
RUST_BACKTRACE=fullandRUST_LOG=traceacross the build/test workflow. - Updates maintenance documentation to point to the Sphinx docs directory.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
tests/src/integration/logger.cpp |
Adds formatted stderr output alongside existing file logging. |
.github/workflows/build-lint-and-test.yml |
Adds Rust logging/backtrace environment variables for CI jobs. |
MAINTENANCE.md |
Replaces the documentation TODO with a pointer to /docs. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Contributor
Author
|
CI failures will hopefully be fixed with scylladb/scylla-rust-driver#1644. |
Lorak-mmk
approved these changes
May 25, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
A recent CI run experienced a panic inside the Rust Driver. I couldn't debug it, because no logs were printed.
What's done
C++ Gtest Logger output
Destination
Before, the logs were only output to a file. Now, they are additionally printed to stderr.
Format
CI
RUST_LOG=traceis now passed, so the logs are visible in the CI run console.RUST_BACKTRACE=fullis now passed, which will aid in debugging.Pre-review checklist
[ ] I have implemented Rust unit tests for the features/changes introduced.[ ] I have enabled appropriate tests inMakefilein{SCYLLA,CASSANDRA}_(NO_VALGRIND_)TEST_FILTER.[ ] I added appropriateFixes:annotations to PR description.