diff --git a/external-script-iaas/hypervisor-show b/external-script-iaas/hypervisor-show
old mode 100644
new mode 100755
diff --git a/external-script-iaas/hypervisor-show.sh b/external-script-iaas/hypervisor-show.sh
index 4c37f32fd03392675abe6261b29f6e328e083160..188e700ac64e2ec20aff9e4e79c94609ddc823fa 100755
--- a/external-script-iaas/hypervisor-show.sh
+++ b/external-script-iaas/hypervisor-show.sh
@@ -1,2 +1,3 @@
 #!/bin/bash
-python "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/hypervisor-show
+#python "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/hypervisor-show
+python /usr/lib/zabbix/externalscripts/zabbix-external-scripts/hypervisor-show
diff --git a/external-script-iaas/prisma-iaas b/external-script-iaas/prisma-iaas
old mode 100644
new mode 100755
index c7516539964d03bdba73777e04ff3f45a95addab..753eaef4f6fb99956aafc0b72b8c709ad941b65e
--- a/external-script-iaas/prisma-iaas
+++ b/external-script-iaas/prisma-iaas
@@ -14,351 +14,358 @@ from filelock import FileLock
 
 class api_response():
 
-    __status = None
-    __data = None
-    __msg = None
+  __status = None
+  __data = None
+  __msg = None
 
-    def __init__(self, status, data, msg):
-        self.setStatus(status)
-        self.setData(data)
-        self.setMsg(msg)
+  def __init__(self, status, data, msg):
+    self.setStatus(status)
+    self.setData(data)
+    self.setMsg(msg)
 
-    def setStatus(self, status):
-        self.__status = status
+  def setStatus(self, status):
+    self.__status = status
 
-    def getStatus(self):
-        return self.__status
+  def getStatus(self):
+    return self.__status
 
-    def setData(self, data):
-        self.__data = data
+  def setData(self, data):
+    self.__data = data
 
-    def getData(self):
-        return self.__data
+  def getData(self):
+    return self.__data
 
-    def setMsg(self, msg):
-        self.__msg = msg
+  def setMsg(self, msg):
+    self.__msg = msg
 
-    def getMsg(self):
-        return self.__msg
+  def getMsg(self):
+    return self.__msg
 
 class api_request():
-    @staticmethod
-    def httpGet(url, host, port, header):
-        conn = httplib.HTTPConnection(host, port)
-        conn.request("GET", url, headers = header)
-        res = conn.getresponse()
-        response = api_response(res.status, res.read(), res.msg)
-        return response
-    @staticmethod
-    def httpsGet(url, host, port, header):
-        conn = httplib.HTTPSConnection(host, port)
-        conn.request("GET", url, headers = header)
-        res = conn.getresponse()
-        response = api_response(res.status, res.read(), res.msg)
-        return response
-    @staticmethod
-    def httpPost(url, host, port, params, headers):
-        conn = httplib.HTTPConnection(host, port)
-        conn.request("POST", url, params, headers)
-        res = conn.getresponse()
-        response = api_response(res.status, res.read(), res.msg)
-        return response
-    @staticmethod
-    def httpsPost(url, host, port, params, headers):
-        conn = httplib.HTTPSConnection(host, port)
-        conn.request("POST", url, params, headers)
-        res = conn.getresponse()
-        response = api_response(res.status, res.read(), res.msg)
-        return response
+  @staticmethod
+  def httpGet(url, host, port, header):
+    conn = httplib.HTTPConnection(host, port)
+    conn.request("GET", url, headers = header)
+    res = conn.getresponse()
+    response = api_response(res.status, res.read(), res.msg)
+    return response
+    
+  @staticmethod
+  def httpsGet(url, host, port, header):
+    conn = httplib.HTTPSConnection(host, port)
+    conn.request("GET", url, headers = header)
+    res = conn.getresponse()
+    response = api_response(res.status, res.read(), res.msg)
+    return response
+    
+  @staticmethod
+  def httpPost(url, host, port, params, headers):
+    conn = httplib.HTTPConnection(host, port)
+    conn.request("POST", url, params, headers)
+    res = conn.getresponse()
+    response = api_response(res.status, res.read(), res.msg)
+    return response
+    
+  @staticmethod
+  def httpsPost(url, host, port, params, headers):
+    conn = httplib.HTTPSConnection(host, port)
+    conn.request("POST", url, params, headers)
+    res = conn.getresponse()
+    response = api_response(res.status, res.read(), res.msg)
+    return response
 
 def add_service_to_host(struct, host, service, state):
-    find = 0
-    if 'hosts' not in struct.keys():
-        struct['hosts'] = []
-
-    for h in iter(struct['hosts']):
-        if h['host'] == host:
-            h['services'][service] = state
-            find = 1
-        else:
-            continue
+  find = 0
+  if 'hosts' not in struct.keys():
+    struct['hosts'] = []
+
+  for h in iter(struct['hosts']):
+    if h['host'] == host:
+      h['services'][service] = state
+      find = 1
+    else:
+      continue
 
-    if find == 0:
-       struct['hosts'].append({'host' : host, 'services' : {service : state}})
+  if find == 0:
+    struct['hosts'].append({'host' : host, 'services' : {service : state}})
 			
 def add_service(struct, service, state):
-    struct[service] = state
-
+  struct[service] = state
 
 class Prisma:
-    __username = ''
-    __tenant = ''
-    __token = ''
-    __password = ''
-    __protocol = 'http'
-    __server = ''
-    __port = None
-    __tenantID = None
-
-    def __init__(self, protocol, server, port, username, tenant, password):
-        self.setUsername(username)
-        self.setTenant(tenant)
-        self.setPassword(password)
-        self.setProtocol(protocol)
-        self.setServer(server)
-        self.setPort(port)
-        self.getToken()
-
-    def setUsername(self, username):
-        self.__username = username
-
-    def getUsername(self):
-        return self.__username
-
-    def setPassword(self, password):
-        self.__password = password
-
-    def getPassword(self):
-        return self.__password
-
-    def setTenant(self, tenant):
-        self.__tenant = tenant
-
-    def getTenant(self):
-        return self.__tenant
-
-    def setTenantID(self, tenantID):
-        self.__tenantID = tenantID
-
-    def getTenantID(self):
-        return self.__tenantID
-
-    def setProtocol(self, protocol):
-        self.__protocol = protocol
-
-    def getProtocol(self):
-        return self.__protocol
-
-    def setServer(self, server):
-        self.__server = server
-
-    def setPort(self, port):
-        self.__port = port
-
-    def getPort(self):
-        return self.__port
-
-    def getServer(self):
-        return self.__server
-
-    def setToken(self, token):
-        self.__token = token
-
-    def getToken(self):
-        token_file_path = os.path.join(os.path.dirname(__file__), 'token_backup')
-        parser_token = ConfigParser.SafeConfigParser()
-        with FileLock(token_file_path):
-            parser_token.readfp(open(token_file_path))
-        if (not parser_token.get('token', 'expires')) or (int(float(parser_token.get('token', 'expires')) - time.time()) <= 0):
-            auth = '{"auth": {"tenantName": "%s", "passwordCredentials": {"username": "%s", "password": "%s"}}}' % (self.getTenant(), self.getUsername(), self.getPassword())
-            header = {"Content-Type": "application/json", "Accept": "application/json"}
-            if self.getProtocol() == 'http':
-                res = api_request.httpPost('/v2.0/tokens', self.getServer(), self.getPort(), auth, header)
-            else:
-                res = api_request.httpsPost('/v2.0/tokens', self.getServer(), self.getPort(), auth, header)
-            res_json = json.loads(res.getData())
-            timestamp = calendar.timegm(time.strptime(res_json['access']['token']['expires'],"%Y-%m-%dT%H:%M:%SZ"))
-            parser_token.set('token', 'id', res_json['access']['token']['id'])
-            parser_token.set('token', 'expires', str(timestamp))
-            parser_token.set('tenant', 'id', res_json['access']['token']['tenant']['id'])
-
-            with FileLock(token_file_path):
-                with open(token_file_path, 'w') as configfile:
-                    parser_token.write(configfile)
-
-        self.setToken(parser_token.get('token', 'id'))
-        self.setTenantID(parser_token.get('tenant','id'))
-        return self.__token
-
-    def getAuth(self):
-        return {"X-Auth-Token": self.getToken()}
-
-    def nova_service_list(self):
-        service = None
-        res = api_request.httpGet("/v2/%s/os-services" % (self.getTenantID()), self.getServer(), 8774, self.getAuth())
-        if res.getStatus() == 200:
-           service = json.loads(res.getData())
-        return service
-
-    def neutron_agent_list(self):
-        agent = None
-        res = api_request.httpGet('/v2.0/agents.json', self.getServer(), 9696, self.getAuth())
-        if res.getStatus() == 200:
-            agent = json.loads(res.getData())
-        return agent
-
-    def glance_images(self):
-        images = None
-        res = api_request.httpGet('/v1.1/images', self.getServer(), '9292', self.getAuth())
-        if res.getStatus() == 200:
-            images = json.loads(res.getData())
-        return images
-
-    def cinder_blocks_list(self):
-        blocks = None
-        res = api_request.httpGet('/v2/%s/os-services' % (self.getTenantID()), self.getServer(), '8776', self.getAuth())
-        if res.getStatus() == 200:
-            blocks = json.loads(res.getData())
-        return blocks
-
-    def swift_blocks_list(self):
-        blocks = None
-        res = api_request.httpsGet('/v1/AUTH_%s?format=json' % (self.getTenantID()), self.getServer(), '8080', self.getAuth())
-        if res.getStatus() == 200:
-            blocks = json.loads(res.getData())
-        return blocks
+  __username = ''
+  __tenant = ''
+  __token = ''
+  __password = ''
+  __protocol = 'http'
+  __server = ''
+  __port = None
+  __tenantID = None
+
+  def __init__(self, protocol, server, port, username, tenant, password):
+    self.setUsername(username)
+    self.setTenant(tenant)
+    self.setPassword(password)
+    self.setProtocol(protocol)
+    self.setServer(server)
+    self.setPort(port)
+    self.getToken()
+
+  def setUsername(self, username):
+    self.__username = username
+
+  def getUsername(self):
+    return self.__username
+
+  def setPassword(self, password):
+    self.__password = password
+
+  def getPassword(self):
+    return self.__password
+
+  def setTenant(self, tenant):
+    self.__tenant = tenant
+
+  def getTenant(self):
+    return self.__tenant
+
+  def setTenantID(self, tenantID):
+    self.__tenantID = tenantID
+
+  def getTenantID(self):
+    return self.__tenantID
+
+  def setProtocol(self, protocol):
+    self.__protocol = protocol
+
+  def getProtocol(self):
+    return self.__protocol
+
+  def setServer(self, server):
+    self.__server = server
+
+  def setPort(self, port):
+    self.__port = port
+
+  def getPort(self):
+    return self.__port
+
+  def getServer(self):
+    return self.__server
+
+  def setToken(self, token):
+    self.__token = token
+
+  def getToken(self):
+    token_file_path = os.path.join(os.path.dirname(__file__), 'token_backup')
+    parser_token = ConfigParser.SafeConfigParser()
+    with FileLock(token_file_path):
+      parser_token.readfp(open(token_file_path))
+      if (not parser_token.get('token', 'expires')) or (int(float(parser_token.get('token', 'expires')) - time.time()) <= 0):
+        auth = '{"auth": {"tenantName": "%s", "passwordCredentials": {"username": "%s", "password": "%s"}}}' % (self.getTenant(), self.getUsername(), self.getPassword())
+        header = {"Content-Type": "application/json", "Accept": "application/json"}
+        if self.getProtocol() == 'http':
+          res = api_request.httpPost('/v2.0/tokens', self.getServer(), self.getPort(), auth, header)
+        else:
+          res = api_request.httpsPost('/v2.0/tokens', self.getServer(), self.getPort(), auth, header)
+          res_json = json.loads(res.getData())
+          timestamp = calendar.timegm(time.strptime(res_json['access']['token']['expires'],"%Y-%m-%dT%H:%M:%SZ"))
+          parser_token.set('token', 'id', res_json['access']['token']['id'])
+          parser_token.set('token', 'expires', str(timestamp))
+          parser_token.set('tenant', 'id', res_json['access']['token']['tenant']['id'])
+
+          with FileLock(token_file_path):
+            with open(token_file_path, 'w') as configfile:
+              parser_token.write(configfile)
+
+      self.setToken(parser_token.get('token', 'id'))
+      self.setTenantID(parser_token.get('tenant','id'))
+      return self.__token
+
+  def getAuth(self):
+    return {"X-Auth-Token": self.getToken()}
+
+  def nova_service_list(self):
+    service = None
+    res = api_request.httpGet("/v2/%s/os-services" % (self.getTenantID()), self.getServer(), 8774, self.getAuth())
+    if res.getStatus() == 200:
+      service = json.loads(res.getData())
+    return service
+
+  def neutron_agent_list(self):
+    agent = None
+    res = api_request.httpGet('/v2.0/agents.json', self.getServer(), 9696, self.getAuth())
+    if res.getStatus() == 200:
+      agent = json.loads(res.getData())
+    return agent
+
+  def glance_images(self):
+    images = None
+    res = api_request.httpGet('/v1.1/images', self.getServer(), '9292', self.getAuth())
+    if res.getStatus() == 200:
+      images = json.loads(res.getData())
+    return images
+
+  def cinder_blocks_list(self):
+    blocks = None
+    res = api_request.httpGet('/v2/%s/os-services' % (self.getTenantID()), self.getServer(), '8776', self.getAuth())
+    if res.getStatus() == 200:
+      blocks = json.loads(res.getData())
+    return blocks
+
+  def swift_blocks_list(self):
+    blocks = None
+    res = api_request.httpsGet('/v1/AUTH_%s?format=json' % (self.getTenantID()), self.getServer(), '8080', self.getAuth())
+    if res.getStatus() == 200:
+      blocks = json.loads(res.getData())
+    return blocks
 
 def encode():
-    struct = {}
-
-    config_file_path = os.path.join(os.path.dirname(__file__), 'credentials.conf')
-    parser_config = ConfigParser.SafeConfigParser()
-    parser_config.readfp(open(config_file_path))
-
-    prisma = Prisma(
-        parser_config.get('keystone', 'protocol'),
-        parser_config.get('keystone', 'server'),
-        parser_config.get('keystone', 'port'),
-        parser_config.get('keystone', 'username'),
-        parser_config.get('keystone', 'tenant'),
-        parser_config.get('keystone', 'password')
-    )
-
-#keystone
-    keystone = prisma.getTenantID()
-#    print keystone
-    if keystone != None:
-        add_service(struct, 'keystone', 1)
-    else:
-        add_service(struct, 'keystone', 0)
-
-#nova
-    nova = prisma.nova_service_list()
-    compute = 0
-    if nova != None:
-       add_service(struct, 'nova', 1)
-       for i in iter(nova['services']):
-           if i['status'] == 'enabled':
-               add_service_to_host(struct, i['host'], i['binary'],0 if i['state'] == 'down' else 1)
-    else:
-       add_service(struct, 'nova', 0)
-
-#neutron
-    neutron = prisma.neutron_agent_list()
-    if neutron != None:
-        add_service(struct, 'neutron', 1)
-        for i in iter(neutron['agents']):
-            add_service_to_host(struct, i['host'], i['binary'],0 if i['alive'] == 'false' else 1)
-    else:
-        add_service(struct, 'neutron', 0)
-
-#glance
-#    glance = prisma.glance_images()
-#    if glance != None:
-#        add_service(struct, 'glance', 1)
-#    else:
-#        add_service(struct, 'glance', 0)
-
-#cinder
-    cinder = prisma.cinder_blocks_list()
-    if cinder != None:
-        add_service(struct, 'cinder', 1)
-    else:
-        add_service(struct, 'cinder', 0)
-
-#swift
-#    swift = prisma.swift_blocks_list()
-#    if swift != None:
-#        add_service(struct, 'swift', 1)
-#    else:
-#        add_service(struct, 'swift', 0)
-#    print struct
-    return struct
+  struct = {}
+
+  config_file_path = os.path.join(os.path.dirname(__file__), 'credentials.conf')
+  parser_config = ConfigParser.SafeConfigParser()
+  parser_config.readfp(open(config_file_path))
+
+  prisma = Prisma(
+      parser_config.get('keystone', 'protocol'),
+      parser_config.get('keystone', 'server'),
+      parser_config.get('keystone', 'port'),
+      parser_config.get('keystone', 'username'),
+      parser_config.get('keystone', 'tenant'),
+      parser_config.get('keystone', 'password')
+  )
+
+  #keystone
+  keystone = prisma.getTenantID()
+  #print keystone
+  if keystone != None:
+    add_service(struct, 'keystone', 1)
+  else:
+    add_service(struct, 'keystone', 0)
+
+  #nova
+  nova = prisma.nova_service_list()
+  compute = 0
+  if nova != None:
+    add_service(struct, 'nova', 1)
+    for i in iter(nova['services']):
+      if i['status'] == 'enabled':
+        add_service_to_host(struct, i['host'], i['binary'],0 if i['state'] == 'down' else 1)
+  else:
+    add_service(struct, 'nova', 0)
+
+  #neutron
+  neutron = prisma.neutron_agent_list()
+  if neutron != None:
+    add_service(struct, 'neutron', 1)
+    for i in iter(neutron['agents']):
+      add_service_to_host(struct, i['host'], i['binary'],0 if i['alive'] == 'false' else 1)
+  else:
+    add_service(struct, 'neutron', 0)
+
+  #glance
+  #    glance = prisma.glance_images()
+  #    if glance != None:
+  #        add_service(struct, 'glance', 1)
+  #    else:
+  #        add_service(struct, 'glance', 0)
+
+  #cinder
+  cinder = prisma.cinder_blocks_list()
+  if cinder != None:
+    add_service(struct, 'cinder', 1)
+  else:
+    add_service(struct, 'cinder', 0)
+
+  #swift
+  #    swift = prisma.swift_blocks_list()
+  #    if swift != None:
+  #        add_service(struct, 'swift', 1)
+  #    else:
+  #        add_service(struct, 'swift', 0)
+  #    print struct
+  return struct
 
 def check( test_json):
+  try:
+    keystone = test_json["keystone"]
+  except:
+    print "keystone"
+    return
+
+  #nova
+  controller_dic = {'nova-cert': 0, 'nova-consoleauth': 0, 'nova-scheduler': 0, 'nova-conductor': 0}
+  nova = test_json["nova"]
+  for host in iter(test_json["hosts"]):
+    for i in iter(host["services"]):
+      try:
+        controller_dic[i]|=host["services"][i]
+      except:
+        continue
+  for i in iter(controller_dic):
+    nova &= controller_dic[i]
+
+  #neutron
+  network_dic = {'neutron-metadata-agent': 0, 'neutron-dhcp-agent': 0, 'neutron-linuxbridge-agent': 0}
+  neutron = test_json["neutron"]
+  for host in iter(test_json["hosts"]):
+    for i in iter(host["services"]):
+      try:
+        network_dic[i]|=host["services"][i]
+      except:
+        continue
+  for i in iter(network_dic):
+    neutron &= network_dic[i]
+   
+  #cinder
+  cinder = test_json["cinder"]
+
+  #glance
+  #    glance = test_json["glance"]
+    
+  #compute
+  computerun = 0
+  computecount = 0
+  compute = 1
+  for host in iter(test_json["hosts"]):
+    test = 0
     try:
-        keystone = test_json["keystone"]
+      if 'nova-compute' in host["services"].keys():
+        computecount += 1
+      if host["services"]["nova-compute"] & host["services"]["neutron-linuxbridge-agent"]:
+        computerun += 1
+      if host["services"]["nova-compute"] == 1 and host["services"]["neutron-linuxbridge-agent"] == 0:
+        compute = 0
     except:
-        print "keystone"
-        return
-
-#nova
-    controller_dic = {'nova-cert': 0, 'nova-consoleauth': 0, 'nova-scheduler': 0, 'nova-conductor': 0}
-    nova = test_json["nova"]
-    for host in iter(test_json["hosts"]):
-        for i in iter(host["services"]):
-            try:
-                controller_dic[i]|=host["services"][i]
-            except:
-                continue
-    for i in iter(controller_dic):
-        nova &= controller_dic[i]
-
-#neutron
-    network_dic = {'neutron-metadata-agent': 0, 'neutron-dhcp-agent': 0, 'neutron-linuxbridge-agent': 0}
-    neutron = test_json["neutron"]
-    for host in iter(test_json["hosts"]):
-        for i in iter(host["services"]):
-            try:
-                network_dic[i]|=host["services"][i]
-            except:
-                continue
-    for i in iter(network_dic):
-        neutron &= network_dic[i]
-#cinder
-    cinder = test_json["cinder"]
-#glance
-#    glance = test_json["glance"]
-#compute
-    computerun = 0
-    computecount = 0
-    compute = 1
-    for host in iter(test_json["hosts"]):
-        test = 0
-        try:
-            if 'nova-compute' in host["services"].keys():
-                computecount += 1
-            if host["services"]["nova-compute"] & host["services"]["neutron-linuxbridge-agent"]:
-                computerun += 1
-            if host["services"]["nova-compute"] == 1 and host["services"]["neutron-linuxbridge-agent"] == 0:
-                compute = 0
-        except:
-            continue
-
-    status = {}
-
-    if cinder == 1:
-        add_service(status, 'storage', 'OK')
-	else 
-		add_service(status, 'storage', 'KO')
-    if neutron == 1:
-        add_service(status, 'network', 'OK')
-	else add_service(status, 'network', 'KO')
-    if compute == 1:
-        add_service(status, 'available_nodes', computerun)
-        add_service(status, 'total_nodes', computecount)
-    else:
-        add_service(status, 'available_nodes', 0)
-        add_service(status, 'total_nodes', computecount)
-
-    return json.dumps(status, sort_keys=False, indent=4)
-#    return status
-#    return keystone & compute & nova & neutron & cinder & glance
+      continue
+
+  status = {}
+
+  if cinder == 1:
+    add_service(status, 'storage', 'OK')
+  else:
+    add_service(status, 'storage', 'KO')
+  if neutron == 1:
+    add_service(status, 'network', 'OK')
+  else:
+     add_service(status, 'network', 'KO')
+  if compute == 1:
+    add_service(status, 'available_nodes', computerun)
+    add_service(status, 'total_nodes', computecount)
+  else:
+    add_service(status, 'available_nodes', 0)
+    add_service(status, 'total_nodes', computecount)
+
+  return json.dumps(status, sort_keys=False, indent=4)
+
+  #    return status
+  #    return keystone & compute & nova & neutron & cinder & glance
 
 def main():
-    struct = encode()
-    status = check(struct)
-    print status
+  struct = encode()
+  status = check(struct)
+  print status
 
 if __name__ == "__main__":
-    main()
+  main()
diff --git a/external-script-iaas/prisma-iaas.sh b/external-script-iaas/prisma-iaas.sh
index c04697aa56affa314973b5ce244779949a4a19ca..9c0704aa6596ffc0d42447f2a340880acbc94dfb 100755
--- a/external-script-iaas/prisma-iaas.sh
+++ b/external-script-iaas/prisma-iaas.sh
@@ -1,2 +1,3 @@
 #!/bin/bash
-python "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/prisma-iaas
+#python "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/prisma-iaas
+python /usr/lib/zabbix/externalscripts/zabbix-external-scripts/prisma-iaas
diff --git a/external-script-iaas/token_backup_template b/external-script-iaas/token_backup_template
index 19a7c10dcb36cdbc3b560250b33f78d9196022db..bb01596012432002627eb8a1d3b61f923f91693c 100644
--- a/external-script-iaas/token_backup_template
+++ b/external-script-iaas/token_backup_template
@@ -1,3 +1,8 @@
 [token]
 id = 
 expires = 
+
+[tenant]
+id = 
+expires = 
+
diff --git a/external-script-metrics/ceilometer b/external-script-metrics/ceilometer
old mode 100644
new mode 100755
diff --git a/external-script-metrics/ceilometer-for-tests.sh b/external-script-metrics/ceilometer-for-tests.sh
index e79fe682fd512ed3dc99e5a4d36201ec086dc03d..caf0446cc275d76b5a9b6be913e337469cab4400 100755
--- a/external-script-metrics/ceilometer-for-tests.sh
+++ b/external-script-metrics/ceilometer-for-tests.sh
@@ -1,7 +1,7 @@
 #!/bin/bash
 for i in {1..500}
 do
-    python "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/ceilometer $1 $2 
+    python /usr/lib/zabbix/externalscripts/zabbix-external-scripts/ceilometer $1 $2 
     #sleep `perl -e 'printf("%.2f\n", rand())'`
 done
 wait
diff --git a/external-script-metrics/ceilometer-mock b/external-script-metrics/ceilometer-mock
old mode 100644
new mode 100755
diff --git a/external-script-metrics/ceilometer-mock.sh b/external-script-metrics/ceilometer-mock.sh
index 0bd0c2fe1ddd50ec0986103b7eae8d5b661a66fa..443da41da9473ed6fae0378c79ac111752dbb429 100755
--- a/external-script-metrics/ceilometer-mock.sh
+++ b/external-script-metrics/ceilometer-mock.sh
@@ -1,2 +1,2 @@
 #!/bin/bash
-python "$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/ceilometer-mock $1 $2  
+python /usr/lib/zabbix/externalscripts/zabbix-external-scripts/ceilometer-mock $1 $2