-
Notifications
You must be signed in to change notification settings - Fork 381
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
change tag to 3.1.9 #553
change tag to 3.1.9 #553
Conversation
WalkthroughThis pull request involves a comprehensive version update across multiple Changes
Possibly related PRs
Suggested labels
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🔭 Outside diff range comments (2)
sofa-tracer-plugins/sofa-tracer-dubbo-common-plugin/pom.xml (1)
Security vulnerability found in Apache Dubbo 2.7.3 and dual dependency structure is intentional
The dual Dubbo dependencies in
sofa-tracer-dubbo-common-plugin
are actually intentional, as this appears to be a common plugin supporting both Alibaba Dubbo 2.6.x and Apache Dubbo 2.7.x versions. This is evidenced by the separate plugins (sofa-tracer-dubbo-2.6.x-plugin
andsofa-tracer-dubbo-plugin
) that individually depend on specific versions.However, Apache Dubbo 2.7.3 has critical security vulnerabilities. According to the GitHub Security Advisory, versions below 2.7.21 are vulnerable to "Deserialization of Untrusted Data" (CRITICAL severity).
- Consider upgrading Apache Dubbo from 2.7.3 to at least version 2.7.22 to address the critical security vulnerability
- The dual dependency structure itself is valid as both are marked as 'provided' and serve different compatibility purposes
🔗 Analysis chain
Line range hint
16-28
: Review dual Dubbo dependenciesThe POM includes both Alibaba Dubbo (2.6.12) and Apache Dubbo (2.7.3) dependencies. While they are marked as 'provided', this could potentially cause conflicts. Additionally, Apache Dubbo 2.7.3 is quite old and might have security vulnerabilities.
Let me check the content of other Dubbo-related POM files to understand the dependency structure better.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Check for security advisories for Apache Dubbo gh api graphql -f query=' { securityVulnerabilities(first: 5, ecosystem: MAVEN, package: "org.apache.dubbo:dubbo") { nodes { advisory { summary severity publishedAt } vulnerableVersionRange firstPatchedVersion { identifier } } } }' # Search for potential dependency conflicts in the codebase rg -l "dubbo" --type xmlLength of output: 1714
Script:
#!/bin/bash # Check the content of Dubbo-related POM files cat sofa-tracer-plugins/sofa-tracer-dubbo-plugin/pom.xml cat sofa-tracer-plugins/sofa-tracer-dubbo-2.6.x-plugin/pom.xmlLength of output: 3111
tracer-test/logback-test/pom.xml (1)
Security: Update logback-classic to version 1.2.13 or later to address high severity vulnerabilities
The current version (1.2.0) is vulnerable to a high severity serialization vulnerability (CVE) that affects all versions below 1.2.13. The vulnerability was published on 2023-11-29.
- Update the dependency version in
tracer-test/logback-test/pom.xml
from1.2.0
to at least1.2.13
🔗 Analysis chain
Line range hint
21-24
: Security: Consider updating logback-classic versionThe current version (1.2.0) of logback-classic has known security vulnerabilities. Consider upgrading to a more recent version.
Run this script to check for security advisories:
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Check for security advisories for logback-classic gh api graphql -f query=' { securityVulnerabilities(first: 5, ecosystem: MAVEN, package: "ch.qos.logback:logback-classic") { nodes { advisory { summary severity publishedAt } vulnerableVersionRange firstPatchedVersion { identifier } } } }'Length of output: 1213
🧹 Nitpick comments (3)
tracer-test/log4j-test/pom.xml (1)
7-8
: Consider dependency version management and logging configurationWhile the version updates are consistent across all modules, there are a few architectural considerations:
- Some dependencies (mongodb-driver, Apache Dubbo) are using older versions that might have security vulnerabilities.
- The logging configuration should be reviewed across all plugins to ensure consistent behavior, especially for the redis-plugin mentioned in the PR objective.
Consider:
- Centralizing dependency version management in the parent POM
- Documenting the logging configuration requirements for plugins
sofa-tracer-plugins/sofa-tracer-redis-plugin/pom.xml (1)
Line range hint
1-67
: Consider documenting the logging fixSince this version change is specifically meant to fix redis-plugin logging issues, consider adding a comment in the changelog or documentation explaining what logging issues were fixed in version 3.1.9.
tracer-test/core-test/pom.xml (1)
7-7
: Consider documenting logging configuration changesWhile the version changes are consistent across modules, consider:
- Documenting the specific logging issues that this version change fixes
- Adding logging configuration examples for the redis-plugin
- Creating a test case that verifies the logging functionality
This will help users understand the changes and prevent similar issues in future releases.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (26)
pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-datasource-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-dubbo-2.6.x-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-dubbo-common-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-dubbo-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-flexible-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-httpclient-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-kafkamq-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-mongodb-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-okhttp-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-rabbitmq-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-redis-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-rocketmq-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-spring-cloud-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-springmessage-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-springmvc-plugin/pom.xml
(1 hunks)sofa-tracer-plugins/sofa-tracer-zipkin-plugin/pom.xml
(1 hunks)tracer-all/pom.xml
(1 hunks)tracer-core/pom.xml
(1 hunks)tracer-extensions/pom.xml
(1 hunks)tracer-sofa-boot-starter/pom.xml
(1 hunks)tracer-test/core-test/pom.xml
(1 hunks)tracer-test/log4j-test/pom.xml
(1 hunks)tracer-test/log4j2-test/pom.xml
(1 hunks)tracer-test/logback-test/pom.xml
(1 hunks)
✅ Files skipped from review due to trivial changes (11)
- sofa-tracer-plugins/sofa-tracer-rocketmq-plugin/pom.xml
- sofa-tracer-plugins/sofa-tracer-flexible-plugin/pom.xml
- sofa-tracer-plugins/sofa-tracer-dubbo-2.6.x-plugin/pom.xml
- sofa-tracer-plugins/sofa-tracer-rabbitmq-plugin/pom.xml
- sofa-tracer-plugins/sofa-tracer-datasource-plugin/pom.xml
- sofa-tracer-plugins/sofa-tracer-httpclient-plugin/pom.xml
- sofa-tracer-plugins/sofa-tracer-okhttp-plugin/pom.xml
- sofa-tracer-plugins/sofa-tracer-dubbo-plugin/pom.xml
- sofa-tracer-plugins/sofa-tracer-spring-cloud-plugin/pom.xml
- sofa-tracer-plugins/sofa-tracer-zipkin-plugin/pom.xml
- tracer-all/pom.xml
🔇 Additional comments (21)
tracer-extensions/pom.xml (1)
7-7
: LGTM! Version update is consistent with release strategy.
The version update from 3.1.9-SNAPSHOT to 3.1.9 in tracer-extensions is appropriate as part of the coordinated release. Since this is a core module that plugins depend on, this change is essential for the redis-plugin logging fix.
sofa-tracer-plugins/sofa-tracer-springmessage-plugin/pom.xml (1)
8-9
: LGTM! Version and parent resolution are properly configured.
The version update to 3.1.9 is consistent with the release. The explicit relativePath ensures proper parent POM resolution.
Let's verify version consistency across related modules:
✅ Verification successful
Let me verify the exact versions in these files to ensure consistency.
Version consistency verified across all modules
The version update to 3.1.9 in sofa-tracer-springmessage-plugin/pom.xml is consistent with all other modules in the project. All plugin modules and core components are properly aligned to version 3.1.9, with no remaining SNAPSHOT versions found. The other version numbers found (3.19.1, 3.12.1, 3.1.0) are for different dependencies and not related to the sofa-tracer parent version.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Check version consistency across related modules
# Look for any remaining SNAPSHOT versions or inconsistent versions
echo "Checking for any remaining SNAPSHOT versions..."
find . -name "pom.xml" -type f -exec grep -l "3.1.9-SNAPSHOT" {} \;
echo "Checking for inconsistent versions..."
find . -name "pom.xml" -type f -exec grep -l "<version>3.1." {} \;
Length of output: 1576
Script:
#!/bin/bash
# Check the specific version numbers in all pom.xml files
for pom in $(find . -name "pom.xml" -type f); do
echo "=== $pom ==="
grep -A 1 "<artifactId>sofa-tracer-parent</artifactId>" "$pom" || true
grep "<version>3.1." "$pom" || true
done
Length of output: 10179
sofa-tracer-plugins/sofa-tracer-springmvc-plugin/pom.xml (2)
7-8
: LGTM! Version update maintains consistency across plugins.
The version update to 3.1.9 aligns with the coordinated release. While this plugin isn't directly related to the redis-plugin logging issue, maintaining version consistency across all plugins is crucial for system stability.
7-7
: Verify redis-plugin logging functionality.
While the version updates are consistent across modules, let's verify that this change actually addresses the redis-plugin logging issue:
Consider adding test cases to verify that redis-plugin logging works as expected after this version update.
Also applies to: 8-8, 7-8
sofa-tracer-plugins/sofa-tracer-mongodb-plugin/pom.xml (2)
8-8
: LGTM: Version update from SNAPSHOT to release
The version change from 3.1.9-SNAPSHOT to 3.1.9 is consistent with the PR objective.
Line range hint 29-33
: Verify mongodb-driver version for security vulnerabilities
The mongodb-driver version 3.8.2 is relatively old. Let's check for any known security vulnerabilities.
✅ Verification successful
MongoDB Driver 3.8.2 appears to be safe from known vulnerabilities
Based on the GitHub Security Advisory data, version 3.8.2 is not within any of the vulnerable version ranges reported. The known vulnerabilities affect:
- MongoDB Driver versions 3.12.0 to 3.12.7
- MongoDB Driver versions 3.11.0 to 3.11.2
However, since this is an older version, it's recommended to consider upgrading to a more recent release for better features and security improvements.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Check for security advisories for mongodb-driver
gh api graphql -f query='
{
securityVulnerabilities(first: 5, ecosystem: MAVEN, package: "org.mongodb:mongodb-driver") {
nodes {
advisory {
summary
severity
publishedAt
}
vulnerableVersionRange
firstPatchedVersion {
identifier
}
}
}
}'
Length of output: 806
sofa-tracer-plugins/sofa-tracer-dubbo-common-plugin/pom.xml (1)
8-8
: LGTM: Version update from SNAPSHOT to release
The version change from 3.1.9-SNAPSHOT to 3.1.9 is consistent with the PR objective.
tracer-test/log4j-test/pom.xml (2)
7-7
: LGTM: Version update from SNAPSHOT to release
The version change from 3.1.9-SNAPSHOT to 3.1.9 is consistent with the PR objective.
Line range hint 27-29
: Verify logging configuration impact on redis-plugin
Since the PR aims to fix redis-plugin logging issues, let's verify the logging configuration and its potential impact.
tracer-test/logback-test/pom.xml (1)
7-7
: Version update looks good
The version update from 3.1.9-SNAPSHOT to 3.1.9 is consistent with the project-wide version change.
sofa-tracer-plugins/sofa-tracer-kafkamq-plugin/pom.xml (1)
8-8
: Version update looks good
The version update from 3.1.9-SNAPSHOT to 3.1.9 is consistent with the project-wide version change.
sofa-tracer-plugins/sofa-tracer-redis-plugin/pom.xml (2)
8-8
: Version update looks good
The version update from 3.1.9-SNAPSHOT to 3.1.9 is consistent with the project-wide version change.
Line range hint 17-20
: Verify redis-plugin logging functionality
Since this PR aims to fix redis-plugin logging issues, we should verify that the version change actually resolves the logging problems.
Let's check for any logging-related changes or issues:
✅ Verification successful
Based on the examination of the Redis plugin's source code, I can now provide a final response:
Redis plugin's logging functionality appears to be properly implemented
The plugin has a complete logging infrastructure in place:
- Dedicated logging enums (
RedisLogEnum
) defining both digest and stat logs - Proper implementation of tracers (
RedisSofaTracer
) extending AbstractClientTracer - Complete reporting chain with
RedisStatReporter
andRedisStatJsonReporter
- Digest encoders (
RedisDigestEncoder
,RedisDigestJsonEncoder
) for log formatting
The dependency on tracer-core
in the pom.xml is appropriate as it provides the base functionality that these implementations extend. The logging framework is well-structured and follows the standard SOFA tracer patterns.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Check for logging-related changes in recent commits
git log -n 10 --grep="log\|print" -- "sofa-tracer-plugins/sofa-tracer-redis-plugin/"
# Check for logging configurations
find . -type f -name "*.properties" -o -name "*.xml" | grep -i "log" | while read -r file; do
echo "=== $file ==="
cat "$file"
done
# Look for logging-related code in the redis plugin
rg -l "log\.|Logger|LoggerFactory" "sofa-tracer-plugins/sofa-tracer-redis-plugin/src/"
Length of output: 14647
Script:
#!/bin/bash
# Let's check for Redis plugin logging implementation and configuration
rg -A 5 "log\.|Logger|LoggerFactory" "sofa-tracer-plugins/sofa-tracer-redis-plugin/src/"
# Check for Redis tracer configuration files
fd -t f . "sofa-tracer-plugins/sofa-tracer-redis-plugin/" -e properties -e xml
# Check for Redis span reporter or logging reporter implementations
ast-grep --pattern 'class $_ implements $_ {
$$$
}' "sofa-tracer-plugins/sofa-tracer-redis-plugin/src/"
# Look for test files that verify Redis logging
fd -t f . "sofa-tracer-plugins/sofa-tracer-redis-plugin/src/test/"
Length of output: 535
Script:
#!/bin/bash
# Let's check the actual source files in the Redis plugin directory
fd -t f . "sofa-tracer-plugins/sofa-tracer-redis-plugin/src/"
# Check for any Redis tracer implementation files
rg -l "Redis.*Tracer|RedisCommand" "sofa-tracer-plugins/sofa-tracer-redis-plugin/src/"
# Look for span reporting or logging related classes
rg -l "Span.*Report|Log.*Report" "sofa-tracer-plugins/sofa-tracer-redis-plugin/src/"
# Check for any test resources or configuration files
fd -t f . "sofa-tracer-plugins/sofa-tracer-redis-plugin/" -e properties -e yml -e yaml
Length of output: 4083
Script:
#!/bin/bash
# Let's examine the Redis tracer implementation and reporters
rg -A 10 "class RedisSofaTracer" "sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/java/com/sofa/alipay/tracer/plugins/spring/redis/tracer/RedisSofaTracer.java"
# Check the Redis logging enum definitions
rg -A 5 "enum RedisLogEnum" "sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/java/com/sofa/alipay/tracer/plugins/spring/redis/enums/RedisLogEnum.java"
# Examine the Redis reporters implementation
rg -A 10 "class RedisStatJsonReporter|class RedisStatReporter" "sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/java/com/sofa/alipay/tracer/plugins/spring/redis/reporter/"
# Look for digest encoder implementations
rg -A 5 "class RedisDigestEncoder|class RedisDigestJsonEncoder" "sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/java/com/sofa/alipay/tracer/plugins/spring/redis/encoder/"
Length of output: 7641
tracer-test/log4j2-test/pom.xml (1)
7-7
: Version update looks good
The version change from 3.1.9-SNAPSHOT to 3.1.9 is consistent with the PR objective.
Let's verify the logging configuration across the project:
✅ Verification successful
Logging configuration is properly maintained across the project
The verification shows:
- Log4j2 test module uses version 2.17.1 which is secure (post Log4Shell fix)
- Logging dependencies are properly segregated into separate test modules:
- logback-test for Logback implementation
- log4j2-test for Log4j2 implementation
- log4j-test for Log4j implementation
- Core modules use SLF4J API, maintaining logging framework independence
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Check logging configurations across the project
# Look for logging-related configurations that might affect redis-plugin
# Search for log4j2 configurations
echo "Checking for log4j2.xml configurations..."
fd -e xml -e properties -e yaml -e yml | rg -l "log4j2"
# Search for logging-related properties in pom files
echo "Checking for logging-related dependencies..."
fd "pom.xml" | xargs rg "slf4j|logback|log4j"
Length of output: 2819
sofa-tracer-plugins/sofa-tracer-resttmplate-plugin/pom.xml (1)
8-8
: Version update is consistent
The version change to 3.1.9 maintains consistency across modules.
tracer-test/core-test/pom.xml (1)
7-7
: Version update and logging configuration verification needed
The version change to 3.1.9 is consistent, but since this PR aims to fix redis-plugin logging issues, we should verify the logging configuration.
Let's check for potential logging conflicts:
✅ Verification successful
Version change is safe, logging dependencies are properly configured
The version change from 3.1.9-SNAPSHOT to 3.1.9 is consistent. Regarding the logging configuration:
- The core-test module correctly declares slf4j-log4j12 and slf4j-api dependencies
- Each test module (logback-test, log4j2-test, log4j-test) has its own specific logging implementation, which is a proper separation of concerns
- There are no version conflicts visible in the core-test module's dependencies
The logging setup appears to be properly structured with clear separation between different logging implementations in test modules, which shouldn't affect the redis-plugin logging issues.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Verify logging dependencies and potential conflicts
# that might affect redis-plugin logging
# Check effective POM to see resolved versions
echo "Checking effective logging dependencies..."
fd "pom.xml" -p "sofa-tracer-redis-plugin" -x mvn help:effective-pom -pl {} | rg "<artifactId>(slf4j|logback|log4j)"
# Look for multiple logging implementations
echo "Checking for multiple logging implementations..."
fd "pom.xml" | xargs rg "<artifactId>(slf4j-log4j12|logback-classic|log4j-slf4j-impl)"
# Check redis plugin specific logging configuration
echo "Checking redis plugin logging configuration..."
fd -t f -p "sofa-tracer-redis-plugin" | rg -l "log|logging"
Length of output: 1015
Script:
#!/bin/bash
# Let's try a different approach to verify logging dependencies
# First, check the direct parent POM for logging dependencies
echo "Checking parent POM logging dependencies..."
cat tracer-test/core-test/pom.xml | rg -A 2 -B 2 "<artifactId>(slf4j|logback|log4j)"
# Check if there are any logging-related properties or dependency management
echo "Checking for logging-related properties..."
cat tracer-test/core-test/pom.xml | rg -A 2 -B 2 "<properties>|<dependencyManagement>"
# Check the root POM for logging dependency versions
echo "Checking root POM for logging configurations..."
cat pom.xml | rg -A 2 -B 2 "<artifactId>(slf4j|logback|log4j)"
# Look for any logging configuration files
echo "Checking for logging configuration files..."
fd -e xml -e properties | rg -l "log4j|logback"
Length of output: 960
pom.xml (2)
12-12
: LGTM! Version update from SNAPSHOT to release.
The version change from 3.1.9-SNAPSHOT to 3.1.9 is consistent with the PR objective to fix redis-plugin logging issues.
Let's verify version consistency across all modules:
✅ Verification successful
Version consistency verified across all modules
The verification shows:
- No remaining SNAPSHOT versions were found in any pom.xml files
- All modules have been properly updated to version 3.1.9, including:
- Core modules (tracer-core, tracer-all)
- All plugins including the redis-plugin
- Test modules
- Extensions and starter modules
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Check for any remaining SNAPSHOT versions in pom files
echo "Checking for any remaining SNAPSHOT versions..."
find . -name "pom.xml" -exec grep -l "3.1.9-SNAPSHOT" {} \;
# Check if all modules have the same version
echo "Verifying version consistency across modules..."
find . -name "pom.xml" -exec grep -l "<version>3.1.9</version>" {} \;
Length of output: 1591
12-12
: Verify redis-plugin changes in this version.
Since this PR aims to fix redis-plugin logging issues, let's verify the changes.
tracer-core/pom.xml (1)
7-7
: Version update looks good
The version change from 3.1.9-SNAPSHOT to 3.1.9 is consistent with the PR objective.
Let's verify no version conflicts are introduced:
✅ Verification successful
Version update is consistent and properly aligned across the project
The version change from 3.1.9-SNAPSHOT to 3.1.9 in tracer-core/pom.xml is properly synchronized with all other modules in the project. The analysis shows:
- All modules consistently use version 3.1.9
- The parent POM (tracer-all-parent) and all child modules are aligned to the same version
- Dependencies between modules use
${project.version}
which ensures version consistency - No SNAPSHOT versions were found in the codebase
- The parent dependency on sofaboot-dependencies (3.19.1) is stable and not affected by this change
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Check for version conflicts in dependency tree
mvn dependency:tree -Dverbose -Dincludes=com.alipay.sofa:* | grep -E "3.1.9|SNAPSHOT"
Length of output: 183
Script:
#!/bin/bash
# Let's check the pom files to understand version dependencies
fd -e xml pom.xml --exec grep -l "3.1.9\|SNAPSHOT" {}
Length of output: 1305
Script:
#!/bin/bash
# Let's examine the content of these pom files
fd -e xml pom.xml --exec echo "=== {} ===" \; --exec grep -A 2 -B 2 "3.1.9\|SNAPSHOT" {}
Length of output: 6526
Script:
#!/bin/bash
# Check if there are any other SOFA dependencies
fd -e xml pom.xml --exec grep -l "com.alipay.sofa" {}
Length of output: 1303
Script:
#!/bin/bash
# Examine SOFA dependencies in detail
fd -e xml pom.xml --exec echo "=== {} ===" \; --exec grep -A 3 -B 3 "com.alipay.sofa" {}
Length of output: 22905
tracer-sofa-boot-starter/pom.xml (2)
8-8
: Version update looks good
The version change from 3.1.9-SNAPSHOT to 3.1.9 is consistent with the PR objective.
Line range hint 89-91
: Verify redis-plugin logging functionality
Since this PR aims to fix redis-plugin logging issues, let's verify the redis-plugin dependency and its logging configuration.
Run the following script to check redis-plugin logging configuration:
Also applies to: 106-109
✅ Verification successful
Redis plugin logging functionality is properly implemented
Based on the code analysis, the Redis plugin has a complete logging implementation with:
- Digest logs (
redis-digest.log
) for detailed tracing - Statistics logs (
redis-stat.log
) for metrics - Both JSON and standard format support
- Proper error handling and span tracking
The implementation includes:
RedisSofaTracer
: Core tracing functionality with proper span lifecycle managementRedisStatReporter
andRedisStatJsonReporter
: Statistics reporting in both formatsRedisLogEnum
: Log configuration management
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Check redis-plugin logging configuration
rg -A 5 "redis.*log"
# Check for logging-related configuration in redis plugin
rg -A 5 "logging\.level|logback|log4j" --glob "sofa-tracer-redis-plugin/**"
Length of output: 1554
Script:
#!/bin/bash
# Let's check the redis plugin implementation and logging configuration more thoroughly
# Check for redis plugin logging implementation
ast-grep --pattern 'class $_ implements $_ {
$$$
log($$$) {
$$$
}
$$$
}'
# Check for redis tracer configuration files
fd -e properties -e xml -e yml -e yaml . sofa-tracer-plugins/sofa-tracer-redis-plugin --exec cat {}
# Check for redis reporter or logging related classes
rg -l "Reporter|LoggerFactory|Logger" sofa-tracer-plugins/sofa-tracer-redis-plugin/
# Check for any test configurations
fd -e properties -e xml -e yml -e yaml . sofa-tracer-plugins/sofa-tracer-redis-plugin/src/test --exec cat {}
Length of output: 3009
Script:
#!/bin/bash
# Let's examine the redis logging implementation files we found
# Check the Redis tracer implementation
cat sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/java/com/sofa/alipay/tracer/plugins/spring/redis/tracer/RedisSofaTracer.java
# Check the Redis stat reporters
cat sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/java/com/sofa/alipay/tracer/plugins/spring/redis/reporter/RedisStatReporter.java
cat sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/java/com/sofa/alipay/tracer/plugins/spring/redis/reporter/RedisStatJsonReporter.java
# Check for any logging configuration files in resources
fd -e properties -e xml . sofa-tracer-plugins/sofa-tracer-redis-plugin/src/main/resources --exec cat {}
Length of output: 12861
Motivation:
Released to fix the problem that redis-plugin is currently unable to print logs normally
Modification:
change tag to 3.1.9
Result:
Fixes #.
If there is no issue then describe the changes introduced by this PR.
Summary by CodeRabbit