diff --git a/reclass/cli.py b/reclass/cli.py
index f09067d..5666e16 100644
--- a/reclass/cli.py
+++ b/reclass/cli.py
@@ -15,7 +15,6 @@
 from reclass.errors import ReclassException
 from reclass.defaults import *
 from reclass.constants import MODE_NODEINFO
-from reclass.logs import logger
 from reclass.version import *
 
 def main():
@@ -27,7 +26,6 @@
         options = get_options(RECLASS_NAME, VERSION, DESCRIPTION,
                               defaults=defaults)
 
-        logger.debug('defaults: %s' % options)
         storage = get_storage(options.storage_type, options.nodes_uri,
                               options.classes_uri, default_environment='base')
         class_mappings = defaults.get('class_mappings')
diff --git a/reclass/config.py b/reclass/config.py
index 572cfed..17d0dc6 100644
--- a/reclass/config.py
+++ b/reclass/config.py
@@ -42,10 +42,6 @@
                    action="store_true",
                    default=defaults.get('pretty_print', OPT_PRETTY_PRINT),
                    help='try to make the output prettier [%default]')
-    ret.add_option('-d', '--debug', dest='debug',
-                   action="store_true",
-                   default=False,
-                   help='enable logging to console for debug [%default]')
     return ret
 
 
diff --git a/reclass/logs.py b/reclass/logs.py
deleted file mode 100644
index 41da08e..0000000
--- a/reclass/logs.py
+++ /dev/null
@@ -1,50 +0,0 @@
-#
-# -*- coding: utf-8 -*-
-#
-# This file is part of reclass (http://github.com/madduck/reclass)
-#
-# Copyright © 2007–14 martin f. krafft <madduck@madduck.net>
-# Released under the terms of the Artistic Licence 2.0
-#
-
-import logging.config
-
-from reclass.config import get_options
-from reclass.defaults import RECLASS_NAME
-from reclass.version import VERSION, DESCRIPTION
-
-
-RECLASS_LOGGER = 'reclass'
-
-options = get_options(RECLASS_NAME, VERSION, DESCRIPTION)
-LOG_LEVEL = 'ERROR'
-if options.debug:
-    LOG_LEVEL = 'DEBUG'
-
-
-LOGGING_CONFIG = {
-    'version': 1,
-    'formatters': {
-        'verbose': {
-            'format': '%(asctime)s - %(name)s - %(levelname)s - %(message)s'
-        }
-    },
-    'handlers': {
-        'stderr': {
-            'class': 'logging.StreamHandler',
-            'formatter': 'verbose',
-            'level': 'DEBUG',
-        }
-    },
-    'loggers': {
-        RECLASS_LOGGER: {
-            'handlers': ['stderr'],
-            'level': LOG_LEVEL,
-        }
-    }
-}
-
-
-logging.config.dictConfig(LOGGING_CONFIG)
-logger = logging.getLogger(RECLASS_LOGGER)
-logger.debug('Enabling debug log messages')
