This is an automated email from the ASF dual-hosted git repository.
ashishvijaywargiya pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/ofbiz-framework.git
The following commit(s) were added to refs/heads/trunk by this push:
new 2075a1bd31 Enable linenumber log4j (#1328)
2075a1bd31 is described below
commit 2075a1bd316eb7ef8343a3a88f08693aa04e7e2a
Author: Ashish Vijaywargiya <[email protected]>
AuthorDate: Thu Jun 4 07:19:23 2026 +0530
Enable linenumber log4j (#1328)
---
framework/base/config/log4j2.xml | 20 ++++++++++++++++----
.../main/java/org/apache/ofbiz/base/util/Debug.java | 6 ++++--
gradle.properties | 3 +++
3 files changed, 23 insertions(+), 6 deletions(-)
diff --git a/framework/base/config/log4j2.xml b/framework/base/config/log4j2.xml
index 6ce27b8166..e0a44aeecf 100644
--- a/framework/base/config/log4j2.xml
+++ b/framework/base/config/log4j2.xml
@@ -18,6 +18,18 @@ specific language governing permissions and limitations
under the License.
-->
<Configuration monitorInterval="60" packages="org.apache.ofbiz.base.log4j">
+ <!--
+ Source line numbers in log output are enabled by default.
+ To disable for production, set/uncomment systemProp.ofbiz.env=prod in
gradle.properties.
+ -->
+ <Properties>
+ <Property name="lineToken_dev">:%line</Property>
+ <Property name="lineToken_prod"></Property>
+ <Property name="includeLocation_dev">true</Property>
+ <Property name="includeLocation_prod">false</Property>
+ <Property name="logPattern">%date{DEFAULT} |%-20.20thread
|%-30.30logger{1}${lineToken_${sys:ofbiz.env:-dev}}|%level{length=1}|
%message%n</Property>
+ <Property
name="includeLocation">${includeLocation_${sys:ofbiz.env:-dev}}</Property>
+ </Properties>
<OFBizDynamicThresholdFilter key="uri" onMatch="ACCEPT" onMismatch="DENY">
<KeyValuePair key="/getJs" value="ERROR"/>
<KeyValuePair key="/control/getJs" value="ERROR"/>
@@ -40,11 +52,11 @@ under the License.
-->
<Appenders>
<Console name="stdout" target="SYSTEM_OUT">
- <PatternLayout pattern="%date{DEFAULT} |%-20.20thread
|%-30.30logger{1}|%level{length=1}| %message%n"/>
+ <PatternLayout pattern="${logPattern}"/>
</Console>
<RollingFile name="ofbiz" fileName="runtime/logs/ofbiz.log"
filePattern="runtime/logs/ofbiz.log.%i">
- <PatternLayout pattern="%date{DEFAULT} |%-20.20thread
|%-30.30logger{1}|%level{length=1}| %message%n"/>
+ <PatternLayout pattern="${logPattern}"/>
<Policies>
<OnStartupTriggeringPolicy/>
<SizeBasedTriggeringPolicy size="10 MB"/>
@@ -54,7 +66,7 @@ under the License.
<RollingFile name="error" fileName="runtime/logs/error.log"
filePattern="runtime/logs/error.log.%i">
<ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/>
- <PatternLayout pattern="%date{DEFAULT} |%-20.20thread
|%-30.30logger{1}|%level{length=1}| %message%n"/>
+ <PatternLayout pattern="${logPattern}"/>
<Policies>
<OnStartupTriggeringPolicy/>
<SizeBasedTriggeringPolicy size="10 MB"/>
@@ -62,7 +74,7 @@ under the License.
<DefaultRolloverStrategy fileIndex="min" max="10"/>
</RollingFile>
- <Async name="async">
+ <Async name="async" includeLocation="${includeLocation}">
<AppenderRef ref="ofbiz"/>
<AppenderRef ref="stdout"/>
<AppenderRef ref="error"/>
diff --git a/framework/base/src/main/java/org/apache/ofbiz/base/util/Debug.java
b/framework/base/src/main/java/org/apache/ofbiz/base/util/Debug.java
index f3e1c0dd1e..129047a467 100644
--- a/framework/base/src/main/java/org/apache/ofbiz/base/util/Debug.java
+++ b/framework/base/src/main/java/org/apache/ofbiz/base/util/Debug.java
@@ -27,6 +27,7 @@ import java.util.Properties;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.spi.ExtendedLogger;
/**
* Configurable Debug logging wrapper class
@@ -115,8 +116,9 @@ public final class Debug {
}
// log
- Logger logger = getLogger(module);
- logger.log(LEVEL_OBJS[level], msg, t);
+ ExtendedLogger logger = (ExtendedLogger) getLogger(module);
+ logger.logMessage(Debug.class.getName(), LEVEL_OBJS[level], null,
+ logger.getMessageFactory().newMessage(msg != null ? msg :
""), t);
}
}
diff --git a/gradle.properties b/gradle.properties
index dbb3a5708b..0b89105a14 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -21,3 +21,6 @@ org.gradle.console=plain
# If you experience heap memory problems during the Gradle build, for example
# building with integrated plugins, the following setting might help
#org.gradle.jvmargs=-Xms128m -Xmx1024m -XX:+CMSClassUnloadingEnabled
+
+# Uncomment to disable source line numbers in log output (e.g. for production).
+#systemProp.ofbiz.env=prod