diff --git a/vscode-extensions/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/LaunguageServerApp.java b/vscode-extensions/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/LaunguageServerApp.java index f709be51e..3dcac3325 100644 --- a/vscode-extensions/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/LaunguageServerApp.java +++ b/vscode-extensions/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/LaunguageServerApp.java @@ -87,7 +87,6 @@ public abstract class LaunguageServerApp { Connection connection = null; try { LoggingFormat.startLogging(); - connection = connectToNode(); run(connection); @@ -110,17 +109,8 @@ public abstract class LaunguageServerApp { InputStream in = socket.getInputStream(); OutputStream out = socket.getOutputStream(); - OutputStream intercept = new OutputStream() { - - @Override - public void write(int b) throws IOException { - out.write(b); - } - }; - LOG.info("Connected to parent using socket on port " + port); - - return new Connection(in, intercept, socket); + return new Connection(in, out, socket); } else { InputStream in = System.in; @@ -147,7 +137,6 @@ public abstract class LaunguageServerApp { Function wrapper = (MessageConsumer consumer) -> { return (msg) -> { try { - LOG.info(""+msg); consumer.consume(msg); } catch (UnsupportedOperationException e) { //log a warning and ignore. We are getting some messages from vsCode the server doesn't know about diff --git a/vscode-extensions/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/util/LoggingFormat.java b/vscode-extensions/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/util/LoggingFormat.java index 6464c05f7..92a661c8a 100644 --- a/vscode-extensions/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/util/LoggingFormat.java +++ b/vscode-extensions/commons/commons-language-server/src/main/java/org/springframework/ide/vscode/commons/languageserver/util/LoggingFormat.java @@ -5,63 +5,67 @@ import java.io.PrintWriter; import java.io.StringWriter; import java.time.Instant; import java.util.StringJoiner; -import java.util.logging.*; +import java.util.logging.Formatter; +import java.util.logging.Handler; +import java.util.logging.LogRecord; +import java.util.logging.Logger; public class LoggingFormat extends Formatter { - public static ThreadLocal request = new ThreadLocal<>(); + public static ThreadLocal request = new ThreadLocal<>(); - @Override - public String format(LogRecord record) { - StringJoiner joiner = new StringJoiner("\t"); + @Override + public String format(LogRecord record) { + StringJoiner joiner = new StringJoiner("\t"); - joiner.add(record.getLevel().getName()); - joiner.add(requestAsString()); - joiner.add(Thread.currentThread().getName()); - joiner.add(Instant.ofEpochMilli(record.getMillis()).toString()); -// joiner.add(record.getLoggerName()); - joiner.add(record.getSourceClassName() + "#" + record.getSourceMethodName()); - joiner.add(record.getMessage()); + joiner.add(record.getLevel().getName()); + joiner.add(requestAsString()); + joiner.add(Thread.currentThread().getName()); + joiner.add(Instant.ofEpochMilli(record.getMillis()).toString()); + // joiner.add(record.getLoggerName()); + joiner.add(record.getSourceClassName() + "#" + record.getSourceMethodName()); + joiner.add(record.getMessage()); - String result = joiner.toString() + "\n"; + String result = joiner.toString() + "\n"; - Throwable thrown = record.getThrown(); + Throwable thrown = record.getThrown(); - if (thrown != null) { - StringWriter stackTrace = new StringWriter(); - PrintWriter print = new PrintWriter(stackTrace); + if (thrown != null) { + StringWriter stackTrace = new StringWriter(); + PrintWriter print = new PrintWriter(stackTrace); - thrown.printStackTrace(print); - print.flush(); + thrown.printStackTrace(print); + print.flush(); - result = result + stackTrace + "\n"; - } + result = result + stackTrace + "\n"; + } - return result; - } + return result; + } - private CharSequence requestAsString() { - Integer i = request.get(); + private CharSequence requestAsString() { + Integer i = request.get(); - if (i == null) - return "?"; - else - return Integer.toString(i); - } + if (i == null) + return "?"; + else + return Integer.toString(i); + } - private static boolean started = false; + private static boolean started = false; - public static void startLogging() throws IOException { - if (!started) { - started = true; + public static void startLogging() throws IOException { + if (!started) { + started = true; - Logger root = Logger.getLogger(""); + Logger root = Logger.getLogger(""); +// for (Handler h : ImmutableList.copyOf(root.getHandlers())) { +// root.removeHandler(h); +// } +// FileHandler file = new FileHandler("sts4-extension.%g.log", 100_000, 1, false); +// root.addHandler(file); - FileHandler file = new FileHandler("javac-services.%g.log", 100_000, 1, false); - - root.addHandler(file); - - for (Handler h : root.getHandlers()) - h.setFormatter(new LoggingFormat()); - } - } + for (Handler h : root.getHandlers()) + h.setFormatter(new LoggingFormat()); + } + } }