This is an automated email from the ASF dual-hosted git repository.

hansva pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hop.git


The following commit(s) were added to refs/heads/main by this push:
     new 6e4b490106 Fixes #7297: Silence MSSQL JDBC driver JUL INFO log spam in 
hop-run (#7300)
6e4b490106 is described below

commit 6e4b49010689bac590d84642ca1f411a9e023b2f
Author: Bala Dheeraj Chennavaram <[email protected]>
AuthorDate: Tue Jun 16 17:41:05 2026 +0530

    Fixes #7297: Silence MSSQL JDBC driver JUL INFO log spam in hop-run (#7300)
---
 engine/src/main/java/org/apache/hop/run/HopRun.java | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/engine/src/main/java/org/apache/hop/run/HopRun.java 
b/engine/src/main/java/org/apache/hop/run/HopRun.java
index e0655d6a20..161f69873d 100644
--- a/engine/src/main/java/org/apache/hop/run/HopRun.java
+++ b/engine/src/main/java/org/apache/hop/run/HopRun.java
@@ -17,6 +17,8 @@
 
 package org.apache.hop.run;
 
+import java.util.logging.Level;
+import java.util.logging.Logger;
 import lombok.Getter;
 import lombok.Setter;
 import org.apache.commons.lang3.StringUtils;
@@ -46,6 +48,12 @@ public class HopRun extends HopRunBase implements Runnable, 
IHasHopMetadataProvi
 
   public static void main(String[] args) {
 
+    // Silence verbose JUL loggers from third-party JDBC drivers (e.g. 
Microsoft SQL Server)
+    // that write INFO messages to stderr via the default ConsoleHandler. Hop 
uses its own
+    // logging system (HopLogStore) so this JUL output is unwanted noise. 
(Fixes #7297)
+    //
+    silenceJulJdbcLoggers();
+
     HopRun hopRun = new HopRun();
 
     try {
@@ -144,4 +152,17 @@ public class HopRun extends HopRunBase implements 
Runnable, IHasHopMetadataProvi
 
     cmd.parseArgs(helpArgs);
   }
+
+  /**
+   * Suppress INFO-level JUL output from third-party JDBC drivers that would 
otherwise flood stderr
+   * via the default {@link java.util.logging.ConsoleHandler}. Hop uses its 
own logging subsystem
+   * ({@link HopLogStore}) so JUL console output is unwanted noise.
+   *
+   * <p>This must be called early in {@link #main(String[])} — before {@link 
HopEnvironment#init()}
+   * — so the loggers are silenced before any driver classes are loaded.
+   */
+  private static void silenceJulJdbcLoggers() {
+    // Microsoft SQL Server JDBC driver 
(com.microsoft.sqlserver.jdbc.TDSTokenHandler et al.)
+    Logger.getLogger("com.microsoft.sqlserver.jdbc").setLevel(Level.WARNING);
+  }
 }

Reply via email to