def __init__(self, *args, **kwargs): """Initialize a new client for the Ceilometer v2 API.""" if not kwargs.get('auth_plugin') and not kwargs.get('session'): kwargs['auth_plugin'] = ceiloclient.get_auth_plugin( *args, **kwargs) self.auth_plugin = kwargs.get('auth_plugin') self.http_client = ceiloclient._construct_http_client(**kwargs) self.alarm_client = self._get_alarm_client(**kwargs) aodh_enabled = self.alarm_client is not None if not aodh_enabled: self.alarm_client = self.http_client self.meters = meters.MeterManager(self.http_client) self.samples = samples.OldSampleManager(self.http_client) self.new_samples = samples.SampleManager(self.http_client) self.statistics = statistics.StatisticsManager(self.http_client) self.resources = resources.ResourceManager(self.http_client) self.alarms = alarms.AlarmManager(self.alarm_client, aodh_enabled) self.events = events.EventManager(self.http_client) self.event_types = event_types.EventTypeManager(self.http_client) self.traits = traits.TraitManager(self.http_client) self.trait_descriptions = trait_descriptions.\ TraitDescriptionManager(self.http_client) self.query_samples = query.QuerySamplesManager(self.http_client) self.query_alarms = query.QueryAlarmsManager(self.alarm_client) self.query_alarm_history = query.QueryAlarmHistoryManager( self.alarm_client) self.capabilities = capabilities.CapabilitiesManager(self.http_client)
def __init__(self, *args, **kwargs): """Initialize a new client for the Ceilometer v2 API.""" self.auth_plugin = kwargs.get('auth_plugin') \ or ceiloclient.get_auth_plugin(*args, **kwargs) self.client = client.HTTPClient( auth_plugin=self.auth_plugin, region_name=kwargs.get('region_name'), endpoint_type=kwargs.get('endpoint_type'), original_ip=kwargs.get('original_ip'), verify=kwargs.get('verify'), cert=kwargs.get('cert'), timeout=kwargs.get('timeout'), timings=kwargs.get('timings'), keyring_saver=kwargs.get('keyring_saver'), debug=kwargs.get('debug'), user_agent=kwargs.get('user_agent'), http=kwargs.get('http')) self.http_client = client.BaseClient(self.client) self.meters = meters.MeterManager(self.http_client) self.samples = samples.SampleManager(self.http_client) self.statistics = statistics.StatisticsManager(self.http_client) self.resources = resources.ResourceManager(self.http_client) self.alarms = alarms.AlarmManager(self.http_client) self.events = events.EventManager(self.http_client) self.event_types = event_types.EventTypeManager(self.http_client) self.traits = traits.TraitManager(self.http_client) self.trait_descriptions = trait_descriptions.\ TraitDescriptionManager(self.http_client) self.query_samples = query.QuerySamplesManager(self.http_client) self.query_alarms = query.QueryAlarmsManager(self.http_client) self.query_alarm_history = query.QueryAlarmHistoryManager( self.http_client)
def __init__(self, *args, **kwargs): """Initialize a new client for the Ceilometer v1 API.""" super(Client, self).__init__(*args, **kwargs) self.meters = meters.MeterManager(self) self.samples = samples.SampleManager(self) self.statistics = statistics.StatisticsManager(self) self.resources = resources.ResourceManager(self) self.alarms = alarms.AlarmManager(self)
def __init__(self, *args, **kwargs): """Initialize a new client for the Ceilometer v1 API.""" self.http_client = http.HTTPClient(*args, **kwargs) self.meters = meters.MeterManager(self.http_client) self.samples = samples.SampleManager(self.http_client) self.statistics = statistics.StatisticsManager(self.http_client) self.resources = resources.ResourceManager(self.http_client) self.alarms = alarms.AlarmManager(self.http_client) self.events = events.EventManager(self.http_client) self.event_types = event_types.EventTypeManager(self.http_client) self.traits = traits.TraitManager(self.http_client) self.trait_info = trait_descriptions.\ TraitDescriptionManager(self.http_client)
def data(TEST): TEST.ceilometer_users = utils.TestDataContainer() TEST.ceilometer_tenants = utils.TestDataContainer() TEST.resources = utils.TestDataContainer() TEST.samples = utils.TestDataContainer() TEST.meters = utils.TestDataContainer() TEST.statistics = utils.TestDataContainer() TEST.global_disk_usages = utils.TestDataContainer() TEST.global_network_usages = utils.TestDataContainer() TEST.global_network_traffic_usages = utils.TestDataContainer() TEST.global_object_store_usages = utils.TestDataContainer() TEST.statistics_array = utils.TestDataContainer() # users ceilometer_user_dict1 = {'id': "1", 'name': 'user', 'email': '*****@*****.**', 'password': '******', 'token': 'test_token', 'project_id': '1', 'enabled': True, 'domain_id': "1"} ceilometer_user_dict2 = {'id': "2", 'name': 'user2', 'email': '*****@*****.**', 'password': '******', 'token': 'test_token', 'project_id': '2', 'enabled': True, 'domain_id': "2"} TEST.ceilometer_users.add(users.User(users.UserManager(None), ceilometer_user_dict1)) TEST.ceilometer_users.add(users.User(users.UserManager(None), ceilometer_user_dict2)) #tenants tenant_dict = {'id': "1", 'name': 'test_tenant', 'description': "a test tenant.", 'enabled': True, 'domain_id': '1'} tenant_dict_2 = {'id': "2", 'name': 'disabled_tenant', 'description': "a disabled test tenant.", 'enabled': False, 'domain_id': '2'} tenant_dict_3 = {'id': "3", 'name': u'\u4e91\u89c4\u5219', 'description': "an unicode-named tenant.", 'enabled': True, 'domain_id': '2'} ceilometer_tenant = tenants.Tenant(tenants.TenantManager, tenant_dict) ceilometer_disabled_tenant = tenants.Tenant(tenants.TenantManager, tenant_dict_2) ceilometer_tenant_unicode = tenants.Tenant(tenants.TenantManager, tenant_dict_3) TEST.ceilometer_tenants.add(ceilometer_tenant, ceilometer_disabled_tenant, ceilometer_tenant_unicode) # resources resource_dict_1 = dict( resource_id='fake_resource_id', project_id='fake_project_id', user_id="fake_user_id", timestamp='2012-07-02T10:42:00.000000', metadata={'tag': 'self.counter3', 'display_name': 'test-server'}, links=[{'url': 'test_url', 'rel': 'storage.objects'}], ) resource_dict_2 = dict( resource_id='fake_resource_id2', project_id='fake_project_id', user_id="fake_user_id", timestamp='2012-07-02T10:42:00.000000', metadata={'tag': 'self.counter3', 'display_name': 'test-server'}, links=[{'url': 'test_url', 'rel': 'storage.objects'}], ) resource_dict_3 = dict( resource_id='fake_resource_id3', project_id='fake_project_id', user_id="fake_user_id", timestamp='2012-07-02T10:42:00.000000', metadata={'tag': 'self.counter3', 'display_name': 'test-server'}, links=[{'url': 'test_url', 'rel': 'intance'}], ) resource_1 = resources.Resource(resources.ResourceManager(None), resource_dict_1) resource_2 = resources.Resource(resources.ResourceManager(None), resource_dict_2) resource_3 = resources.Resource(resources.ResourceManager(None), resource_dict_3) TEST.resources.add(resource_1) TEST.resources.add(resource_2) TEST.resources.add(resource_3) # samples sample_dict_1 = {'resource_id': 'fake_resource_id', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id', 'counter_name': 'image', 'counter_type': 'gauge', 'counter_unit': 'image', 'counter_volume': 1, 'timestamp': '2012-12-21T11:00:55.000000', 'metadata': {'name1': 'value1', 'name2': 'value2'}, 'message_id': 'fake_message_id'} sample_dict_2 = {'resource_id': 'fake_resource_id2', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id', 'counter_name': 'image', 'counter_type': 'gauge', 'counter_unit': 'image', 'counter_volume': 1, 'timestamp': '2012-12-21T11:00:55.000000', 'metadata': {'name1': 'value1', 'name2': 'value2'}, 'message_id': 'fake_message_id'} sample_1 = samples.Sample(samples.SampleManager(None), sample_dict_1) sample_2 = samples.Sample(samples.SampleManager(None), sample_dict_2) TEST.samples.add(sample_1) TEST.samples.add(sample_2) # meters meter_dict_1 = {'name': 'instance', 'type': 'gauge', 'unit': 'instance', 'resource_id': 'fake_resource_id', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id'} meter_dict_2 = {'name': 'instance', 'type': 'gauge', 'unit': 'instance', 'resource_id': 'fake_resource_id', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id'} meter_dict_3 = {'name': 'disk.read.bytes', 'type': 'gauge', 'unit': 'instance', 'resource_id': 'fake_resource_id', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id'} meter_dict_4 = {'name': 'disk.write.bytes', 'type': 'gauge', 'unit': 'instance', 'resource_id': 'fake_resource_id', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id'} meter_1 = meters.Meter(meters.MeterManager(None), meter_dict_1) meter_2 = meters.Meter(meters.MeterManager(None), meter_dict_2) meter_3 = meters.Meter(meters.MeterManager(None), meter_dict_3) meter_4 = meters.Meter(meters.MeterManager(None), meter_dict_4) TEST.meters.add(meter_1) TEST.meters.add(meter_2) TEST.meters.add(meter_3) TEST.meters.add(meter_4) # statistic statistic_dict_1 = {'min': 1, 'max': 9, 'avg': 4.55, 'sum': 45, 'count': 10, 'duration_start': '2012-12-21T11:00:55.000000', 'duration_end': '2012-12-21T11:00:55.000000', 'period': 7200, 'period_start': '2012-12-21T11:00:55.000000', 'period_end': '2012-12-21T11:00:55.000000'} statistic_1 = statistics.Statistics(statistics.StatisticsManager(None), statistic_dict_1) TEST.statistics.add(statistic_1)
def data(TEST): TEST.ceilometer_users = utils.TestDataContainer() TEST.ceilometer_tenants = utils.TestDataContainer() TEST.resources = utils.TestDataContainer() TEST.api_resources = utils.TestDataContainer() TEST.samples = utils.TestDataContainer() TEST.meters = utils.TestDataContainer() TEST.alarms = utils.TestDataContainer() TEST.statistics = utils.TestDataContainer() TEST.global_disk_usages = utils.TestDataContainer() TEST.global_network_usages = utils.TestDataContainer() TEST.global_network_traffic_usages = utils.TestDataContainer() TEST.global_object_store_usages = utils.TestDataContainer() TEST.statistics_array = utils.TestDataContainer() # users ceilometer_user_dict1 = { 'id': "1", 'name': 'user', 'email': '*****@*****.**', 'password': '******', 'token': 'test_token', 'project_id': '1', 'enabled': True, 'domain_id': "1" } ceilometer_user_dict2 = { 'id': "2", 'name': 'user2', 'email': '*****@*****.**', 'password': '******', 'token': 'test_token', 'project_id': '2', 'enabled': True, 'domain_id': "2" } TEST.ceilometer_users.add(users.User(None, ceilometer_user_dict1)) TEST.ceilometer_users.add(users.User(None, ceilometer_user_dict2)) # Tenants. tenant_dict = { 'id': "1", 'name': 'test_tenant', 'description': "a test tenant.", 'enabled': True, 'domain_id': '1' } tenant_dict_2 = { 'id': "2", 'name': 'disabled_tenant', 'description': "a disabled test tenant.", 'enabled': False, 'domain_id': '2' } tenant_dict_3 = { 'id': "3", 'name': u'\u4e91\u89c4\u5219', 'description': "an unicode-named tenant.", 'enabled': True, 'domain_id': '2' } ceilometer_tenant = tenants.Tenant(tenants.TenantManager, tenant_dict) ceilometer_disabled_tenant = tenants.Tenant(tenants.TenantManager, tenant_dict_2) ceilometer_tenant_unicode = tenants.Tenant(tenants.TenantManager, tenant_dict_3) TEST.ceilometer_tenants.add(ceilometer_tenant, ceilometer_disabled_tenant, ceilometer_tenant_unicode) # resources resource_dict_1 = dict( resource_id='fake_resource_id', project_id='fake_project_id', user_id="fake_user_id", timestamp='2012-07-02T10:42:00.000000', metadata={ 'tag': 'self.counter3', 'display_name': 'test-server' }, links=[{ 'url': 'test_url', 'rel': 'storage.objects' }], ) resource_dict_2 = dict( resource_id='fake_resource_id2', project_id='fake_project_id', user_id="fake_user_id", timestamp='2012-07-02T10:42:00.000000', metadata={ 'tag': 'self.counter3', 'display_name': 'test-server' }, links=[{ 'url': 'test_url', 'rel': 'storage.objects' }], ) resource_dict_3 = dict( resource_id='fake_resource_id3', project_id='fake_project_id', user_id="fake_user_id", timestamp='2012-07-02T10:42:00.000000', metadata={ 'tag': 'self.counter3', 'display_name': 'test-server' }, links=[{ 'url': 'test_url', 'rel': 'instance' }], ) resource_dict_4 = dict( resource_id='fake_resource_id3', project_id='fake_project_id', user_id="fake_user_id", timestamp='2012-07-02T10:42:00.000000', metadata={ 'tag': 'self.counter3', 'display_name': 'test-server' }, links=[{ 'url': 'test_url', 'rel': 'memory' }], ) resource_1 = resources.Resource(resources.ResourceManager(None), resource_dict_1) resource_2 = resources.Resource(resources.ResourceManager(None), resource_dict_2) resource_3 = resources.Resource(resources.ResourceManager(None), resource_dict_3) resource_4 = resources.Resource(resources.ResourceManager(None), resource_dict_4) TEST.resources.add(resource_1) TEST.resources.add(resource_2) TEST.resources.add(resource_3) # Having a separate set of fake objects for openstack_dashboard # api Resource class. This is required because of additional methods # defined in openstack_dashboard.api.ceilometer.Resource api_resource_1 = ceilometer.Resource(resource_1) api_resource_2 = ceilometer.Resource(resource_2) api_resource_3 = ceilometer.Resource(resource_3) api_resource_4 = ceilometer.Resource(resource_4) TEST.api_resources.add(api_resource_1) TEST.api_resources.add(api_resource_2) TEST.api_resources.add(api_resource_3) TEST.api_resources.add(api_resource_4) # samples sample_dict_1 = { 'resource_id': 'fake_resource_id', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id', 'counter_name': 'image', 'counter_type': 'gauge', 'counter_unit': 'image', 'counter_volume': 1, 'timestamp': '2012-12-21T11:00:55.000000', 'metadata': { 'name1': 'value1', 'name2': 'value2' }, 'message_id': 'fake_message_id' } sample_dict_2 = { 'resource_id': 'fake_resource_id2', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id', 'counter_name': 'image', 'counter_type': 'gauge', 'counter_unit': 'image', 'counter_volume': 1, 'timestamp': '2012-12-21T11:00:55.000000', 'metadata': { 'name1': 'value1', 'name2': 'value2' }, 'message_id': 'fake_message_id' } sample_1 = samples.Sample(samples.SampleManager(None), sample_dict_1) sample_2 = samples.Sample(samples.SampleManager(None), sample_dict_2) TEST.samples.add(sample_1) TEST.samples.add(sample_2) # alarms alarm_dict_1 = { 'alarm_actions': ['alarm_action1', 'alarm_action2'], 'ok_actions': ['ok_action_1', 'ok_action_2'], 'name': 'fake_alarm_name', 'timestamp': '2015-08-07T05:32:20.970341', 'description': 'fake_random_description', 'time_constraints': [], 'enabled': True, 'state_timestamp': '2015-08-07T17:59:11.351033', 'threshold_rule': { 'meter_name': 'fake_meter_name', 'evaluation_periods': 1, 'period': 300, 'statistic': 'avg', 'threshold': 2.0, 'query': [], 'comparison_operator': 'ge', 'exclude_outliers': False }, 'alarm_id': 'fake_alarm_id', 'state': 'ok', 'insufficient_data_actions': ['fake_action_1', 'fake_action_2'], 'repeat_actions': True, 'user_id': 'fake_user_id', 'project_id': 'fake_project_id', 'type': 'threshold', 'severity': 'low' } alarm_dict_2 = { 'alarm_actions': ['alarm_action1', 'alarm_action2'], 'ok_actions': ['ok_action_1', 'ok_action_2'], 'name': 'fake_alarm_name', 'timestamp': '2015-08-07T05:32:20.970341', 'description': 'New', 'time_constraints': [], 'enabled': True, 'state_timestamp': '2015-08-07T17:59:11.351033', 'threshold_rule': { 'meter_name': 'fake_meter_name', 'evaluation_periods': 1, 'period': 300, 'statistic': 'avg', 'threshold': 2.0, 'query': [], 'comparison_operator': 'ge', 'exclude_outliers': False }, 'alarm_id': 'fake_alarm_id2', 'state': 'ok', 'insufficient_data_actions': ['fake_action_1', 'fake_action_2'], 'repeat_actions': True, 'user_id': 'fake_user_id', 'project_id': 'fake_project_id', 'type': 'threshold', 'severity': 'low' } alarm_dict_3 = { 'alarm_actions': ['alarm_action1', 'alarm_action2'], 'ok_actions': ['ok_action_1', 'ok_action_2'], 'name': 'fake_alarm_name', 'timestamp': '2015-08-07T05:32:20.970341', 'description': 'fake_random_description', 'time_constraints': [], 'enabled': True, 'state_timestamp': '2015-08-07T17:59:11.351033', 'threshold_rule': { 'meter_name': 'fake_meter_name', 'evaluation_periods': 2, 'period': 300, 'statistic': 'avg', 'threshold': 2.0, 'query': [{ 'field': 'resource_id', 'value': '' }], 'comparison_operator': 'ge', 'exclude_outliers': False }, 'alarm_id': 'fake_alarm_id3', 'state': 'ok', 'insufficient_data_actions': ['fake_action_1', 'fake_action_2'], 'repeat_actions': True, 'user_id': '', 'project_id': '', 'type': 'threshold', 'severity': 'low' } alarm_dict_4 = { 'alarm_actions': ['alarm_action1', 'alarm_action2'], 'ok_actions': ['ok_action_1', 'ok_action_2'], 'name': 'fake_alarm_name4', 'timestamp': '2015-08-07T05:32:20.970341', 'description': 'fake_random_description', 'time_constraints': [], 'enabled': True, 'state_timestamp': '2015-08-07T17:59:11.351033', 'threshold_rule': { 'meter_name': '', 'evaluation_periods': -10, 'period': -1, 'statistic': 'avg', 'threshold': '', 'query': [{ 'field': 'resource_id', 'value': '' }], 'comparison_operator': 'ge', 'exclude_outliers': False }, 'alarm_id': 'fake_alarm_id4', 'state': 'ok', 'insufficient_data_actions': ['fake_action_1', 'fake_action_2'], 'repeat_actions': True, 'user_id': 'fake_user_id', 'project_id': 'fake_project_id', 'type': 'threshold', 'severity': 'low' } alarm_1 = alarms.Alarm(alarms.AlarmManager(None), alarm_dict_1) alarm_2 = alarms.Alarm(alarms.AlarmManager(None), alarm_dict_2) alarm_3 = alarms.Alarm(alarms.AlarmManager(None), alarm_dict_3) alarm_4 = alarms.Alarm(alarms.AlarmManager(None), alarm_dict_4) TEST.alarms.add(alarm_1) TEST.alarms.add(alarm_2) TEST.alarms.add(alarm_3) TEST.alarms.add(alarm_4) # meters meter_dict_1 = { 'name': 'instance', 'type': 'gauge', 'unit': 'instance', 'resource_id': 'fake_resource_id', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id' } meter_dict_2 = { 'name': 'instance', 'type': 'gauge', 'unit': 'instance', 'resource_id': 'fake_resource_id', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id' } meter_dict_3 = { 'name': 'disk.read.bytes', 'type': 'gauge', 'unit': 'instance', 'resource_id': 'fake_resource_id', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id' } meter_dict_4 = { 'name': 'disk.write.bytes', 'type': 'gauge', 'unit': 'instance', 'resource_id': 'fake_resource_id', 'project_id': 'fake_project_id', 'user_id': 'fake_user_id' } meter_1 = meters.Meter(meters.MeterManager(None), meter_dict_1) meter_2 = meters.Meter(meters.MeterManager(None), meter_dict_2) meter_3 = meters.Meter(meters.MeterManager(None), meter_dict_3) meter_4 = meters.Meter(meters.MeterManager(None), meter_dict_4) TEST.meters.add(meter_1) TEST.meters.add(meter_2) TEST.meters.add(meter_3) TEST.meters.add(meter_4) # statistic statistic_dict_1 = { 'min': 1, 'max': 9, 'avg': 4.55, 'sum': 45, 'count': 10, 'duration_start': '2012-12-21T11:00:55.000000', 'duration_end': '2012-12-21T11:00:55.000000', 'period': 7200, 'period_start': '2012-12-21T11:00:55.000000', 'period_end': '2012-12-21T11:00:55.000000' } statistic_1 = statistics.Statistics(statistics.StatisticsManager(None), statistic_dict_1) TEST.statistics.add(statistic_1)