4040import java .util .Objects ;
4141import java .util .concurrent .Callable ;
4242import java .util .concurrent .ConcurrentHashMap ;
43- import java .util .concurrent .locks .ReentrantLock ;
4443import java .util .logging .Handler ;
4544import java .util .logging .Logger ;
4645
@@ -120,7 +119,6 @@ static class TelemetryConfig {
120119
121120 private static final ConcurrentHashMap <String , TelemetryConfig > connectionConfigs =
122121 new ConcurrentHashMap <>();
123- private static final ReentrantLock lock = new ReentrantLock ();
124122
125123 private BigQueryJdbcOpenTelemetry () {}
126124
@@ -142,22 +140,17 @@ private BigQueryJdbcOpenTelemetry() {}
142140 }));
143141 }
144142
145- public static void ensureGlobalHandlerAttached () {
146- lock .lock ();
147- try {
148- Logger logger = Logger .getLogger (BIGQUERY_NAMESPACE );
149- boolean present = false ;
150- for (Handler h : logger .getHandlers ()) {
151- if (h instanceof OpenTelemetryJulHandler ) {
152- present = true ;
153- break ;
154- }
155- }
156- if (!present ) {
157- logger .addHandler (new OpenTelemetryJulHandler ());
143+ public static synchronized void ensureGlobalHandlerAttached () {
144+ Logger logger = Logger .getLogger (BIGQUERY_NAMESPACE );
145+ boolean present = false ;
146+ for (Handler h : logger .getHandlers ()) {
147+ if (h instanceof OpenTelemetryJulHandler ) {
148+ present = true ;
149+ break ;
158150 }
159- } finally {
160- lock .unlock ();
151+ }
152+ if (!present ) {
153+ logger .addHandler (new OpenTelemetryJulHandler ());
161154 }
162155 }
163156
0 commit comments