log4j appender自定义_log4j routingappender_fileappender log4j(22)

电脑杂谈  发布时间:2017-01-30 04:04:43  来源:网络整理

1protected boolean fileAppend = true;

2protected String fileName = null;

3protected boolean bufferedIO = false;

4protected int bufferSize = 8 * 1024;

5

6public void activateOptions() {

7if (fileName != null) {

8try {

9setFile(fileName, fileAppend, bufferedIO, bufferSize);

10} catch (java.io.IOException e) {

11errorHandler.error("setFile(" + fileName + "," + fileAppend

12+ ") call failed.", e, ErrorCode.FILE_OPEN_FAILURE);

13}

14} else {

15LogLog.warn("File option not set for appender [" + name + "].");

16LogLog.warn("Are you using FileAppender instead of ConsoleAppender?");

17}

18}

19

20public synchronized void setFile(String fileName, boolean append,

21boolean bufferedIO, int bufferSize) throws IOException {

22LogLog.debug("setFile called: " + fileName + ", " + append);

23if (bufferedIO) {

24setImmediateFlush(false);

25}

26reset();

27FileOutputStream ostream = null;

28try {

29ostream = new FileOutputStream(fileName, append);

30} catch (FileNotFoundException ex) {

31String parentName = new File(fileName).getParent();

32if (parentName != null) {

33File parentDir = new File(parentName);

34if (!parentDir.exists() && parentDir.mkdirs()) {

35ostream = new FileOutputStream(fileName, append);

36} else {

37throw ex;

38}

39} else {

40throw ex;

41}

42}

43Writer fw = createWriter(ostream);

44if (bufferedIO) {

45fw = new BufferedWriter(fw, bufferSize);

46}

47this.setQWForFiles(fw);

48this.fileName = fileName;

49this.fileAppend = append;

50this.bufferedIO = bufferedIO;

51this.bufferSize = bufferSize;


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-29497-22.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 汪发森
      汪发森

      桃子加油

    • 陈幽公妫宁
      陈幽公妫宁

      感谢@SMTOWN让宋茜身高魔术般地变成了最矮的

    • 丁小军
      丁小军

      这下麻烦了

    热点图片
    拼命载入中...