def __init__(self, token): """ Initialize API object. :param token: (string) OpenStack Auth Token """ self.ceilometer_conn = CeilometerConnection(token)
class CeilometerApi(object): """ Ceilometer Connection Object """ ceilometer_conn = None def __init__(self, token): """ Initialize API object. :param token: (string) OpenStack Auth Token """ self.ceilometer_conn = CeilometerConnection(token) def get_alarms(self, **kwargs): ''' Get alarm list from Ceilometer :param kwargs: :return: ''' url_para_obj = kwargs_to_url_parameter_object(**kwargs) return self.ceilometer_conn.get_data('alarms', method='GET', url_parameters=url_para_obj) def get_meters(self, **kwargs): ''' Get meter list from ceilometer api :param kwargs: (Dict) filter criteria :return: ''' url_para_obj = kwargs_to_url_parameter_object(**kwargs) return self.ceilometer_conn.get_data('meters', method='GET', url_parameters=url_para_obj) def get_resources(self, **kwargs): ''' Get resource list from Ceilometer API :param kwargs: (Dict) filters. :return: ''' url_para_obj = kwargs_to_url_parameter_object(**kwargs) return self.ceilometer_conn.get_data('resources', method='GET', url_parameters=url_para_obj) def get_resource_detail(self, **kwargs): ''' Get detail of a specified resource :param kwargs: (Dict) search filters. :return: ''' resource_id = kwargs.pop('resource_id', '') url_para_obj = kwargs_to_url_parameter_object(**kwargs) return self.ceilometer_conn.get_data('resources/' + resource_id, method='GET', url_parameters=url_para_obj) def get_samples(self, meter_name, **kwargs): ''' Get samples of a selected meter :param meter_name: (string) :param kwargs: (Dict) Query criteria, e.g. ['meter_name': <meter_name>, 'resource_id': <resource_id>] :return: ''' kwargs['limit'] = 500 url_para_obj = kwargs_to_url_parameter_object(**kwargs) return self.ceilometer_conn.get_data('meters/' + meter_name, method='GET', url_parameters=url_para_obj) def delete_alarm(self, alarm_id): ''' Delete alarm through ceilometer api alarm-delete :param alarm_id: (string) alarm id :return: (Object) success or error ''' try: self.get_alarm_detail(alarm_id) except err.ResourceNotFound, e: raise err.AlarmDoesNotExist(alarm_id) return self.ceilometer_conn.get_data('alarms/' + alarm_id, method='DELETE')
class CeilometerApi(object): """ Ceilometer Connection Object """ ceilometer_conn = None def __init__(self, token): """ Initialize API object. :param token: (string) OpenStack Auth Token """ self.ceilometer_conn = CeilometerConnection(token) def get_alarms(self, **kwargs): ''' Get alarm list from Ceilometer :param kwargs: :return: ''' url_para_obj = kwargs_to_url_parameter_object(**kwargs) return self.ceilometer_conn.get_data('alarms', method='GET', url_parameters=url_para_obj) def get_meters(self, **kwargs): ''' Get meter list from ceilometer api :param kwargs: (Dict) filter criteria :return: ''' url_para_obj = kwargs_to_url_parameter_object(**kwargs) return self.ceilometer_conn.get_data('meters', method='GET', url_parameters=url_para_obj) def get_resources(self, **kwargs): ''' Get resource list from Ceilometer API :param kwargs: (Dict) filters. :return: ''' url_para_obj = kwargs_to_url_parameter_object(**kwargs) return self.ceilometer_conn.get_data('resources', method='GET', url_parameters=url_para_obj) def get_resource_detail(self, **kwargs): ''' Get detail of a specified resource :param kwargs: (Dict) search filters. :return: ''' resource_id = kwargs.pop('resource_id', '') url_para_obj = kwargs_to_url_parameter_object(**kwargs) return self.ceilometer_conn.get_data('resources/' + resource_id, method='GET', url_parameters=url_para_obj) def get_samples(self, meter_name, **kwargs): ''' Get samples of a selected meter :param meter_name: (string) :param kwargs: (Dict) Query criteria, e.g. ['meter_name': <meter_name>, 'resource_id': <resource_id>] :return: ''' kwargs['limit'] = 500 url_para_obj = kwargs_to_url_parameter_object(**kwargs) return self.ceilometer_conn.get_data('meters/' + meter_name, method='GET', url_parameters=url_para_obj) def delete_alarm(self, alarm_id): ''' Delete alarm through ceilometer api alarm-delete :param alarm_id: (string) alarm id :return: (Object) success or error ''' try: self.get_alarm_detail(alarm_id) except err.ResourceNotFound, e: raise err.AlarmDoesNotExist(alarm_id) return self.ceilometer_conn.get_data('alarms/' + alarm_id, method='DELETE')
def __init__(self, token): """ Initialize API object. :param token: (string) OpenStack Auth Token """ self.ceilometer_conn = CeilometerConnection(token)