self._msg = "{0}: {1}".format(self.__class__.__name__, msg)
self._details = details
if enable_logging:
- logger.error(self._msg)
logger.debug(self._details)
def __repr__(self):
:param url_file: URL file. The argument contains only the name of file
without extension, not the full path.
:type url_file: str
- :return: Requested path.
+ :returns: Requested path.
:rtype: str
"""
:param path: Path to data we want to find.
:type data: dict
:type path: tuple
- :return: Data represented by path.
+ :returns: Data represented by path.
:rtype: str, dict, or list
:raises HoneycombError: If the data has not been found.
"""
:param path: Path to data we want to remove.
:type data: dict
:type path: tuple
- :return: Original data without removed part.
+ :returns: Original data without removed part.
:rtype: dict
"""
:type data: dict
:type path: tuple
:type new_value: str, dict or list
- :return: Original data with the new value.
+ :returns: Original data with the new value.
:rtype: dict
"""
return origin_data
@staticmethod
- def get_honeycomb_data(node, url_file):
+ def get_honeycomb_data(node, url_file, path=""):
"""Retrieve data from Honeycomb according to given URL.
:param node: Honeycomb node.
:param url_file: URL file. The argument contains only the name of file
without extension, not the full path.
+ :param path: Path which is added to the base path to identify the data.
:type node: dict
:type url_file: str
- :return: Status code and content of response.
+ :type path: str
+ :returns: Status code and content of response.
:rtype tuple
"""
- path = HoneycombUtil.read_path_from_url_file(url_file)
+ base_path = HoneycombUtil.read_path_from_url_file(url_file)
+ path = base_path + path
status_code, resp = HTTPRequest.get(node, path)
return status_code, loads(resp)
@staticmethod
- def put_honeycomb_data(node, url_file, data,
+ def put_honeycomb_data(node, url_file, data, path="",
data_representation=DataRepresentation.JSON):
"""Send configuration data using PUT request and return the status code
and response content.
:param url_file: URL file. The argument contains only the name of file
without extension, not the full path.
:param data: Configuration data to be sent to Honeycomb.
+ :param path: Path which is added to the base path to identify the data.
:param data_representation: How the data is represented.
:type node: dict
:type url_file: str
:type data: dict, str
+ :type path: str
:type data_representation: DataRepresentation
- :return: Status code and content of response.
+ :returns: Status code and content of response.
:rtype: tuple
:raises HoneycombError: If the given data representation is not defined
in HEADERS.
if data_representation == DataRepresentation.JSON:
data = dumps(data)
- path = HoneycombUtil.read_path_from_url_file(url_file)
- return HTTPRequest.put(node=node, path=path, headers=header,
- payload=data)
+ logger.trace(data)
+
+ base_path = HoneycombUtil.read_path_from_url_file(url_file)
+ path = base_path + path
+ logger.trace(path)
+ return HTTPRequest.put(
+ node=node, path=path, headers=header, payload=data)
@staticmethod
def post_honeycomb_data(node, url_file, data=None,
:type data: dict, str
:type data_representation: DataRepresentation
:type timeout: int
- :return: Status code and content of response.
+ :returns: Status code and content of response.
:rtype: tuple
:raises HoneycombError: If the given data representation is not defined
in HEADERS.
data = dumps(data)
path = HoneycombUtil.read_path_from_url_file(url_file)
- return HTTPRequest.post(node=node, path=path, headers=header,
- payload=data, timeout=timeout)
+ return HTTPRequest.post(
+ node=node, path=path, headers=header, payload=data, timeout=timeout)
@staticmethod
- def delete_honeycomb_data(node, url_file):
+ def delete_honeycomb_data(node, url_file, path=""):
"""Delete data from Honeycomb according to given URL.
:param node: Honeycomb node.
:param url_file: URL file. The argument contains only the name of file
without extension, not the full path.
+ :param path: Path which is added to the base path to identify the data.
:type node: dict
:type url_file: str
- :return: Status code and content of response.
+ :type path: str
+ :returns: Status code and content of response.
:rtype tuple
"""
- path = HoneycombUtil.read_path_from_url_file(url_file)
+ base_path = HoneycombUtil.read_path_from_url_file(url_file)
+ path = base_path + path
return HTTPRequest.delete(node, path)