在管理任务中写入自己的日志文件

Writing to own log file in curation task

我正在写一个 管理任务 并且想从任务中写入我自己的日志文件(如:[dspace]/log/myCurationTask.log),而不是dspace.log.

我如何使用尽可能多的标准 DSpace 程序来实现这一点?

这是 log4j.properties 文件:https://github.com/DSpace/DSpace/blob/dspace-5.6/dspace/config/log4j.properties

您可以复制 A1 的配置(或定义您自己的配置),将其命名为 A4 并让您的特定包或 classes 的日志也像这样发送到 A4 appender

log4j.logger.org.dspace.etc.etc = INFO, A4
log4j.additivity.org.dspace.etc.etc = false

A1日志文件中指定日志文件的行是这一行:log4j.appender.A1.File=${log.dir}/dspace.log

在您的 java class 中,您可以使用此

将文本发送到日志
import org.apache.log4j.Logger;

public class SomeClass {

    /**
     * log4j logger
     */
    private static final Logger log = Logger.getLogger(SomeClass.class);

然后您可以使用 log.infolog.warnlog.errorlog.debug...