diff --git a/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/IWriter.java b/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/IWriter.java index 3188d2a40..cc22ccc14 100644 --- a/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/IWriter.java +++ b/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/IWriter.java @@ -2,4 +2,6 @@ package com.ai.cloud.skywalking.logging; public interface IWriter { void write(String message); + + void writeError(String message); } diff --git a/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/Logger.java b/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/Logger.java index 5b6353f40..bb14d8841 100644 --- a/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/Logger.java +++ b/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/Logger.java @@ -23,11 +23,15 @@ public class Logger { StackTraceElement locations[] = dummyException.getStackTrace(); if (locations != null && locations.length > 2) { - WriterFactory.getLogWriter().write(formatMessage(level, message, locations[2])); + if(ERROR.equals(level) || WARN.equals(level)){ + WriterFactory.getLogWriter().writeError(formatMessage(level, message, locations[2])); + }else { + WriterFactory.getLogWriter().write(formatMessage(level, message, locations[2])); + } } if (e != null) { - WriterFactory.getLogWriter().write(LoggingUtil.fetchThrowableStack(e)); + WriterFactory.getLogWriter().writeError(LoggingUtil.fetchThrowableStack(e)); } } diff --git a/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/STDOutWriter.java b/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/STDOutWriter.java index 9e88ed613..ee620d800 100644 --- a/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/STDOutWriter.java +++ b/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/STDOutWriter.java @@ -5,6 +5,11 @@ public class STDOutWriter implements IWriter { @Override public void write(String message) { + System.out.println(message); + } + + @Override + public void writeError(String message) { System.err.println(message); } } diff --git a/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/SyncFileWriter.java b/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/SyncFileWriter.java index dbb6bbf9d..37b946468 100644 --- a/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/SyncFileWriter.java +++ b/skywalking-collector/skywalking-api/src/main/java/com/ai/cloud/skywalking/logging/SyncFileWriter.java @@ -48,6 +48,11 @@ public class SyncFileWriter implements IWriter { switchLogFileIfNecessary(); } + @Override + public void writeError(String message) { + this.write(message); + } + private void writeLogRecord(String message) { try { os.write(message.getBytes());