Integrate steno logging library directly into cloud_controller_ng#4902
Merged
Integrate steno logging library directly into cloud_controller_ng#4902
Conversation
This integrates the steno logging library as an internal component rather than an external gem dependency, allowing for better control, customization, and maintainability within the Cloud Controller codebase. Key Changes: - Integrated steno library code from cloudfoundry/steno repository - Removed steno gem dependency from Gemfile - Flattened steno directory structure under lib/steno/ - Removed unused steno features (Windows support, context providers, tagged logging) - Updated all require paths from 'steno' to 'steno/steno' - Removed lib/steno.rb wrapper file Steno Modifications: - Replaced Yajl with Oj JSON parser for better performance - Added syslog gem dependency for syslog sink functionality - Removed unused yajl-ruby gem - Applied RuboCop auto-corrections to integrated steno code - Integrated custom RFC3339 codec (lib/steno/codec/codec_rfc3339.rb) - Documented modification policy in README.md Bug Fixes: - Fixed race condition in syslog reset for parallel test execution - Added reset! method to Syslog singleton for proper test cleanup - Added nil guard to syslog sink add_record method - Fixed syslog sink mock leakage between tests - Fixed steno JSON codec timestamp test to accept Numeric types Test Infrastructure: - Moved steno tests to spec/isolated_specs/steno/ to prevent mock leakage - Restored and updated all steno unit tests - Fixed test isolation issues with syslog mocking - Created isolated test helper (spec/isolated_specs/steno/spec_helper.rb) Documentation: - Added NOTICE file from original steno repository - Added LICENSE file (Apache 2.0) - Created comprehensive README.md with integration history - Documented Rails/Delegate RuboCop change This integration enables better debugging, faster iteration, and eliminates external dependency management for a critical logging component.
8bd5179 to
6a5de4f
Compare
jochenehret
approved these changes
Mar 3, 2026
ari-wg-gitbot
added a commit
to cloudfoundry/capi-release
that referenced
this pull request
Mar 3, 2026
Changes in cloud_controller_ng:
- Integrate steno logging library directly into cloud_controller_ng
PR: cloudfoundry/cloud_controller_ng#4902
Author: Johannes Haass <johannes.haass@sap.com>
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.
A short explanation of the proposed change:
This PR integrates the steno logging library directly into the cloud_controller_ng codebase as an internal component, removing the external gem dependency.
An explanation of the use cases your change solves:
Links to any other associated PRs:
None
mainbranchbundle exec rake