lot of fixes
diff --git a/fuel_rest_api.py b/fuel_rest_api.py
index ee5cd9c..23f7289 100644
--- a/fuel_rest_api.py
+++ b/fuel_rest_api.py
@@ -1,6 +1,7 @@
 import re
 import json
 import time
+import logging
 import urllib2
 
 from functools import partial, wraps
@@ -12,12 +13,7 @@
 from keystoneclient import exceptions
 
 
-logger = None
-
-
-def set_logger(log):
-    global logger
-    logger = log
+logger = logging.getLogger("io-perf-tool.fuel_api")
 
 
 class Urllib2HTTP(object):
@@ -27,7 +23,7 @@
 
     allowed_methods = ('get', 'put', 'post', 'delete', 'patch', 'head')
 
-    def __init__(self, root_url, headers=None, echo=False):
+    def __init__(self, root_url, headers=None):
         """
         """
         if root_url.endswith('/'):
@@ -36,7 +32,6 @@
             self.root_url = root_url
 
         self.headers = headers if headers is not None else {}
-        self.echo = echo
 
     def host(self):
         return self.root_url.split('/')[2]
@@ -53,8 +48,7 @@
         else:
             data_json = json.dumps(params)
 
-        if self.echo and logger is not None:
-            logger.debug("HTTP: {} {}".format(method.upper(), url))
+        logger.debug("HTTP: {} {}".format(method.upper(), url))
 
         request = urllib2.Request(url,
                                   data=data_json,
@@ -65,8 +59,7 @@
         request.get_method = lambda: method.upper()
         response = urllib2.urlopen(request)
 
-        if self.echo and logger is not None:
-            logger.debug("HTTP Responce: {}".format(response.code))
+        logger.debug("HTTP Responce: {}".format(response.code))
 
         if response.code < 200 or response.code > 209:
             raise IndexError(url)
@@ -85,8 +78,8 @@
 
 
 class KeystoneAuth(Urllib2HTTP):
-    def __init__(self, root_url, creds, headers=None, echo=False):
-        super(KeystoneAuth, self).__init__(root_url, headers, echo)
+    def __init__(self, root_url, creds, headers=None):
+        super(KeystoneAuth, self).__init__(root_url, headers)
         admin_node_ip = urlparse.urlparse(root_url).hostname
         self.keystone_url = "http://{0}:5000/v2.0".format(admin_node_ip)
         self.keystone = keystoneclient(
@@ -99,10 +92,9 @@
             self.keystone.authenticate()
             self.headers['X-Auth-Token'] = self.keystone.auth_token
         except exceptions.AuthorizationFailure:
-            if logger is not None:
-                logger.warning(
-                    'Cant establish connection to keystone with url %s',
-                    self.keystone_url)
+            logger.warning(
+                'Cant establish connection to keystone with url %s',
+                self.keystone_url)
 
     def do(self, method, path, params=None):
         """Do request. If gets 401 refresh token"""
@@ -110,9 +102,8 @@
             return super(KeystoneAuth, self).do(method, path, params)
         except urllib2.HTTPError as e:
             if e.code == 401:
-                if logger is not None:
-                    logger.warning(
-                        'Authorization failure: {0}'.format(e.read()))
+                logger.warning(
+                    'Authorization failure: {0}'.format(e.read()))
                 self.refresh_token()
                 return super(KeystoneAuth, self).do(method, path, params)
             else:
@@ -377,8 +368,7 @@
         data['id'] = node.id
         data['pending_addition'] = True
 
-        if logger is not None:
-            logger.debug("Adding node %s to cluster..." % node.id)
+        logger.debug("Adding node %s to cluster..." % node.id)
 
         self.add_node_call([data])
         self.nodes.append(node)
@@ -461,9 +451,6 @@
     """Get cluster id by name"""
     for cluster in get_all_clusters(conn):
         if cluster.name == name:
-            if logger is not None:
-                logger.debug('cluster name is %s' % name)
-                logger.debug('cluster id is %s' % cluster.id)
             return cluster.id
 
     raise ValueError("Cluster {0} not found".format(name))