async def sample_list_incidents_for_detection_configuration_async(): # [START list_incidents_for_detection_configuration_async] import datetime from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") detection_configuration_id = os.getenv( "METRICS_ADVISOR_DETECTION_CONFIGURATION_ID") client = MetricsAdvisorClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async with client: results = client.list_incidents( detection_configuration_id=detection_configuration_id, start_time=datetime.datetime(2020, 1, 1), end_time=datetime.datetime(2020, 9, 9), ) async for result in results: print("Metric id: {}".format(result.metric_id)) print("Incident ID: {}".format(result.id)) print("Severity: {}".format(result.severity)) print("Status: {}".format(result.status))
async def sample_list_incidents_for_alert_async(): # [START list_incidents_for_alert_async] from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") alert_configuration_id = os.getenv( "METRICS_ADVISOR_ALERT_CONFIGURATION_ID") alert_id = os.getenv("METRICS_ADVISOR_ALERT_ID") client = MetricsAdvisorClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async with client: results = client.list_incidents( alert_configuration_id=alert_configuration_id, alert_id=alert_id, ) async for result in results: print("Metric id: {}".format(result.metric_id)) print("Incident ID: {}".format(result.id)) print("Severity: {}".format(result.severity)) print("Status: {}".format(result.status))
async def sample_list_metric_enriched_series_data_async(): # [START list_metric_enriched_series_data_async] import datetime from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") detection_configuration_id = os.getenv( "METRICS_ADVISOR_DETECTION_CONFIGURATION_ID") series_identity = {"region": "Los Angeles"} client = MetricsAdvisorClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async with client: results = client.list_metric_enriched_series_data( detection_configuration_id=detection_configuration_id, start_time=datetime.datetime(2020, 9, 1), end_time=datetime.datetime(2020, 11, 1), series=[series_identity]) async for result in results: print(str(result))
async def sample_list_anomaly_dimension_values_async(): # [START list_anomaly_dimension_values_async] import datetime from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") detection_configuration_id = os.getenv( "METRICS_ADVISOR_DETECTION_CONFIGURATION_ID") dimension_name = "region" client = MetricsAdvisorClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async with client: results = client.list_anomaly_dimension_values( detection_configuration_id=detection_configuration_id, dimension_name=dimension_name, start_time=datetime.datetime(2020, 1, 1), end_time=datetime.datetime(2020, 10, 21), ) async for result in results: print(str(result))
async def sample_list_metrics_series_data_async(): # [START list_metrics_series_data_async] import datetime from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") metric_id = os.getenv("METRICS_ADVISOR_METRIC_ID") client = MetricsAdvisorClient(service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async with client: results = client.list_metrics_series_data( metric_id=metric_id, start_time=datetime.datetime(2020, 1, 1), end_time=datetime.datetime(2020, 10, 21), series_to_filter=[ {"city": "Los Angeles", "category": "Homemade"} ] ) async for result in results: print(str(result))
async def sample_list_alerts_async(alert_config_id): # [START list_alerts_async] import datetime from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") client = MetricsAdvisorClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async with client: results = client.list_alerts( alert_configuration_id=alert_config_id, start_time=datetime.datetime(2020, 1, 1), end_time=datetime.datetime(2020, 9, 9), time_mode="AnomalyTime", ) tolist = [] async for result in results: tolist.append(result) print("Alert id: {}".format(result.id)) print("Create on: {}".format(result.created_on)) return tolist
async def sample_list_feedback_async(): # [START list_feedback_async] from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential, MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") metric_id = os.getenv("METRICS_ADVISOR_METRIC_ID") client = MetricsAdvisorClient(service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) results = client.list_feedback(metric_id=metric_id) async for result in results: print("Type: {}; Id: {}".format(result.feedback_type, result.id))
class ListRootCausesTest(PerfStressTest): def __init__(self, arguments): super().__init__(arguments) service_endpoint = os.getenv("AZURE_METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("AZURE_METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("AZURE_METRICS_ADVISOR_API_KEY") self.anomaly_detection_configuration_id = os.getenv( "AZURE_METRICS_ADVISOR_ANOMALY_DETECTION_CONFIGURATION_ID") self.incident_id = os.getenv("AZURE_METRICS_ADVISOR_INCIDENT_ID") self.service_client = SyncClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) self.async_service_client = AsyncClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async def close(self): await self.async_service_client.close() await super().close() def run_sync(self): results = self.service_client.list_incident_root_causes( detection_configuration_id=self.anomaly_detection_configuration_id, incident_id=self.incident_id, ) for _ in results: pass async def run_async(self): results = self.async_service_client.list_incident_root_causes( detection_configuration_id=self.anomaly_detection_configuration_id, incident_id=self.incident_id, ) async for _ in results: pass
async def authentication_client_with_aad_async(): # [START authentication_client_with_aad_async] from azure.identity.aio import DefaultAzureCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") credential = DefaultAzureCredential() client = MetricsAdvisorClient(service_endpoint, credential)
def __init__(self, method_name): super(TestMetricsAdvisorClientBaseAsync, self).__init__(method_name) self.vcr.match_on = ["path", "method", "query"] if self.is_live: service_endpoint = self.get_settings_value("METRICS_ADVISOR_ENDPOINT") subscription_key = self.get_settings_value("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = self.get_settings_value("METRICS_ADVISOR_API_KEY") self.anomaly_detection_configuration_id = self.get_settings_value("METRICS_ADVISOR_ANOMALY_DETECTION_CONFIGURATION_ID") self.anomaly_alert_configuration_id = self.get_settings_value("METRICS_ADVISOR_ANOMALY_ALERT_CONFIGURATION_ID") self.metric_id = self.get_settings_value("METRICS_ADVISOR_METRIC_ID") self.incident_id = self.get_settings_value("METRICS_ADVISOR_INCIDENT_ID") self.dimension_name = self.get_settings_value("METRICS_ADVISOR_DIMENSION_NAME") self.feedback_id = self.get_settings_value("METRICS_ADVISOR_FEEDBACK_ID") self.alert_id = self.get_settings_value("METRICS_ADVISOR_ALERT_ID") self.scrubber.register_name_pair( self.anomaly_detection_configuration_id, "anomaly_detection_configuration_id" ) self.scrubber.register_name_pair( self.anomaly_alert_configuration_id, "anomaly_alert_configuration_id" ) self.scrubber.register_name_pair( self.metric_id, "metric_id" ) self.scrubber.register_name_pair( self.incident_id, "incident_id" ) self.scrubber.register_name_pair( self.dimension_name, "dimension_name" ) self.scrubber.register_name_pair( self.feedback_id, "feedback_id" ) self.scrubber.register_name_pair( self.alert_id, "alert_id" ) else: service_endpoint = "https://endpointname.cognitiveservices.azure.com" subscription_key = "METRICS_ADVISOR_SUBSCRIPTION_KEY" api_key = "METRICS_ADVISOR_API_KEY" self.anomaly_detection_configuration_id = "anomaly_detection_configuration_id" self.anomaly_alert_configuration_id = "anomaly_alert_configuration_id" self.metric_id = "metric_id" self.incident_id = "incident_id" self.dimension_name = "dimension_name" self.feedback_id = "feedback_id" self.alert_id = "alert_id" self.client = MetricsAdvisorClient(service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key))
async def authentication_client_with_metrics_advisor_credential_async(): # [START authentication_client_with_metrics_advisor_credential_async] from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") client = MetricsAdvisorClient(service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key))
def sample_list_incident_root_cause(): # [START list_incident_root_cause_async] from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") anomaly_detection_configuration_id = os.getenv("METRICS_ADVISOR_ANOMALY_DETECTION_CONFIGURATION_ID") incident_id = os.getenv("METRICS_ADVISOR_INCIDENT_ID") client = MetricsAdvisorClient(service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async with client: results = client.list_incident_root_causes( detection_configuration_id=anomaly_detection_configuration_id, incident_id=incident_id, ) for result in results: print("Score: {}".format(result.score)) print("Description: {}".format(result.description))
async def sample_list_metric_dimension_values_async(): # [START list_metric_dimension_values_async] from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") metric_id = os.getenv("METRICS_ADVISOR_METRIC_ID") dimension_name = "city" client = MetricsAdvisorClient(service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async with client: results = client.list_metric_dimension_values( metric_id=metric_id, dimension_name=dimension_name, ) async for result in results: print(str(result))
async def sample_list_metric_series_definitions_async(): # [START list_metric_series_definitions_async] import datetime from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") metric_id = os.getenv("METRICS_ADVISOR_METRIC_ID") client = MetricsAdvisorClient(service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async with client: results = client.list_metric_series_definitions( metric_id=metric_id, active_since=datetime.datetime(2020, 1, 1), ) async for result in results: print(str(result))
async def sample_list_anomalies_for_alert_async(alert_config_id, alert_id): # [START list_anomalies_for_alert_async] from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") client = MetricsAdvisorClient(service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async with client: results = client.list_anomalies_for_alert( alert_configuration_id=alert_config_id, alert_id=alert_id, ) async for result in results: print("Create on: {}".format(result.created_on)) print("Severity: {}".format(result.severity)) print("Status: {}".format(result.status))
def __init__(self, arguments): super().__init__(arguments) service_endpoint = os.getenv("AZURE_METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("AZURE_METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("AZURE_METRICS_ADVISOR_API_KEY") self.anomaly_detection_configuration_id = os.getenv( "AZURE_METRICS_ADVISOR_ANOMALY_DETECTION_CONFIGURATION_ID") self.service_client = SyncClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) self.async_service_client = AsyncClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key))
async def sample_get_feedback_async(): # [START get_feedback_async] from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential, MetricsAdvisorClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") feedback_id = os.getenv("METRICS_ADVISOR_FEEDBACK_ID") client = MetricsAdvisorClient(service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) result = await client.get_feedback(feedback_id=feedback_id) print("Type: {}; Id: {}".format(result.feedback_type, result.id))
class ListIncidentsTest(PerfStressTest): def __init__(self, arguments): super().__init__(arguments) service_endpoint = os.getenv("AZURE_METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("AZURE_METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("AZURE_METRICS_ADVISOR_API_KEY") self.anomaly_detection_configuration_id = os.getenv( "AZURE_METRICS_ADVISOR_ANOMALY_DETECTION_CONFIGURATION_ID") self.service_client = SyncClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) self.async_service_client = AsyncClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) async def close(self): await self.async_service_client.close() await super().close() def run_sync(self): results = self.service_client.list_incidents( detection_configuration_id=self.anomaly_detection_configuration_id, start_time=datetime.datetime(2020, 1, 1, tzinfo=datetime.timezone.utc), end_time=datetime.datetime(2020, 10, 21, tzinfo=datetime.timezone.utc), ) for _ in results: pass async def run_async(self): results = self.async_service_client.list_incidents( detection_configuration_id=self.anomaly_detection_configuration_id, start_time=datetime.datetime(2020, 1, 1, tzinfo=datetime.timezone.utc), end_time=datetime.datetime(2020, 10, 21, tzinfo=datetime.timezone.utc), ) async for _ in results: pass
async def sample_add_feedback_async(): # [START add_feedback_async] from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential from azure.ai.metricsadvisor.aio import MetricsAdvisorClient from azure.ai.metricsadvisor.models import AnomalyFeedback, ChangePointFeedback, CommentFeedback, PeriodFeedback service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") metric_id = os.getenv("METRICS_ADVISOR_METRIC_ID") client = MetricsAdvisorClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) anomaly_feedback = AnomalyFeedback(metric_id=metric_id, dimension_key={"Dim1": "Common Lime"}, start_time=datetime.datetime( 2020, 8, 5), end_time=datetime.datetime(2020, 8, 7), value="NotAnomaly") await client.add_feedback(anomaly_feedback) change_point_feedback = ChangePointFeedback( metric_id=metric_id, dimension_key={"Dim1": "Common Lime"}, start_time=datetime.datetime(2020, 8, 5), end_time=datetime.datetime(2020, 8, 7), value="NotChangePoint") await client.add_feedback(change_point_feedback) comment_feedback = CommentFeedback(metric_id=metric_id, dimension_key={"Dim1": "Common Lime"}, start_time=datetime.datetime( 2020, 8, 5), end_time=datetime.datetime(2020, 8, 7), value="comment") await client.add_feedback(comment_feedback) period_feedback = PeriodFeedback(metric_id=metric_id, dimension_key={"Dim1": "Common Lime"}, start_time=datetime.datetime(2020, 8, 5), end_time=datetime.datetime(2020, 8, 7), period_type="AssignValue", value=2) await client.add_feedback(period_feedback)