From 95923ed679d2e3d7ea89b909c44e661789303165 Mon Sep 17 00:00:00 2001 From: Hubert Plociniczak Date: Tue, 25 Feb 2025 16:07:51 +0100 Subject: [PATCH] Ensure project-manager's logs are centrally collected Minor fix to bring back project-manager's logs. Previous, default, configuration meant that logs for project-manager ended up in a separate file from the rest of the logs. Language server logs are being sent to the logging server by default, so should project-manager's ones as well. Fixed NPE in `SocketLoggingNode` when no `project.id` is present in loggers, as is the case with logs coming from project-manager. --- .../org/enso/logging/service/logback/SocketLoggingNode.java | 5 ++++- .../java/org/enso/logging/service/LoggingSetupHelper.java | 2 +- .../project-manager/src/main/resources/application.conf | 6 +++--- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/lib/scala/logging-service-logback/src/main/java/org/enso/logging/service/logback/SocketLoggingNode.java b/lib/scala/logging-service-logback/src/main/java/org/enso/logging/service/logback/SocketLoggingNode.java index 32bba9257b87..ca9a7a6d9b74 100644 --- a/lib/scala/logging-service-logback/src/main/java/org/enso/logging/service/logback/SocketLoggingNode.java +++ b/lib/scala/logging-service-logback/src/main/java/org/enso/logging/service/logback/SocketLoggingNode.java @@ -76,7 +76,10 @@ public void run() { event = (ILoggingEvent) hardenedLoggingEventInputStream.readObject(); if (projectId == null) { try { - projectId = UUID.fromString(event.getMDCPropertyMap().get("project.id")); + var property = event.getMDCPropertyMap().get("project.id"); + if (property != null) { + projectId = UUID.fromString(property); + } } catch (IllegalArgumentException e) { // ignore } diff --git a/lib/scala/logging-service/src/main/java/org/enso/logging/service/LoggingSetupHelper.java b/lib/scala/logging-service/src/main/java/org/enso/logging/service/LoggingSetupHelper.java index 09de2d8882de..bd89457c43b9 100644 --- a/lib/scala/logging-service/src/main/java/org/enso/logging/service/LoggingSetupHelper.java +++ b/lib/scala/logging-service/src/main/java/org/enso/logging/service/LoggingSetupHelper.java @@ -77,12 +77,12 @@ logLevel, actualPort, logPath(), logFileSuffix(), config.getServer(), ec) if (result.isFailure()) { setup(Option.apply(logLevel), Option.empty(), logMasking, loggerSetup); } else { - URI uri = result.get(); Masking.setup(logMasking); if (!loggerSetup.setup(logLevel)) { LoggingServiceManager.teardown(); loggingServiceEndpointPromise.failure(new LoggerInitializationFailed()); } else { + URI uri = result.get(); loggingServiceEndpointPromise.success(Option.apply(uri)); } } diff --git a/lib/scala/project-manager/src/main/resources/application.conf b/lib/scala/project-manager/src/main/resources/application.conf index f49eb84e98c1..48251a4e4289 100644 --- a/lib/scala/project-manager/src/main/resources/application.conf +++ b/lib/scala/project-manager/src/main/resources/application.conf @@ -40,7 +40,7 @@ logging-service { name = "file" } ] - default-appender = file + default-appender = socket default-appender = ${?ENSO_APPENDER_DEFAULT} log-to-file { enable = true @@ -55,9 +55,9 @@ logging-service { port = ${?ENSO_LOGSERVER_PORT} log-to-file { enable = true - enable = ${?ENSO_LOG_TO_FILE} + enable = ${?ENSO_LOGSERVER_LOG_TO_FILE} log-level = debug - log-level = ${?ENSO_LOG_TO_FILE_LOG_LEVEL} + log-level = ${?ENSO_LOGSERVER_LOG_TO_FILE_LOG_LEVEL} } appenders = [ # file/console/socket/sentry {