diff --git a/common/rfb/CSecurityTLS.cxx b/common/rfb/CSecurityTLS.cxx
index c774c3d..6028792 100644
--- a/common/rfb/CSecurityTLS.cxx
+++ b/common/rfb/CSecurityTLS.cxx
@@ -62,23 +62,18 @@
 #define WITHOUT_X509_TIMES
 #endif
 
-#define TLS_DEBUG
-
 using namespace rfb;
 
 StringParameter CSecurityTLS::x509ca("x509ca", "X509 CA certificate", "", ConfViewer);
 StringParameter CSecurityTLS::x509crl("x509crl", "X509 CRL file", "", ConfViewer);
 
 static LogWriter vlog("TLS");
-
-#ifdef TLS_DEBUG
-static LogWriter vlog_raw("Raw TLS");
+static LogWriter vlog_raw("RawTLS");
 
 static void debug_log(int level, const char* str)
 {
   vlog_raw.debug(str);
 }
-#endif
 
 void CSecurityTLS::initGlobal()
 {
@@ -87,10 +82,11 @@
   if (!globalInitDone) {
     gnutls_global_init();
 
-#ifdef TLS_DEBUG
-    gnutls_global_set_log_level(10);
-    gnutls_global_set_log_function(debug_log);
-#endif
+    /* 100 means debug log */
+    if (vlog_raw.getLevel() >= 100) {
+      gnutls_global_set_log_level(10);
+      gnutls_global_set_log_function(debug_log);
+    }
 
     globalInitDone = true;
   }
diff --git a/common/rfb/LogWriter.h b/common/rfb/LogWriter.h
index 124c58e..7f8b68d 100644
--- a/common/rfb/LogWriter.h
+++ b/common/rfb/LogWriter.h
@@ -51,6 +51,7 @@
 
     void setLog(Logger *logger);
     void setLevel(int level);
+    int getLevel(void) { return m_level; }
 
     inline void write(int level, const char* format, ...) {
       if (m_log && (level <= m_level)) {
diff --git a/common/rfb/SSecurityTLS.cxx b/common/rfb/SSecurityTLS.cxx
index e6202a8..2ea84e0 100644
--- a/common/rfb/SSecurityTLS.cxx
+++ b/common/rfb/SSecurityTLS.cxx
@@ -35,7 +35,6 @@
 #include <rdr/TLSOutStream.h>
 
 #define DH_BITS 1024 /* XXX This should be configurable! */
-#define TLS_DEBUG
 
 using namespace rfb;
 
@@ -46,13 +45,12 @@
 ("x509key", "specifies path to the key of the x509 certificate in PEM format", "", ConfServer);
 
 static LogWriter vlog("TLS");
+static LogWriter vlog_raw("RawTLS");
 
-#ifdef TLS_DEBUG
 static void debug_log(int level, const char* str)
 {
   vlog.debug(str);
 }
-#endif
 
 void SSecurityTLS::initGlobal()
 {
@@ -62,10 +60,11 @@
     if (gnutls_global_init() != GNUTLS_E_SUCCESS)
       throw AuthFailureException("gnutls_global_init failed");
 
-#ifdef TLS_DEBUG
-    gnutls_global_set_log_level(10);
-    gnutls_global_set_log_function(debug_log);
-#endif
+    /* 100 means debug log */
+    if (vlog_raw.getLevel() >= 100) {
+      gnutls_global_set_log_level(10);
+      gnutls_global_set_log_function(debug_log);
+    }
 
     globalInitDone = true;
   }
