[ 
https://issues.apache.org/jira/browse/QPID-8291?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anuhan Torgonshar updated QPID-8291:
------------------------------------
    Description: 
Hi, 
I found there are inconsistent log level practices in the Qpid project, and we 
suspect some of them should be fixed.
We select 4 problematic practices to report.
The detail code as well as the modification suggestions are shown below.

 

  was:
Hi, 
 I found there are inconsistent log level practices in the Qpid project, and we 
suspect some of them should be fixed.
 We select 4 problematic practices to report.
 The detail code as well as the modification suggestions are shown below.

********************************* Report1 *********************************
 the problematic snippet:
 ============ ReplicatedEnvironmentFacade.java ===================
 file path: 
qpid-java-6.1.7\bdbstore\src\main\java\org\apache\qpid\server\store\berkeleydb\replication\ReplicatedEnvironmentFacade.java
 logging statement line: 916
 modification suggestion: change log level to WARN
 890 try
 891 \{ 892 return future.get(timeout, TimeUnit.SECONDS); 893 }

894 catch (InterruptedException e)
 895

{ 896 Thread.currentThread().interrupt(); 897 }

898 catch (ExecutionException e)
 899
Unknown macro: \{ 900 Throwable cause = e.getCause(); 901 if (cause instanceof 
Error) 902 { 903 throw (Error) cause; 904 } 905 else if (cause instanceof 
RuntimeException) 906 \{ 907 throw (RuntimeException) cause; 908 } 909 else 910 
\{ 911 throw new ConnectionScopedRuntimeException("Unexpected exception while " 
+ action, e); 912 } 913 }
914 catch (TimeoutException e)
 915 {
 916 LOGGER.info("{} on {} timed out after {} seconds", action, 
_prettyGroupNodeName, timeout);
 917 }

the similar snippet:
 ============ SelectorThread.java ===============================
 file path: 
qpid-java-6.1.7\broker-core\src\main\java\org\apache\qpid\server\transport\SelectorThread.java
 logging statement line: 464
 449 try
 450

{ 451 result.get(ACCEPT_CANCELATION_TIMEOUT, TimeUnit.MILLISECONDS); 452 }

453 catch (InterruptedException e)
 454

{ 455 LOGGER.warn("Cancellation of accepting socket was interrupted"); 456 
Thread.currentThread().interrupt(); 457 }

458 catch (ExecutionException e)
 459

{ 460 LOGGER.warn("Cancellation of accepting socket failed", e.getCause()); 461 
}

462 catch (TimeoutException e)
 463

{ 464 LOGGER.warn("Cancellation of accepting socket timed out"); 465 }

============ BDBHAVirtualHostNodeImpl.java ====================
 file path: 
qpid-java-6.1.7\bdbstore\src\main\java\org\apache\qpid\server\virtualhostnode\berkeleydb\BDBHAVirtualHostNodeImpl.java
 logging statement line: 912
 906 try
 907

{ 908 future.get(MUTATE_JE_TIMEOUT_MS, TimeUnit.MILLISECONDS); 909 }

910 catch (TimeoutException e)
 911

{ 912 LOGGER.warn(timeoutLogMessage); 913 }

********************************* Report2 *********************************
 the problematic snippet:
 ============ AbstractJDBCPreferenceStore.java ===================
 file path: 
qpid-java-6.1.7\broker-core\src\main\java\org\apache\qpid\server\store\preferences\AbstractJDBCPreferenceStore.java
 
 logging statement line: 334
 modification suggestion: change log level to ERROR 
 325 try
 326
Unknown macro: \{327 if (connection != null)328 { 329 connection.close(); 330 
}331 }
332 catch (SQLException e)
 333

{ 334 getLogger().warn("Failed to close JDBC connection", e); 335 }

the similar snippets:
 ============ JdbcUtils.java ==================================
 file path: 
qpid-java-6.1.7\broker-core\src\main\java\org\apache\qpid\server\store\JdbcUtils.java
 logging statement line: 42
 36 try
 37

{ 38 conn.close(); 39 }

40 catch (SQLException e)
 41

{ 42 logger.error("Problem closing connection", e); 43 }

Report3 *********************************
 the problematic snippet:
 ============ DojoHelper.java =================================
 file path: 
qpid-java-6.1.7\broker-plugins\management-http\src\main\java\org\apache\qpid\server\management\plugin\DojoHelper.java
 logging statement line: 75
 modification suggestion: change log level to ERROR
 69 try
 70 \{ 71 propertyStream.close(); 72 }

73 catch (IOException e)
 74

{ 75 _logger.warn("Exception closing InputStream for " + VERSION_FILE + " 
resource:", e); 76 }

the similar snippet:
 ============ CallbackHandlerRegistry.java =======================
 file path: 
qpid-java-6.1.7\client\src\main\java\org\apache\qpid\client\security\CallbackHandlerRegistry.java
 logging statement line: 112
 105 try
 106

{ 107 is.close(); 108 109 }

110 catch (IOException e)
 111

{ 112 _logger.error("Unable to close properties stream: " + e, e); 113 }

============ DynamicSaslRegistrar.java =========================
 file path: 
qpid-java-6.1.7\client\src\main\java\org\apache\qpid\client\security\DynamicSaslRegistrar.java
 logging statement line: 143
 136 try
 137

{ 138 is.close(); 139 140 }

141 catch (IOException e)
 142

{ 143 _logger.error("Unable to close properties stream: " + e, e); 144 }
 * 
 ** 
 *** 
 **** 
 ***** 
 ****** 
 ******* 
 ******** 
 ********* 
 ********** 
 *********** 
 ************ 
 ************* 
 ************** 
 *************** 
 **************** 
 ***************** Report4 *********************************
 the problematic snippet:
 ============ SSLUtil.java ====================================
 file path: 
qpid-java-6.1.7\common\src\main\java\org\apache\qpid\transport\network\security\ssl\SSLUtil.java
 logging statement line: 231
 modification suggestion: change log level to ERROR
 206 try
 207 {
 208 LdapName ln = new LdapName(dn);
 209 for(Rdn rdn : ln.getRdns())
 210 {
 211 if("CN".equalsIgnoreCase(rdn.getType()))
 212 \{ 213 cnStr = rdn.getValue().toString(); 214 }
215 else if("DC".equalsIgnoreCase(rdn.getType()))
 216
Unknown macro: \{217 if(dcStr == null)218 { 219 dcStr = 
rdn.getValue().toString(); 220 }221 else222 \{ 223 dcStr = 
rdn.getValue().toString() + '.' + dcStr; 224 }225 }
226 }
 227 return cnStr == null || cnStr.length()==0 ? "" : dcStr == null ? cnStr : 
cnStr + '@' + dcStr;
 228 }
 229 catch (InvalidNameException e)
 230 {
 231 LOGGER.warn("Invalid name: '{}'", dn);
 232 return "";
 233 }

the similar snippet:
 ============ NonJavaTrustStoreImpl.java ==========================
 file path: 
qpid-java-6.1.7\broker-core\src\main\java\org\apache\qpid\server\security\NonJavaTrustStoreImpl.java
 logging statement line: 163
 147 try
 148 {
 149 LdapName ldapDN = new LdapName(dn);
 150 name = dn;
 151 for (Rdn rdn : ldapDN.getRdns())
 152 {
 153 if (rdn.getType().equalsIgnoreCase("CN"))
 154

{ 155 name = String.valueOf(rdn.getValue()); 156 break; 157 }

158 }
 159
 160 }
 161 catch (InvalidNameException e)
 162

{ 163 LOGGER.error("Error getting subject name from certificate"); 164 name = 
null; 165 }

============ NonJavaKeyStoreImpl.java =========================
 file path: 
qpid-java-6.1.7\broker-core\src\main\java\org\apache\qpid\server\security\NonJavaKeyStoreImpl.java
 logging statement line: 132
 115 try
 116 {
 117 String dn = _certificate.getSubjectX500Principal().getName();
 118 LdapName ldapDN = new LdapName(dn);
 119 String name = dn;
 120 for (Rdn rdn : ldapDN.getRdns())
 121 {
 122 if (rdn.getType().equalsIgnoreCase("CN"))
 123

{ 124 name = String.valueOf(rdn.getValue()); 125 break; 126 }

127 }
 128 return name;
 129 }
 130 catch (InvalidNameException e)
 131

{ 132 LOGGER.error("Error getting subject name from certificate"); 133 return 
null; 134 }

Look forward to your review and feedback!


> Inconsistent log level practices in source code
> -----------------------------------------------
>
>                 Key: QPID-8291
>                 URL: https://issues.apache.org/jira/browse/QPID-8291
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Broker-J
>    Affects Versions: qpid-java-6.1.7
>            Reporter: Anuhan Torgonshar
>            Priority: Major
>              Labels: easyfix
>
> Hi, 
> I found there are inconsistent log level practices in the Qpid project, and 
> we suspect some of them should be fixed.
> We select 4 problematic practices to report.
> The detail code as well as the modification suggestions are shown below.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to