DXPのAuditログをファイルへ出力する方法
詳細
留意点
- この設定はDXP 7.0 Fix Pack 12以上で有効です
要件例
- Auditログを、データベーステーブルではなくログファイルとして出力する
- 一日おきにログローテーションする
設定手順
- 「コントロールパネル>設定>システム設定>基本設定>Logging Message Audit Message Processor」へ移動
- 「Enabled」にチェックを入れ、任意の「Log message format(CSV / JSON)」を選択し、更新
- アプリケーションサーバーを停止
- 「
$TOMCAT_HOME/webapps/ROOT/WEB-INF/classes/META-INF/
」ディレクトリ内に、
以下の内容で「portal-log4j-ext.xml
」という名前のファイルを作成<?xml version="1.0"?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <!-- additional audit logging --> <appender class="org.apache.log4j.rolling.RollingFileAppender" name="AUDIT_FILE"> <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy"> <param name="FileNamePattern" value="@liferay.home@/logs/audit.%d{yyyy-MM-dd}.log" /> </rollingPolicy> <layout class="org.apache.log4j.EnhancedPatternLayout"> <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%t][%c{1}:%L] %m%n" /> </layout> </appender> <category name="com.liferay.portal.security.audit.router.internal.LoggingAuditMessageProcessor"> <priority value="INFO" /> <appender-ref ref="AUDIT_FILE"/> </category> </log4j:configuration>
- アプリケーションサーバーを起動
- ログイン等の操作を実施
- 「
liferay_home/logs/
」内に、「audit.yyyy-mm-dd.log
」のような名前のログファイルが作成されることを確認