Cherry-pick #15700 to 7.x: Split global and normal logger tests #15825
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.
Cherry-pick of PR #15700 to 7.x branch. Original message:
What does this PR do?
Move logp global functions to global.go and selective.go, plus split up
tests. The change also adds the
nologpglobal
build tag to global.go and global_test.go.By default all global functions are available. When compiling or
running a package its test code with
-tags=nologpglobal
, then globallogp functions are not available.
Why is it important?
In order to better support structured logging in Beats we want to remove global logging functions. See #15699
This PR adds a build tag that can be used to check for packages that need to be cleaned up. When running
go build -tags=nologpglobal
orgo test -tags=nologpglobal
on a selected package, the compiler will fail until the package and its transitive dependencies have been cleaned up.Checklist
- [ ] I have made corresponding changes to the documentation- [ ] I have made corresponding change to the default configuration files- [ ] I have added tests that prove my fix is effective or that my feature worksAuthor's Checklist
How to test this PR locally
Related issues
Use cases
Screenshots
Logs