Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Writing to the Correct Log

Chinese

写入正确的日志


English

Let's start with the basics first. In order to write into the log files correctly, we should make use of the LogUtil (Source code: https://github.com/jogetworkflow/jw-community/blob/6.0-SNAPSHOT/wflow-commons/src/main/java/org/joget/commons/util/LogUtil.java) utility class.

We should not use the following to print out log in writing our own plugins.


Chinese

让我们先从基础开始。为了正确写入日志文件,我们应该使用LogUtil (源代码: https://github.com/jogetworkflow/jw-community/blob/6.0-SNAPSHOT/wflow-commons/src/main/java/org/joget/commons/util/LogUtil.java)实用程序类。


在编写我们自己的插件时,我们不应使用以下内容打印日志。

...

Info
titleThis applies to Joget DX version 7.0.26 and onwards


Navigate to the "[JogetFolder]\apache-tomcat-8.5.72\webapps\jw\WEB-INF\classes\log4j2.xml" configuration file and check out the use of EMAIL rolling files to see how EmailTool, UserNotificationAuditTrail, and ExportFormEmailTool are writing into email.log file.


Code Block
titlelog4jlog4j2.propertiesxml
linenumberstrue
        <RollingFile
            name="EMAIL"
            fileName="${LOGDIR}/email.log"
            filePattern="${LOGDIR}/email.log.%d{yyyyMMdd}.gz"
            ignoreExceptions="false">
            <PatternLayout>
                <Pattern>%-5p %d{dd MMM yyyy HH:mm:ss} %-50c - %m%throwable{0}%n</Pattern>
            </PatternLayout>
            <Policies>
                <OnStartupTriggeringPolicy />
                <SizeBasedTriggeringPolicy size="10MB" />
                <TimeBasedTriggeringPolicy interval="1"/>
            </Policies>
            <DefaultRolloverStrategy max="5" />
        </RollingFile>   


        <!-- Email log file -->
        <Logger name="org.joget.apps.app.lib.EmailTool" level="debug" additivity="true">
            <AppenderRef ref="EMAIL"/>
        </Logger>
        <Logger name="org.joget.apps.app.lib.UserNotificationAuditTrail" level="debug" additivity="true">
            <AppenderRef ref="EMAIL"/>
        </Logger>
        <Logger name="org.joget.plugin.enterprise.ExportFormEmailTool" level="debug" additivity="true">
            <AppenderRef ref="EMAIL"/>
        </Logger>
Info
titleThis applies to Joget DX version 7.0.25 and before


Navigate to the "[JogetFolder]\apache-tomcat-8.5.23\webapps\jw\WEB-INF\classes\log4j.properties" configuration file and check out the use of R2 tag to see how EmailTool, UserNotificationAuditTrail, and ExportFormEmailTool are writing into email.log file.


Code Block
titlelog4j.properties
linenumberstrue
log4j.logger.org.joget.apps.app.lib.EmailTool=DEBUG, R2
log4j.logger.org.joget.apps.app.lib.UserNotificationAuditTrail=DEBUG, R2
log4j.logger.org.joget.plugin.enterprise.ExportFormEmailTool=DEBUG, R2

# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender

# A1 uses PatternLayout.
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-5p %d{dd MMM yyyy HH:mm:ss} %c %x - %m%n

# R is set to be DailyRollingFileAppender
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.File=${catalina.home}/logs/joget.log
log4j.appender.R.DatePattern='.'yyyyMMdd
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%-5p %d{dd MMM yyyy HH:mm:ss} %c %x - %m%n

# R2 is set to be DailyRollingFileAppender
log4j.appender.R2=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R2.File=${catalina.home}/logs/email.log
log4j.appender.R2.DatePattern='.'yyyyMMdd
log4j.appender.R2.layout=org.apache.log4j.EnhancedPatternLayout
log4j.appender.R2.layout.ConversionPattern=%-5p %d{dd MMM yyyy HH:mm:ss} %-50c - %m%throwable{0}%n


Identifying App Origin in Log Files

Chinese

在日志文件中识别应用程序来源

In the section above, we talked about using LogUtil to write into the log files and how to write into separate files too. When we have too many apps running in the same copy of Joget, sometimes it is trace certain line of messages to the origin of Joget apps that trigger them.

...