import
.;
import
.;
import
.;
import
.;
import
.;
import
.;
import
.;
import
.;
import
.;
import
.;
import
org.;
import
org.;
/**
*
*/
public
class
JobLogFactory {
private
JobLogFactory() {
}
public
static
void
start(
int
jobId) {
//为false时,返回多个LoggerContext对象, true:返回唯一的单例LoggerContext
final
LoggerContext ctx = (LoggerContext) (
false
);
final
Configuration config = ();
//创建一个展示的样式:PatternLayout, 还有其他的日志打印样式。
Layout layout = (PatternLayout.DEFAULT_CONVERSION_PATTERN,
config,
null
,
null
,
true
,
false
,
null
,
null
);
//TriggeringPolicy tp = ("10MB");
//Appender appender = (("
// logs/test/syncshows-job-%", jobID),
// "/logs/test/" + jobID + "/syncshows-job-" + jobID + ".",
// "true", jobID, null, null, null, tp, null, layout, null,
// null, null, null, config);
// 日志打印方式——输出为文件
Appender appender = (
(
"logs/test/syncshows-job-%"
, jobId),
"true"
,
"false"
,
""
+ jobId,
null
,
"true"
,
"true"
,
null
, layout,
null
,
null
,
null
, config);
();
(appender);
AppenderRef ref = (
""
+ jobId,
null
,
null
);
AppenderRef[] refs =
new
AppenderRef[]{ref};
LoggerConfig loggerConfig = (
"false"
, ,
""
+ jobId,
"true"
, refs,
null
, config,
null
);
(appender,
null
,
null
);
(
""
+ jobId, loggerConfig);
();
}
public
static
void
stop(
int
jobId) {
final
LoggerContext ctx = (LoggerContext) (
false
);
final
Configuration config = ();
(
""
+ jobId).stop();
(
""
+ jobId).removeAppender(
""
+ jobId);
(
""
+ jobId);
();
}
/**
* 获取Logger
*
* 如果不想使用slf4j,那这里改成直接返回Log4j的Logger即可
* @param jobId
* @return
*/
public
static
Logger createLogger(
int
jobId) {
start(jobId);
return
(
""
+ jobId);
}
}