Source code for azure.mgmt.alertsmanagement.models._models_py3

# coding=utf-8
# pylint: disable=too-many-lines
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------

import datetime
from typing import Dict, List, Optional, TYPE_CHECKING, Union

from .. import _serialization

if TYPE_CHECKING:
    # pylint: disable=unused-import,ungrouped-imports
    from .. import models as _models


[docs]class Action(_serialization.Model): """Action to be applied. You probably want to use the sub-classes and not this class directly. Known sub-classes are: AddActionGroups, RemoveAllActionGroups All required parameters must be populated in order to send to Azure. :ivar action_type: Action that should be applied. Required. Known values are: "AddActionGroups" and "RemoveAllActionGroups". :vartype action_type: str or ~azure.mgmt.alertsmanagement.models.ActionType """ _validation = { "action_type": {"required": True}, } _attribute_map = { "action_type": {"key": "actionType", "type": "str"}, } _subtype_map = { "action_type": {"AddActionGroups": "AddActionGroups", "RemoveAllActionGroups": "RemoveAllActionGroups"} } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.action_type = None # type: Optional[str]
[docs]class ActionStatus(_serialization.Model): """Action status. :ivar is_suppressed: Value indicating whether alert is suppressed. :vartype is_suppressed: bool """ _attribute_map = { "is_suppressed": {"key": "isSuppressed", "type": "bool"}, } def __init__(self, *, is_suppressed: Optional[bool] = None, **kwargs): """ :keyword is_suppressed: Value indicating whether alert is suppressed. :paramtype is_suppressed: bool """ super().__init__(**kwargs) self.is_suppressed = is_suppressed
[docs]class AddActionGroups(Action): """Add action groups to alert processing rule. All required parameters must be populated in order to send to Azure. :ivar action_type: Action that should be applied. Required. Known values are: "AddActionGroups" and "RemoveAllActionGroups". :vartype action_type: str or ~azure.mgmt.alertsmanagement.models.ActionType :ivar action_group_ids: List of action group Ids to add to alert processing rule. Required. :vartype action_group_ids: list[str] """ _validation = { "action_type": {"required": True}, "action_group_ids": {"required": True}, } _attribute_map = { "action_type": {"key": "actionType", "type": "str"}, "action_group_ids": {"key": "actionGroupIds", "type": "[str]"}, } def __init__(self, *, action_group_ids: List[str], **kwargs): """ :keyword action_group_ids: List of action group Ids to add to alert processing rule. Required. :paramtype action_group_ids: list[str] """ super().__init__(**kwargs) self.action_type = "AddActionGroups" # type: str self.action_group_ids = action_group_ids
[docs]class Resource(_serialization.Model): """An azure resource object. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Azure resource Id. :vartype id: str :ivar type: Azure resource type. :vartype type: str :ivar name: Azure resource name. :vartype name: str """ _validation = { "id": {"readonly": True}, "type": {"readonly": True}, "name": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "type": {"key": "type", "type": "str"}, "name": {"key": "name", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.id = None self.type = None self.name = None
[docs]class Alert(Resource): """An alert created in alert management service. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Azure resource Id. :vartype id: str :ivar type: Azure resource type. :vartype type: str :ivar name: Azure resource name. :vartype name: str :ivar properties: Alert property bag. :vartype properties: ~azure.mgmt.alertsmanagement.models.AlertProperties """ _validation = { "id": {"readonly": True}, "type": {"readonly": True}, "name": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "type": {"key": "type", "type": "str"}, "name": {"key": "name", "type": "str"}, "properties": {"key": "properties", "type": "AlertProperties"}, } def __init__(self, *, properties: Optional["_models.AlertProperties"] = None, **kwargs): """ :keyword properties: Alert property bag. :paramtype properties: ~azure.mgmt.alertsmanagement.models.AlertProperties """ super().__init__(**kwargs) self.properties = properties
[docs]class AlertModification(Resource): """Alert Modification details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Azure resource Id. :vartype id: str :ivar type: Azure resource type. :vartype type: str :ivar name: Azure resource name. :vartype name: str :ivar properties: Properties of the alert modification item. :vartype properties: ~azure.mgmt.alertsmanagement.models.AlertModificationProperties """ _validation = { "id": {"readonly": True}, "type": {"readonly": True}, "name": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "type": {"key": "type", "type": "str"}, "name": {"key": "name", "type": "str"}, "properties": {"key": "properties", "type": "AlertModificationProperties"}, } def __init__(self, *, properties: Optional["_models.AlertModificationProperties"] = None, **kwargs): """ :keyword properties: Properties of the alert modification item. :paramtype properties: ~azure.mgmt.alertsmanagement.models.AlertModificationProperties """ super().__init__(**kwargs) self.properties = properties
[docs]class AlertModificationItem(_serialization.Model): """Alert modification item. :ivar modification_event: Reason for the modification. Known values are: "AlertCreated", "StateChange", "MonitorConditionChange", "SeverityChange", "ActionRuleTriggered", "ActionRuleSuppressed", "ActionsTriggered", "ActionsSuppressed", and "ActionsFailed". :vartype modification_event: str or ~azure.mgmt.alertsmanagement.models.AlertModificationEvent :ivar old_value: Old value. :vartype old_value: str :ivar new_value: New value. :vartype new_value: str :ivar modified_at: Modified date and time. :vartype modified_at: str :ivar modified_by: Modified user details (Principal client name). :vartype modified_by: str :ivar comments: Modification comments. :vartype comments: str :ivar description: Description of the modification. :vartype description: str """ _attribute_map = { "modification_event": {"key": "modificationEvent", "type": "str"}, "old_value": {"key": "oldValue", "type": "str"}, "new_value": {"key": "newValue", "type": "str"}, "modified_at": {"key": "modifiedAt", "type": "str"}, "modified_by": {"key": "modifiedBy", "type": "str"}, "comments": {"key": "comments", "type": "str"}, "description": {"key": "description", "type": "str"}, } def __init__( self, *, modification_event: Optional[Union[str, "_models.AlertModificationEvent"]] = None, old_value: Optional[str] = None, new_value: Optional[str] = None, modified_at: Optional[str] = None, modified_by: Optional[str] = None, comments: Optional[str] = None, description: Optional[str] = None, **kwargs ): """ :keyword modification_event: Reason for the modification. Known values are: "AlertCreated", "StateChange", "MonitorConditionChange", "SeverityChange", "ActionRuleTriggered", "ActionRuleSuppressed", "ActionsTriggered", "ActionsSuppressed", and "ActionsFailed". :paramtype modification_event: str or ~azure.mgmt.alertsmanagement.models.AlertModificationEvent :keyword old_value: Old value. :paramtype old_value: str :keyword new_value: New value. :paramtype new_value: str :keyword modified_at: Modified date and time. :paramtype modified_at: str :keyword modified_by: Modified user details (Principal client name). :paramtype modified_by: str :keyword comments: Modification comments. :paramtype comments: str :keyword description: Description of the modification. :paramtype description: str """ super().__init__(**kwargs) self.modification_event = modification_event self.old_value = old_value self.new_value = new_value self.modified_at = modified_at self.modified_by = modified_by self.comments = comments self.description = description
[docs]class AlertModificationProperties(_serialization.Model): """Properties of the alert modification item. Variables are only populated by the server, and will be ignored when sending a request. :ivar alert_id: Unique Id of the alert for which the history is being retrieved. :vartype alert_id: str :ivar modifications: Modification details. :vartype modifications: list[~azure.mgmt.alertsmanagement.models.AlertModificationItem] """ _validation = { "alert_id": {"readonly": True}, } _attribute_map = { "alert_id": {"key": "alertId", "type": "str"}, "modifications": {"key": "modifications", "type": "[AlertModificationItem]"}, } def __init__(self, *, modifications: Optional[List["_models.AlertModificationItem"]] = None, **kwargs): """ :keyword modifications: Modification details. :paramtype modifications: list[~azure.mgmt.alertsmanagement.models.AlertModificationItem] """ super().__init__(**kwargs) self.alert_id = None self.modifications = modifications
[docs]class ManagedResource(Resource): """An azure managed resource object. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Azure resource Id. :vartype id: str :ivar type: Azure resource type. :vartype type: str :ivar name: Azure resource name. :vartype name: str :ivar location: Resource location. Required. :vartype location: str :ivar tags: Resource tags. :vartype tags: dict[str, str] """ _validation = { "id": {"readonly": True}, "type": {"readonly": True}, "name": {"readonly": True}, "location": {"required": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "type": {"key": "type", "type": "str"}, "name": {"key": "name", "type": "str"}, "location": {"key": "location", "type": "str"}, "tags": {"key": "tags", "type": "{str}"}, } def __init__(self, *, location: str, tags: Optional[Dict[str, str]] = None, **kwargs): """ :keyword location: Resource location. Required. :paramtype location: str :keyword tags: Resource tags. :paramtype tags: dict[str, str] """ super().__init__(**kwargs) self.location = location self.tags = tags
[docs]class AlertProcessingRule(ManagedResource): """Alert processing rule object containing target scopes, conditions and scheduling logic. Variables are only populated by the server, and will be ignored when sending a request. All required parameters must be populated in order to send to Azure. :ivar id: Azure resource Id. :vartype id: str :ivar type: Azure resource type. :vartype type: str :ivar name: Azure resource name. :vartype name: str :ivar location: Resource location. Required. :vartype location: str :ivar tags: Resource tags. :vartype tags: dict[str, str] :ivar properties: Alert processing rule properties. :vartype properties: ~azure.mgmt.alertsmanagement.models.AlertProcessingRuleProperties :ivar system_data: Alert processing rule system data. :vartype system_data: ~azure.mgmt.alertsmanagement.models.SystemData """ _validation = { "id": {"readonly": True}, "type": {"readonly": True}, "name": {"readonly": True}, "location": {"required": True}, "system_data": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "type": {"key": "type", "type": "str"}, "name": {"key": "name", "type": "str"}, "location": {"key": "location", "type": "str"}, "tags": {"key": "tags", "type": "{str}"}, "properties": {"key": "properties", "type": "AlertProcessingRuleProperties"}, "system_data": {"key": "systemData", "type": "SystemData"}, } def __init__( self, *, location: str, tags: Optional[Dict[str, str]] = None, properties: Optional["_models.AlertProcessingRuleProperties"] = None, **kwargs ): """ :keyword location: Resource location. Required. :paramtype location: str :keyword tags: Resource tags. :paramtype tags: dict[str, str] :keyword properties: Alert processing rule properties. :paramtype properties: ~azure.mgmt.alertsmanagement.models.AlertProcessingRuleProperties """ super().__init__(location=location, tags=tags, **kwargs) self.properties = properties self.system_data = None
[docs]class AlertProcessingRuleProperties(_serialization.Model): """Alert processing rule properties defining scopes, conditions and scheduling logic for alert processing rule. All required parameters must be populated in order to send to Azure. :ivar scopes: Scopes on which alert processing rule will apply. Required. :vartype scopes: list[str] :ivar conditions: Conditions on which alerts will be filtered. :vartype conditions: list[~azure.mgmt.alertsmanagement.models.Condition] :ivar schedule: Scheduling for alert processing rule. :vartype schedule: ~azure.mgmt.alertsmanagement.models.Schedule :ivar actions: Actions to be applied. Required. :vartype actions: list[~azure.mgmt.alertsmanagement.models.Action] :ivar description: Description of alert processing rule. :vartype description: str :ivar enabled: Indicates if the given alert processing rule is enabled or disabled. :vartype enabled: bool """ _validation = { "scopes": {"required": True}, "actions": {"required": True}, } _attribute_map = { "scopes": {"key": "scopes", "type": "[str]"}, "conditions": {"key": "conditions", "type": "[Condition]"}, "schedule": {"key": "schedule", "type": "Schedule"}, "actions": {"key": "actions", "type": "[Action]"}, "description": {"key": "description", "type": "str"}, "enabled": {"key": "enabled", "type": "bool"}, } def __init__( self, *, scopes: List[str], actions: List["_models.Action"], conditions: Optional[List["_models.Condition"]] = None, schedule: Optional["_models.Schedule"] = None, description: Optional[str] = None, enabled: bool = True, **kwargs ): """ :keyword scopes: Scopes on which alert processing rule will apply. Required. :paramtype scopes: list[str] :keyword conditions: Conditions on which alerts will be filtered. :paramtype conditions: list[~azure.mgmt.alertsmanagement.models.Condition] :keyword schedule: Scheduling for alert processing rule. :paramtype schedule: ~azure.mgmt.alertsmanagement.models.Schedule :keyword actions: Actions to be applied. Required. :paramtype actions: list[~azure.mgmt.alertsmanagement.models.Action] :keyword description: Description of alert processing rule. :paramtype description: str :keyword enabled: Indicates if the given alert processing rule is enabled or disabled. :paramtype enabled: bool """ super().__init__(**kwargs) self.scopes = scopes self.conditions = conditions self.schedule = schedule self.actions = actions self.description = description self.enabled = enabled
[docs]class AlertProcessingRulesList(_serialization.Model): """List of alert processing rules. :ivar next_link: URL to fetch the next set of alert processing rules. :vartype next_link: str :ivar value: List of alert processing rules. :vartype value: list[~azure.mgmt.alertsmanagement.models.AlertProcessingRule] """ _attribute_map = { "next_link": {"key": "nextLink", "type": "str"}, "value": {"key": "value", "type": "[AlertProcessingRule]"}, } def __init__( self, *, next_link: Optional[str] = None, value: Optional[List["_models.AlertProcessingRule"]] = None, **kwargs ): """ :keyword next_link: URL to fetch the next set of alert processing rules. :paramtype next_link: str :keyword value: List of alert processing rules. :paramtype value: list[~azure.mgmt.alertsmanagement.models.AlertProcessingRule] """ super().__init__(**kwargs) self.next_link = next_link self.value = value
[docs]class AlertProperties(_serialization.Model): """Alert property bag. Variables are only populated by the server, and will be ignored when sending a request. :ivar essentials: This object contains consistent fields across different monitor services. :vartype essentials: ~azure.mgmt.alertsmanagement.models.Essentials :ivar context: Information specific to the monitor service that gives more contextual details about the alert. :vartype context: JSON :ivar egress_config: Config which would be used for displaying the data in portal. :vartype egress_config: JSON """ _validation = { "context": {"readonly": True}, "egress_config": {"readonly": True}, } _attribute_map = { "essentials": {"key": "essentials", "type": "Essentials"}, "context": {"key": "context", "type": "object"}, "egress_config": {"key": "egressConfig", "type": "object"}, } def __init__(self, *, essentials: Optional["_models.Essentials"] = None, **kwargs): """ :keyword essentials: This object contains consistent fields across different monitor services. :paramtype essentials: ~azure.mgmt.alertsmanagement.models.Essentials """ super().__init__(**kwargs) self.essentials = essentials self.context = None self.egress_config = None
[docs]class AlertsList(_serialization.Model): """List the alerts. :ivar next_link: URL to fetch the next set of alerts. :vartype next_link: str :ivar value: List of alerts. :vartype value: list[~azure.mgmt.alertsmanagement.models.Alert] """ _attribute_map = { "next_link": {"key": "nextLink", "type": "str"}, "value": {"key": "value", "type": "[Alert]"}, } def __init__(self, *, next_link: Optional[str] = None, value: Optional[List["_models.Alert"]] = None, **kwargs): """ :keyword next_link: URL to fetch the next set of alerts. :paramtype next_link: str :keyword value: List of alerts. :paramtype value: list[~azure.mgmt.alertsmanagement.models.Alert] """ super().__init__(**kwargs) self.next_link = next_link self.value = value
[docs]class AlertsMetaData(_serialization.Model): """alert meta data information. :ivar properties: alert meta data property bag. :vartype properties: ~azure.mgmt.alertsmanagement.models.AlertsMetaDataProperties """ _attribute_map = { "properties": {"key": "properties", "type": "AlertsMetaDataProperties"}, } def __init__(self, *, properties: Optional["_models.AlertsMetaDataProperties"] = None, **kwargs): """ :keyword properties: alert meta data property bag. :paramtype properties: ~azure.mgmt.alertsmanagement.models.AlertsMetaDataProperties """ super().__init__(**kwargs) self.properties = properties
[docs]class AlertsMetaDataProperties(_serialization.Model): """alert meta data property bag. You probably want to use the sub-classes and not this class directly. Known sub-classes are: MonitorServiceList All required parameters must be populated in order to send to Azure. :ivar metadata_identifier: Identification of the information to be retrieved by API call. Required. "MonitorServiceList" :vartype metadata_identifier: str or ~azure.mgmt.alertsmanagement.models.MetadataIdentifier """ _validation = { "metadata_identifier": {"required": True}, } _attribute_map = { "metadata_identifier": {"key": "metadataIdentifier", "type": "str"}, } _subtype_map = {"metadata_identifier": {"MonitorServiceList": "MonitorServiceList"}} def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.metadata_identifier = None # type: Optional[str]
[docs]class AlertsSummary(Resource): """Summary of alerts based on the input filters and 'groupby' parameters. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Azure resource Id. :vartype id: str :ivar type: Azure resource type. :vartype type: str :ivar name: Azure resource name. :vartype name: str :ivar properties: Group the result set. :vartype properties: ~azure.mgmt.alertsmanagement.models.AlertsSummaryGroup """ _validation = { "id": {"readonly": True}, "type": {"readonly": True}, "name": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "type": {"key": "type", "type": "str"}, "name": {"key": "name", "type": "str"}, "properties": {"key": "properties", "type": "AlertsSummaryGroup"}, } def __init__(self, *, properties: Optional["_models.AlertsSummaryGroup"] = None, **kwargs): """ :keyword properties: Group the result set. :paramtype properties: ~azure.mgmt.alertsmanagement.models.AlertsSummaryGroup """ super().__init__(**kwargs) self.properties = properties
[docs]class AlertsSummaryGroup(_serialization.Model): """Group the result set. :ivar total: Total count of the result set. :vartype total: int :ivar smart_groups_count: Total count of the smart groups. :vartype smart_groups_count: int :ivar groupedby: Name of the field aggregated. :vartype groupedby: str :ivar values: List of the items. :vartype values: list[~azure.mgmt.alertsmanagement.models.AlertsSummaryGroupItem] """ _attribute_map = { "total": {"key": "total", "type": "int"}, "smart_groups_count": {"key": "smartGroupsCount", "type": "int"}, "groupedby": {"key": "groupedby", "type": "str"}, "values": {"key": "values", "type": "[AlertsSummaryGroupItem]"}, } def __init__( self, *, total: Optional[int] = None, smart_groups_count: Optional[int] = None, groupedby: Optional[str] = None, values: Optional[List["_models.AlertsSummaryGroupItem"]] = None, **kwargs ): """ :keyword total: Total count of the result set. :paramtype total: int :keyword smart_groups_count: Total count of the smart groups. :paramtype smart_groups_count: int :keyword groupedby: Name of the field aggregated. :paramtype groupedby: str :keyword values: List of the items. :paramtype values: list[~azure.mgmt.alertsmanagement.models.AlertsSummaryGroupItem] """ super().__init__(**kwargs) self.total = total self.smart_groups_count = smart_groups_count self.groupedby = groupedby self.values = values
[docs]class AlertsSummaryGroupItem(_serialization.Model): """Alerts summary group item. :ivar name: Value of the aggregated field. :vartype name: str :ivar count: Count of the aggregated field. :vartype count: int :ivar groupedby: Name of the field aggregated. :vartype groupedby: str :ivar values: List of the items. :vartype values: list[~azure.mgmt.alertsmanagement.models.AlertsSummaryGroupItem] """ _attribute_map = { "name": {"key": "name", "type": "str"}, "count": {"key": "count", "type": "int"}, "groupedby": {"key": "groupedby", "type": "str"}, "values": {"key": "values", "type": "[AlertsSummaryGroupItem]"}, } def __init__( self, *, name: Optional[str] = None, count: Optional[int] = None, groupedby: Optional[str] = None, values: Optional[List["_models.AlertsSummaryGroupItem"]] = None, **kwargs ): """ :keyword name: Value of the aggregated field. :paramtype name: str :keyword count: Count of the aggregated field. :paramtype count: int :keyword groupedby: Name of the field aggregated. :paramtype groupedby: str :keyword values: List of the items. :paramtype values: list[~azure.mgmt.alertsmanagement.models.AlertsSummaryGroupItem] """ super().__init__(**kwargs) self.name = name self.count = count self.groupedby = groupedby self.values = values
[docs]class Condition(_serialization.Model): """Condition to trigger an alert processing rule. :ivar field: Field for a given condition. Known values are: "Severity", "MonitorService", "MonitorCondition", "SignalType", "TargetResourceType", "TargetResource", "TargetResourceGroup", "AlertRuleId", "AlertRuleName", "Description", and "AlertContext". :vartype field: str or ~azure.mgmt.alertsmanagement.models.Field :ivar operator: Operator for a given condition. Known values are: "Equals", "NotEquals", "Contains", and "DoesNotContain". :vartype operator: str or ~azure.mgmt.alertsmanagement.models.Operator :ivar values: List of values to match for a given condition. :vartype values: list[str] """ _attribute_map = { "field": {"key": "field", "type": "str"}, "operator": {"key": "operator", "type": "str"}, "values": {"key": "values", "type": "[str]"}, } def __init__( self, *, field: Optional[Union[str, "_models.Field"]] = None, operator: Optional[Union[str, "_models.Operator"]] = None, values: Optional[List[str]] = None, **kwargs ): """ :keyword field: Field for a given condition. Known values are: "Severity", "MonitorService", "MonitorCondition", "SignalType", "TargetResourceType", "TargetResource", "TargetResourceGroup", "AlertRuleId", "AlertRuleName", "Description", and "AlertContext". :paramtype field: str or ~azure.mgmt.alertsmanagement.models.Field :keyword operator: Operator for a given condition. Known values are: "Equals", "NotEquals", "Contains", and "DoesNotContain". :paramtype operator: str or ~azure.mgmt.alertsmanagement.models.Operator :keyword values: List of values to match for a given condition. :paramtype values: list[str] """ super().__init__(**kwargs) self.field = field self.operator = operator self.values = values
[docs]class Recurrence(_serialization.Model): """Recurrence object. You probably want to use the sub-classes and not this class directly. Known sub-classes are: DailyRecurrence, MonthlyRecurrence, WeeklyRecurrence All required parameters must be populated in order to send to Azure. :ivar recurrence_type: Specifies when the recurrence should be applied. Required. Known values are: "Daily", "Weekly", and "Monthly". :vartype recurrence_type: str or ~azure.mgmt.alertsmanagement.models.RecurrenceType :ivar start_time: Start time for recurrence. :vartype start_time: str :ivar end_time: End time for recurrence. :vartype end_time: str """ _validation = { "recurrence_type": {"required": True}, } _attribute_map = { "recurrence_type": {"key": "recurrenceType", "type": "str"}, "start_time": {"key": "startTime", "type": "str"}, "end_time": {"key": "endTime", "type": "str"}, } _subtype_map = { "recurrence_type": {"Daily": "DailyRecurrence", "Monthly": "MonthlyRecurrence", "Weekly": "WeeklyRecurrence"} } def __init__(self, *, start_time: Optional[str] = None, end_time: Optional[str] = None, **kwargs): """ :keyword start_time: Start time for recurrence. :paramtype start_time: str :keyword end_time: End time for recurrence. :paramtype end_time: str """ super().__init__(**kwargs) self.recurrence_type = None # type: Optional[str] self.start_time = start_time self.end_time = end_time
[docs]class DailyRecurrence(Recurrence): """Daily recurrence object. All required parameters must be populated in order to send to Azure. :ivar recurrence_type: Specifies when the recurrence should be applied. Required. Known values are: "Daily", "Weekly", and "Monthly". :vartype recurrence_type: str or ~azure.mgmt.alertsmanagement.models.RecurrenceType :ivar start_time: Start time for recurrence. :vartype start_time: str :ivar end_time: End time for recurrence. :vartype end_time: str """ _validation = { "recurrence_type": {"required": True}, } _attribute_map = { "recurrence_type": {"key": "recurrenceType", "type": "str"}, "start_time": {"key": "startTime", "type": "str"}, "end_time": {"key": "endTime", "type": "str"}, } def __init__(self, *, start_time: Optional[str] = None, end_time: Optional[str] = None, **kwargs): """ :keyword start_time: Start time for recurrence. :paramtype start_time: str :keyword end_time: End time for recurrence. :paramtype end_time: str """ super().__init__(start_time=start_time, end_time=end_time, **kwargs) self.recurrence_type = "Daily" # type: str
[docs]class ErrorResponse(_serialization.Model): """An error response from the service. :ivar error: Details of error response. :vartype error: ~azure.mgmt.alertsmanagement.models.ErrorResponseBody """ _attribute_map = { "error": {"key": "error", "type": "ErrorResponseBody"}, } def __init__(self, *, error: Optional["_models.ErrorResponseBody"] = None, **kwargs): """ :keyword error: Details of error response. :paramtype error: ~azure.mgmt.alertsmanagement.models.ErrorResponseBody """ super().__init__(**kwargs) self.error = error
[docs]class ErrorResponseAutoGenerated(_serialization.Model): """An error response from the service. :ivar error: Details of error response. :vartype error: ~azure.mgmt.alertsmanagement.models.ErrorResponseBodyAutoGenerated """ _attribute_map = { "error": {"key": "error", "type": "ErrorResponseBodyAutoGenerated"}, } def __init__(self, *, error: Optional["_models.ErrorResponseBodyAutoGenerated"] = None, **kwargs): """ :keyword error: Details of error response. :paramtype error: ~azure.mgmt.alertsmanagement.models.ErrorResponseBodyAutoGenerated """ super().__init__(**kwargs) self.error = error
[docs]class ErrorResponseAutoGenerated2(_serialization.Model): """An error response from the service. :ivar error: Details of error response. :vartype error: ~azure.mgmt.alertsmanagement.models.ErrorResponseBodyAutoGenerated2 """ _attribute_map = { "error": {"key": "error", "type": "ErrorResponseBodyAutoGenerated2"}, } def __init__(self, *, error: Optional["_models.ErrorResponseBodyAutoGenerated2"] = None, **kwargs): """ :keyword error: Details of error response. :paramtype error: ~azure.mgmt.alertsmanagement.models.ErrorResponseBodyAutoGenerated2 """ super().__init__(**kwargs) self.error = error
[docs]class ErrorResponseBody(_serialization.Model): """Details of error response. :ivar code: Error code, intended to be consumed programmatically. :vartype code: str :ivar message: Description of the error, intended for display in user interface. :vartype message: str :ivar target: Target of the particular error, for example name of the property. :vartype target: str :ivar details: A list of additional details about the error. :vartype details: list[~azure.mgmt.alertsmanagement.models.ErrorResponseBody] """ _attribute_map = { "code": {"key": "code", "type": "str"}, "message": {"key": "message", "type": "str"}, "target": {"key": "target", "type": "str"}, "details": {"key": "details", "type": "[ErrorResponseBody]"}, } def __init__( self, *, code: Optional[str] = None, message: Optional[str] = None, target: Optional[str] = None, details: Optional[List["_models.ErrorResponseBody"]] = None, **kwargs ): """ :keyword code: Error code, intended to be consumed programmatically. :paramtype code: str :keyword message: Description of the error, intended for display in user interface. :paramtype message: str :keyword target: Target of the particular error, for example name of the property. :paramtype target: str :keyword details: A list of additional details about the error. :paramtype details: list[~azure.mgmt.alertsmanagement.models.ErrorResponseBody] """ super().__init__(**kwargs) self.code = code self.message = message self.target = target self.details = details
[docs]class ErrorResponseBodyAutoGenerated(_serialization.Model): """Details of error response. :ivar code: Error code, intended to be consumed programmatically. :vartype code: str :ivar message: Description of the error, intended for display in user interface. :vartype message: str :ivar target: Target of the particular error, for example name of the property. :vartype target: str :ivar details: A list of additional details about the error. :vartype details: list[~azure.mgmt.alertsmanagement.models.ErrorResponseBodyAutoGenerated] """ _attribute_map = { "code": {"key": "code", "type": "str"}, "message": {"key": "message", "type": "str"}, "target": {"key": "target", "type": "str"}, "details": {"key": "details", "type": "[ErrorResponseBodyAutoGenerated]"}, } def __init__( self, *, code: Optional[str] = None, message: Optional[str] = None, target: Optional[str] = None, details: Optional[List["_models.ErrorResponseBodyAutoGenerated"]] = None, **kwargs ): """ :keyword code: Error code, intended to be consumed programmatically. :paramtype code: str :keyword message: Description of the error, intended for display in user interface. :paramtype message: str :keyword target: Target of the particular error, for example name of the property. :paramtype target: str :keyword details: A list of additional details about the error. :paramtype details: list[~azure.mgmt.alertsmanagement.models.ErrorResponseBodyAutoGenerated] """ super().__init__(**kwargs) self.code = code self.message = message self.target = target self.details = details
[docs]class ErrorResponseBodyAutoGenerated2(_serialization.Model): """Details of error response. :ivar code: Error code, intended to be consumed programmatically. :vartype code: str :ivar message: Description of the error, intended for display in user interface. :vartype message: str :ivar target: Target of the particular error, for example name of the property. :vartype target: str :ivar details: A list of additional details about the error. :vartype details: list[~azure.mgmt.alertsmanagement.models.ErrorResponseBodyAutoGenerated2] """ _attribute_map = { "code": {"key": "code", "type": "str"}, "message": {"key": "message", "type": "str"}, "target": {"key": "target", "type": "str"}, "details": {"key": "details", "type": "[ErrorResponseBodyAutoGenerated2]"}, } def __init__( self, *, code: Optional[str] = None, message: Optional[str] = None, target: Optional[str] = None, details: Optional[List["_models.ErrorResponseBodyAutoGenerated2"]] = None, **kwargs ): """ :keyword code: Error code, intended to be consumed programmatically. :paramtype code: str :keyword message: Description of the error, intended for display in user interface. :paramtype message: str :keyword target: Target of the particular error, for example name of the property. :paramtype target: str :keyword details: A list of additional details about the error. :paramtype details: list[~azure.mgmt.alertsmanagement.models.ErrorResponseBodyAutoGenerated2] """ super().__init__(**kwargs) self.code = code self.message = message self.target = target self.details = details
[docs]class Essentials(_serialization.Model): # pylint: disable=too-many-instance-attributes """This object contains consistent fields across different monitor services. Variables are only populated by the server, and will be ignored when sending a request. :ivar severity: Severity of alert Sev0 being highest and Sev4 being lowest. Known values are: "Sev0", "Sev1", "Sev2", "Sev3", and "Sev4". :vartype severity: str or ~azure.mgmt.alertsmanagement.models.Severity :ivar signal_type: The type of signal the alert is based on, which could be metrics, logs or activity logs. Known values are: "Metric", "Log", and "Unknown". :vartype signal_type: str or ~azure.mgmt.alertsmanagement.models.SignalType :ivar alert_state: Alert object state, which can be modified by the user. Known values are: "New", "Acknowledged", and "Closed". :vartype alert_state: str or ~azure.mgmt.alertsmanagement.models.AlertState :ivar monitor_condition: Condition of the rule at the monitor service. It represents whether the underlying conditions have crossed the defined alert rule thresholds. Known values are: "Fired" and "Resolved". :vartype monitor_condition: str or ~azure.mgmt.alertsmanagement.models.MonitorCondition :ivar target_resource: Target ARM resource, on which alert got created. :vartype target_resource: str :ivar target_resource_name: Name of the target ARM resource name, on which alert got created. :vartype target_resource_name: str :ivar target_resource_group: Resource group of target ARM resource, on which alert got created. :vartype target_resource_group: str :ivar target_resource_type: Resource type of target ARM resource, on which alert got created. :vartype target_resource_type: str :ivar monitor_service: Monitor service on which the rule(monitor) is set. Known values are: "Application Insights", "ActivityLog Administrative", "ActivityLog Security", "ActivityLog Recommendation", "ActivityLog Policy", "ActivityLog Autoscale", "Log Analytics", "Nagios", "Platform", "SCOM", "ServiceHealth", "SmartDetector", "VM Insights", and "Zabbix". :vartype monitor_service: str or ~azure.mgmt.alertsmanagement.models.MonitorService :ivar alert_rule: Rule(monitor) which fired alert instance. Depending on the monitor service, this would be ARM id or name of the rule. :vartype alert_rule: str :ivar source_created_id: Unique Id created by monitor service for each alert instance. This could be used to track the issue at the monitor service, in case of Nagios, Zabbix, SCOM etc. :vartype source_created_id: str :ivar smart_group_id: Unique Id of the smart group. :vartype smart_group_id: str :ivar smart_grouping_reason: Verbose reason describing the reason why this alert instance is added to a smart group. :vartype smart_grouping_reason: str :ivar start_date_time: Creation time(ISO-8601 format) of alert instance. :vartype start_date_time: ~datetime.datetime :ivar last_modified_date_time: Last modification time(ISO-8601 format) of alert instance. :vartype last_modified_date_time: ~datetime.datetime :ivar monitor_condition_resolved_date_time: Resolved time(ISO-8601 format) of alert instance. This will be updated when monitor service resolves the alert instance because the rule condition is no longer met. :vartype monitor_condition_resolved_date_time: ~datetime.datetime :ivar last_modified_user_name: User who last modified the alert, in case of monitor service updates user would be 'system', otherwise name of the user. :vartype last_modified_user_name: str :ivar action_status: Action status. :vartype action_status: ~azure.mgmt.alertsmanagement.models.ActionStatus :ivar description: Alert description. :vartype description: str """ _validation = { "severity": {"readonly": True}, "signal_type": {"readonly": True}, "alert_state": {"readonly": True}, "monitor_condition": {"readonly": True}, "monitor_service": {"readonly": True}, "alert_rule": {"readonly": True}, "source_created_id": {"readonly": True}, "smart_group_id": {"readonly": True}, "smart_grouping_reason": {"readonly": True}, "start_date_time": {"readonly": True}, "last_modified_date_time": {"readonly": True}, "monitor_condition_resolved_date_time": {"readonly": True}, "last_modified_user_name": {"readonly": True}, } _attribute_map = { "severity": {"key": "severity", "type": "str"}, "signal_type": {"key": "signalType", "type": "str"}, "alert_state": {"key": "alertState", "type": "str"}, "monitor_condition": {"key": "monitorCondition", "type": "str"}, "target_resource": {"key": "targetResource", "type": "str"}, "target_resource_name": {"key": "targetResourceName", "type": "str"}, "target_resource_group": {"key": "targetResourceGroup", "type": "str"}, "target_resource_type": {"key": "targetResourceType", "type": "str"}, "monitor_service": {"key": "monitorService", "type": "str"}, "alert_rule": {"key": "alertRule", "type": "str"}, "source_created_id": {"key": "sourceCreatedId", "type": "str"}, "smart_group_id": {"key": "smartGroupId", "type": "str"}, "smart_grouping_reason": {"key": "smartGroupingReason", "type": "str"}, "start_date_time": {"key": "startDateTime", "type": "iso-8601"}, "last_modified_date_time": {"key": "lastModifiedDateTime", "type": "iso-8601"}, "monitor_condition_resolved_date_time": {"key": "monitorConditionResolvedDateTime", "type": "iso-8601"}, "last_modified_user_name": {"key": "lastModifiedUserName", "type": "str"}, "action_status": {"key": "actionStatus", "type": "ActionStatus"}, "description": {"key": "description", "type": "str"}, } def __init__( self, *, target_resource: Optional[str] = None, target_resource_name: Optional[str] = None, target_resource_group: Optional[str] = None, target_resource_type: Optional[str] = None, action_status: Optional["_models.ActionStatus"] = None, description: Optional[str] = None, **kwargs ): """ :keyword target_resource: Target ARM resource, on which alert got created. :paramtype target_resource: str :keyword target_resource_name: Name of the target ARM resource name, on which alert got created. :paramtype target_resource_name: str :keyword target_resource_group: Resource group of target ARM resource, on which alert got created. :paramtype target_resource_group: str :keyword target_resource_type: Resource type of target ARM resource, on which alert got created. :paramtype target_resource_type: str :keyword action_status: Action status. :paramtype action_status: ~azure.mgmt.alertsmanagement.models.ActionStatus :keyword description: Alert description. :paramtype description: str """ super().__init__(**kwargs) self.severity = None self.signal_type = None self.alert_state = None self.monitor_condition = None self.target_resource = target_resource self.target_resource_name = target_resource_name self.target_resource_group = target_resource_group self.target_resource_type = target_resource_type self.monitor_service = None self.alert_rule = None self.source_created_id = None self.smart_group_id = None self.smart_grouping_reason = None self.start_date_time = None self.last_modified_date_time = None self.monitor_condition_resolved_date_time = None self.last_modified_user_name = None self.action_status = action_status self.description = description
[docs]class MonitorServiceDetails(_serialization.Model): """Details of a monitor service. :ivar name: Monitor service name. :vartype name: str :ivar display_name: Monitor service display name. :vartype display_name: str """ _attribute_map = { "name": {"key": "name", "type": "str"}, "display_name": {"key": "displayName", "type": "str"}, } def __init__(self, *, name: Optional[str] = None, display_name: Optional[str] = None, **kwargs): """ :keyword name: Monitor service name. :paramtype name: str :keyword display_name: Monitor service display name. :paramtype display_name: str """ super().__init__(**kwargs) self.name = name self.display_name = display_name
[docs]class MonitorServiceList(AlertsMetaDataProperties): """Monitor service details. All required parameters must be populated in order to send to Azure. :ivar metadata_identifier: Identification of the information to be retrieved by API call. Required. "MonitorServiceList" :vartype metadata_identifier: str or ~azure.mgmt.alertsmanagement.models.MetadataIdentifier :ivar data: Array of operations. Required. :vartype data: list[~azure.mgmt.alertsmanagement.models.MonitorServiceDetails] """ _validation = { "metadata_identifier": {"required": True}, "data": {"required": True}, } _attribute_map = { "metadata_identifier": {"key": "metadataIdentifier", "type": "str"}, "data": {"key": "data", "type": "[MonitorServiceDetails]"}, } def __init__(self, *, data: List["_models.MonitorServiceDetails"], **kwargs): """ :keyword data: Array of operations. Required. :paramtype data: list[~azure.mgmt.alertsmanagement.models.MonitorServiceDetails] """ super().__init__(**kwargs) self.metadata_identifier = "MonitorServiceList" # type: str self.data = data
[docs]class MonthlyRecurrence(Recurrence): """Monthly recurrence object. All required parameters must be populated in order to send to Azure. :ivar recurrence_type: Specifies when the recurrence should be applied. Required. Known values are: "Daily", "Weekly", and "Monthly". :vartype recurrence_type: str or ~azure.mgmt.alertsmanagement.models.RecurrenceType :ivar start_time: Start time for recurrence. :vartype start_time: str :ivar end_time: End time for recurrence. :vartype end_time: str :ivar days_of_month: Specifies the values for monthly recurrence pattern. Required. :vartype days_of_month: list[int] """ _validation = { "recurrence_type": {"required": True}, "days_of_month": {"required": True}, } _attribute_map = { "recurrence_type": {"key": "recurrenceType", "type": "str"}, "start_time": {"key": "startTime", "type": "str"}, "end_time": {"key": "endTime", "type": "str"}, "days_of_month": {"key": "daysOfMonth", "type": "[int]"}, } def __init__( self, *, days_of_month: List[int], start_time: Optional[str] = None, end_time: Optional[str] = None, **kwargs ): """ :keyword start_time: Start time for recurrence. :paramtype start_time: str :keyword end_time: End time for recurrence. :paramtype end_time: str :keyword days_of_month: Specifies the values for monthly recurrence pattern. Required. :paramtype days_of_month: list[int] """ super().__init__(start_time=start_time, end_time=end_time, **kwargs) self.recurrence_type = "Monthly" # type: str self.days_of_month = days_of_month
[docs]class Operation(_serialization.Model): """Operation provided by provider. :ivar name: Name of the operation. :vartype name: str :ivar display: Properties of the operation. :vartype display: ~azure.mgmt.alertsmanagement.models.OperationDisplay :ivar origin: Origin of the operation. :vartype origin: str """ _attribute_map = { "name": {"key": "name", "type": "str"}, "display": {"key": "display", "type": "OperationDisplay"}, "origin": {"key": "origin", "type": "str"}, } def __init__( self, *, name: Optional[str] = None, display: Optional["_models.OperationDisplay"] = None, origin: Optional[str] = None, **kwargs ): """ :keyword name: Name of the operation. :paramtype name: str :keyword display: Properties of the operation. :paramtype display: ~azure.mgmt.alertsmanagement.models.OperationDisplay :keyword origin: Origin of the operation. :paramtype origin: str """ super().__init__(**kwargs) self.name = name self.display = display self.origin = origin
[docs]class OperationDisplay(_serialization.Model): """Properties of the operation. :ivar provider: Provider name. :vartype provider: str :ivar resource: Resource name. :vartype resource: str :ivar operation: Operation name. :vartype operation: str :ivar description: Description of the operation. :vartype description: str """ _attribute_map = { "provider": {"key": "provider", "type": "str"}, "resource": {"key": "resource", "type": "str"}, "operation": {"key": "operation", "type": "str"}, "description": {"key": "description", "type": "str"}, } def __init__( self, *, provider: Optional[str] = None, resource: Optional[str] = None, operation: Optional[str] = None, description: Optional[str] = None, **kwargs ): """ :keyword provider: Provider name. :paramtype provider: str :keyword resource: Resource name. :paramtype resource: str :keyword operation: Operation name. :paramtype operation: str :keyword description: Description of the operation. :paramtype description: str """ super().__init__(**kwargs) self.provider = provider self.resource = resource self.operation = operation self.description = description
[docs]class OperationsList(_serialization.Model): """Lists the operations available in the AlertsManagement RP. All required parameters must be populated in order to send to Azure. :ivar next_link: URL to fetch the next set of alerts. :vartype next_link: str :ivar value: Array of operations. Required. :vartype value: list[~azure.mgmt.alertsmanagement.models.Operation] """ _validation = { "value": {"required": True}, } _attribute_map = { "next_link": {"key": "nextLink", "type": "str"}, "value": {"key": "value", "type": "[Operation]"}, } def __init__(self, *, value: List["_models.Operation"], next_link: Optional[str] = None, **kwargs): """ :keyword next_link: URL to fetch the next set of alerts. :paramtype next_link: str :keyword value: Array of operations. Required. :paramtype value: list[~azure.mgmt.alertsmanagement.models.Operation] """ super().__init__(**kwargs) self.next_link = next_link self.value = value
[docs]class PatchObject(_serialization.Model): """Data contract for patch. :ivar tags: Tags to be updated. :vartype tags: dict[str, str] :ivar enabled: Indicates if the given alert processing rule is enabled or disabled. :vartype enabled: bool """ _attribute_map = { "tags": {"key": "tags", "type": "{str}"}, "enabled": {"key": "properties.enabled", "type": "bool"}, } def __init__(self, *, tags: Optional[Dict[str, str]] = None, enabled: Optional[bool] = None, **kwargs): """ :keyword tags: Tags to be updated. :paramtype tags: dict[str, str] :keyword enabled: Indicates if the given alert processing rule is enabled or disabled. :paramtype enabled: bool """ super().__init__(**kwargs) self.tags = tags self.enabled = enabled
[docs]class RemoveAllActionGroups(Action): """Indicates if all action groups should be removed. All required parameters must be populated in order to send to Azure. :ivar action_type: Action that should be applied. Required. Known values are: "AddActionGroups" and "RemoveAllActionGroups". :vartype action_type: str or ~azure.mgmt.alertsmanagement.models.ActionType """ _validation = { "action_type": {"required": True}, } _attribute_map = { "action_type": {"key": "actionType", "type": "str"}, } def __init__(self, **kwargs): """ """ super().__init__(**kwargs) self.action_type = "RemoveAllActionGroups" # type: str
[docs]class Schedule(_serialization.Model): """Scheduling configuration for a given alert processing rule. :ivar effective_from: Scheduling effective from time. Date-Time in ISO-8601 format without timezone suffix. :vartype effective_from: str :ivar effective_until: Scheduling effective until time. Date-Time in ISO-8601 format without timezone suffix. :vartype effective_until: str :ivar time_zone: Scheduling time zone. :vartype time_zone: str :ivar recurrences: List of recurrences. :vartype recurrences: list[~azure.mgmt.alertsmanagement.models.Recurrence] """ _validation = { "effective_from": {"pattern": r"^(?:(\d{4}-\d{2}-\d{2})T(\d{2}:\d{2}:\d{2}(?:\.\d+)?))$"}, "effective_until": {"pattern": r"^(?:(\d{4}-\d{2}-\d{2})T(\d{2}:\d{2}:\d{2}(?:\.\d+)?))$"}, } _attribute_map = { "effective_from": {"key": "effectiveFrom", "type": "str"}, "effective_until": {"key": "effectiveUntil", "type": "str"}, "time_zone": {"key": "timeZone", "type": "str"}, "recurrences": {"key": "recurrences", "type": "[Recurrence]"}, } def __init__( self, *, effective_from: Optional[str] = None, effective_until: Optional[str] = None, time_zone: Optional[str] = None, recurrences: Optional[List["_models.Recurrence"]] = None, **kwargs ): """ :keyword effective_from: Scheduling effective from time. Date-Time in ISO-8601 format without timezone suffix. :paramtype effective_from: str :keyword effective_until: Scheduling effective until time. Date-Time in ISO-8601 format without timezone suffix. :paramtype effective_until: str :keyword time_zone: Scheduling time zone. :paramtype time_zone: str :keyword recurrences: List of recurrences. :paramtype recurrences: list[~azure.mgmt.alertsmanagement.models.Recurrence] """ super().__init__(**kwargs) self.effective_from = effective_from self.effective_until = effective_until self.time_zone = time_zone self.recurrences = recurrences
[docs]class SmartGroup(Resource): # pylint: disable=too-many-instance-attributes """Set of related alerts grouped together smartly by AMS. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Azure resource Id. :vartype id: str :ivar type: Azure resource type. :vartype type: str :ivar name: Azure resource name. :vartype name: str :ivar alerts_count: Total number of alerts in smart group. :vartype alerts_count: int :ivar smart_group_state: Smart group state. Known values are: "New", "Acknowledged", and "Closed". :vartype smart_group_state: str or ~azure.mgmt.alertsmanagement.models.State :ivar severity: Severity of smart group is the highest(Sev0 >... > Sev4) severity of all the alerts in the group. Known values are: "Sev0", "Sev1", "Sev2", "Sev3", and "Sev4". :vartype severity: str or ~azure.mgmt.alertsmanagement.models.Severity :ivar start_date_time: Creation time of smart group. Date-Time in ISO-8601 format. :vartype start_date_time: ~datetime.datetime :ivar last_modified_date_time: Last updated time of smart group. Date-Time in ISO-8601 format. :vartype last_modified_date_time: ~datetime.datetime :ivar last_modified_user_name: Last modified by user name. :vartype last_modified_user_name: str :ivar resources: Summary of target resources in the smart group. :vartype resources: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :ivar resource_types: Summary of target resource types in the smart group. :vartype resource_types: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :ivar resource_groups: Summary of target resource groups in the smart group. :vartype resource_groups: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :ivar monitor_services: Summary of monitorServices in the smart group. :vartype monitor_services: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :ivar monitor_conditions: Summary of monitorConditions in the smart group. :vartype monitor_conditions: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :ivar alert_states: Summary of alertStates in the smart group. :vartype alert_states: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :ivar alert_severities: Summary of alertSeverities in the smart group. :vartype alert_severities: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :ivar next_link: The URI to fetch the next page of alerts. Call ListNext() with this URI to fetch the next page alerts. :vartype next_link: str """ _validation = { "id": {"readonly": True}, "type": {"readonly": True}, "name": {"readonly": True}, "smart_group_state": {"readonly": True}, "severity": {"readonly": True}, "start_date_time": {"readonly": True}, "last_modified_date_time": {"readonly": True}, "last_modified_user_name": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "type": {"key": "type", "type": "str"}, "name": {"key": "name", "type": "str"}, "alerts_count": {"key": "properties.alertsCount", "type": "int"}, "smart_group_state": {"key": "properties.smartGroupState", "type": "str"}, "severity": {"key": "properties.severity", "type": "str"}, "start_date_time": {"key": "properties.startDateTime", "type": "iso-8601"}, "last_modified_date_time": {"key": "properties.lastModifiedDateTime", "type": "iso-8601"}, "last_modified_user_name": {"key": "properties.lastModifiedUserName", "type": "str"}, "resources": {"key": "properties.resources", "type": "[SmartGroupAggregatedProperty]"}, "resource_types": {"key": "properties.resourceTypes", "type": "[SmartGroupAggregatedProperty]"}, "resource_groups": {"key": "properties.resourceGroups", "type": "[SmartGroupAggregatedProperty]"}, "monitor_services": {"key": "properties.monitorServices", "type": "[SmartGroupAggregatedProperty]"}, "monitor_conditions": {"key": "properties.monitorConditions", "type": "[SmartGroupAggregatedProperty]"}, "alert_states": {"key": "properties.alertStates", "type": "[SmartGroupAggregatedProperty]"}, "alert_severities": {"key": "properties.alertSeverities", "type": "[SmartGroupAggregatedProperty]"}, "next_link": {"key": "properties.nextLink", "type": "str"}, } def __init__( self, *, alerts_count: Optional[int] = None, resources: Optional[List["_models.SmartGroupAggregatedProperty"]] = None, resource_types: Optional[List["_models.SmartGroupAggregatedProperty"]] = None, resource_groups: Optional[List["_models.SmartGroupAggregatedProperty"]] = None, monitor_services: Optional[List["_models.SmartGroupAggregatedProperty"]] = None, monitor_conditions: Optional[List["_models.SmartGroupAggregatedProperty"]] = None, alert_states: Optional[List["_models.SmartGroupAggregatedProperty"]] = None, alert_severities: Optional[List["_models.SmartGroupAggregatedProperty"]] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword alerts_count: Total number of alerts in smart group. :paramtype alerts_count: int :keyword resources: Summary of target resources in the smart group. :paramtype resources: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :keyword resource_types: Summary of target resource types in the smart group. :paramtype resource_types: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :keyword resource_groups: Summary of target resource groups in the smart group. :paramtype resource_groups: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :keyword monitor_services: Summary of monitorServices in the smart group. :paramtype monitor_services: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :keyword monitor_conditions: Summary of monitorConditions in the smart group. :paramtype monitor_conditions: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :keyword alert_states: Summary of alertStates in the smart group. :paramtype alert_states: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :keyword alert_severities: Summary of alertSeverities in the smart group. :paramtype alert_severities: list[~azure.mgmt.alertsmanagement.models.SmartGroupAggregatedProperty] :keyword next_link: The URI to fetch the next page of alerts. Call ListNext() with this URI to fetch the next page alerts. :paramtype next_link: str """ super().__init__(**kwargs) self.alerts_count = alerts_count self.smart_group_state = None self.severity = None self.start_date_time = None self.last_modified_date_time = None self.last_modified_user_name = None self.resources = resources self.resource_types = resource_types self.resource_groups = resource_groups self.monitor_services = monitor_services self.monitor_conditions = monitor_conditions self.alert_states = alert_states self.alert_severities = alert_severities self.next_link = next_link
[docs]class SmartGroupAggregatedProperty(_serialization.Model): """Aggregated property of each type. :ivar name: Name of the type. :vartype name: str :ivar count: Total number of items of type. :vartype count: int """ _attribute_map = { "name": {"key": "name", "type": "str"}, "count": {"key": "count", "type": "int"}, } def __init__(self, *, name: Optional[str] = None, count: Optional[int] = None, **kwargs): """ :keyword name: Name of the type. :paramtype name: str :keyword count: Total number of items of type. :paramtype count: int """ super().__init__(**kwargs) self.name = name self.count = count
[docs]class SmartGroupModification(Resource): """Alert Modification details. Variables are only populated by the server, and will be ignored when sending a request. :ivar id: Azure resource Id. :vartype id: str :ivar type: Azure resource type. :vartype type: str :ivar name: Azure resource name. :vartype name: str :ivar properties: Properties of the smartGroup modification item. :vartype properties: ~azure.mgmt.alertsmanagement.models.SmartGroupModificationProperties """ _validation = { "id": {"readonly": True}, "type": {"readonly": True}, "name": {"readonly": True}, } _attribute_map = { "id": {"key": "id", "type": "str"}, "type": {"key": "type", "type": "str"}, "name": {"key": "name", "type": "str"}, "properties": {"key": "properties", "type": "SmartGroupModificationProperties"}, } def __init__(self, *, properties: Optional["_models.SmartGroupModificationProperties"] = None, **kwargs): """ :keyword properties: Properties of the smartGroup modification item. :paramtype properties: ~azure.mgmt.alertsmanagement.models.SmartGroupModificationProperties """ super().__init__(**kwargs) self.properties = properties
[docs]class SmartGroupModificationItem(_serialization.Model): """smartGroup modification item. :ivar modification_event: Reason for the modification. Known values are: "SmartGroupCreated", "StateChange", "AlertAdded", and "AlertRemoved". :vartype modification_event: str or ~azure.mgmt.alertsmanagement.models.SmartGroupModificationEvent :ivar old_value: Old value. :vartype old_value: str :ivar new_value: New value. :vartype new_value: str :ivar modified_at: Modified date and time. :vartype modified_at: str :ivar modified_by: Modified user details (Principal client name). :vartype modified_by: str :ivar comments: Modification comments. :vartype comments: str :ivar description: Description of the modification. :vartype description: str """ _attribute_map = { "modification_event": {"key": "modificationEvent", "type": "str"}, "old_value": {"key": "oldValue", "type": "str"}, "new_value": {"key": "newValue", "type": "str"}, "modified_at": {"key": "modifiedAt", "type": "str"}, "modified_by": {"key": "modifiedBy", "type": "str"}, "comments": {"key": "comments", "type": "str"}, "description": {"key": "description", "type": "str"}, } def __init__( self, *, modification_event: Optional[Union[str, "_models.SmartGroupModificationEvent"]] = None, old_value: Optional[str] = None, new_value: Optional[str] = None, modified_at: Optional[str] = None, modified_by: Optional[str] = None, comments: Optional[str] = None, description: Optional[str] = None, **kwargs ): """ :keyword modification_event: Reason for the modification. Known values are: "SmartGroupCreated", "StateChange", "AlertAdded", and "AlertRemoved". :paramtype modification_event: str or ~azure.mgmt.alertsmanagement.models.SmartGroupModificationEvent :keyword old_value: Old value. :paramtype old_value: str :keyword new_value: New value. :paramtype new_value: str :keyword modified_at: Modified date and time. :paramtype modified_at: str :keyword modified_by: Modified user details (Principal client name). :paramtype modified_by: str :keyword comments: Modification comments. :paramtype comments: str :keyword description: Description of the modification. :paramtype description: str """ super().__init__(**kwargs) self.modification_event = modification_event self.old_value = old_value self.new_value = new_value self.modified_at = modified_at self.modified_by = modified_by self.comments = comments self.description = description
[docs]class SmartGroupModificationProperties(_serialization.Model): """Properties of the smartGroup modification item. Variables are only populated by the server, and will be ignored when sending a request. :ivar smart_group_id: Unique Id of the smartGroup for which the history is being retrieved. :vartype smart_group_id: str :ivar modifications: Modification details. :vartype modifications: list[~azure.mgmt.alertsmanagement.models.SmartGroupModificationItem] :ivar next_link: URL to fetch the next set of results. :vartype next_link: str """ _validation = { "smart_group_id": {"readonly": True}, } _attribute_map = { "smart_group_id": {"key": "smartGroupId", "type": "str"}, "modifications": {"key": "modifications", "type": "[SmartGroupModificationItem]"}, "next_link": {"key": "nextLink", "type": "str"}, } def __init__( self, *, modifications: Optional[List["_models.SmartGroupModificationItem"]] = None, next_link: Optional[str] = None, **kwargs ): """ :keyword modifications: Modification details. :paramtype modifications: list[~azure.mgmt.alertsmanagement.models.SmartGroupModificationItem] :keyword next_link: URL to fetch the next set of results. :paramtype next_link: str """ super().__init__(**kwargs) self.smart_group_id = None self.modifications = modifications self.next_link = next_link
[docs]class SmartGroupsList(_serialization.Model): """List the alerts. :ivar next_link: URL to fetch the next set of alerts. :vartype next_link: str :ivar value: List of alerts. :vartype value: list[~azure.mgmt.alertsmanagement.models.SmartGroup] """ _attribute_map = { "next_link": {"key": "nextLink", "type": "str"}, "value": {"key": "value", "type": "[SmartGroup]"}, } def __init__( self, *, next_link: Optional[str] = None, value: Optional[List["_models.SmartGroup"]] = None, **kwargs ): """ :keyword next_link: URL to fetch the next set of alerts. :paramtype next_link: str :keyword value: List of alerts. :paramtype value: list[~azure.mgmt.alertsmanagement.models.SmartGroup] """ super().__init__(**kwargs) self.next_link = next_link self.value = value
[docs]class SystemData(_serialization.Model): """Metadata pertaining to creation and last modification of the resource. :ivar created_by: The identity that created the resource. :vartype created_by: str :ivar created_by_type: The type of identity that created the resource. Known values are: "User", "Application", "ManagedIdentity", and "Key". :vartype created_by_type: str or ~azure.mgmt.alertsmanagement.models.CreatedByType :ivar created_at: The timestamp of resource creation (UTC). :vartype created_at: ~datetime.datetime :ivar last_modified_by: The identity that last modified the resource. :vartype last_modified_by: str :ivar last_modified_by_type: The type of identity that last modified the resource. Known values are: "User", "Application", "ManagedIdentity", and "Key". :vartype last_modified_by_type: str or ~azure.mgmt.alertsmanagement.models.CreatedByType :ivar last_modified_at: The timestamp of resource last modification (UTC). :vartype last_modified_at: ~datetime.datetime """ _attribute_map = { "created_by": {"key": "createdBy", "type": "str"}, "created_by_type": {"key": "createdByType", "type": "str"}, "created_at": {"key": "createdAt", "type": "iso-8601"}, "last_modified_by": {"key": "lastModifiedBy", "type": "str"}, "last_modified_by_type": {"key": "lastModifiedByType", "type": "str"}, "last_modified_at": {"key": "lastModifiedAt", "type": "iso-8601"}, } def __init__( self, *, created_by: Optional[str] = None, created_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, created_at: Optional[datetime.datetime] = None, last_modified_by: Optional[str] = None, last_modified_by_type: Optional[Union[str, "_models.CreatedByType"]] = None, last_modified_at: Optional[datetime.datetime] = None, **kwargs ): """ :keyword created_by: The identity that created the resource. :paramtype created_by: str :keyword created_by_type: The type of identity that created the resource. Known values are: "User", "Application", "ManagedIdentity", and "Key". :paramtype created_by_type: str or ~azure.mgmt.alertsmanagement.models.CreatedByType :keyword created_at: The timestamp of resource creation (UTC). :paramtype created_at: ~datetime.datetime :keyword last_modified_by: The identity that last modified the resource. :paramtype last_modified_by: str :keyword last_modified_by_type: The type of identity that last modified the resource. Known values are: "User", "Application", "ManagedIdentity", and "Key". :paramtype last_modified_by_type: str or ~azure.mgmt.alertsmanagement.models.CreatedByType :keyword last_modified_at: The timestamp of resource last modification (UTC). :paramtype last_modified_at: ~datetime.datetime """ super().__init__(**kwargs) self.created_by = created_by self.created_by_type = created_by_type self.created_at = created_at self.last_modified_by = last_modified_by self.last_modified_by_type = last_modified_by_type self.last_modified_at = last_modified_at
[docs]class WeeklyRecurrence(Recurrence): """Weekly recurrence object. All required parameters must be populated in order to send to Azure. :ivar recurrence_type: Specifies when the recurrence should be applied. Required. Known values are: "Daily", "Weekly", and "Monthly". :vartype recurrence_type: str or ~azure.mgmt.alertsmanagement.models.RecurrenceType :ivar start_time: Start time for recurrence. :vartype start_time: str :ivar end_time: End time for recurrence. :vartype end_time: str :ivar days_of_week: Specifies the values for weekly recurrence pattern. Required. :vartype days_of_week: list[str or ~azure.mgmt.alertsmanagement.models.DaysOfWeek] """ _validation = { "recurrence_type": {"required": True}, "days_of_week": {"required": True}, } _attribute_map = { "recurrence_type": {"key": "recurrenceType", "type": "str"}, "start_time": {"key": "startTime", "type": "str"}, "end_time": {"key": "endTime", "type": "str"}, "days_of_week": {"key": "daysOfWeek", "type": "[str]"}, } def __init__( self, *, days_of_week: List[Union[str, "_models.DaysOfWeek"]], start_time: Optional[str] = None, end_time: Optional[str] = None, **kwargs ): """ :keyword start_time: Start time for recurrence. :paramtype start_time: str :keyword end_time: End time for recurrence. :paramtype end_time: str :keyword days_of_week: Specifies the values for weekly recurrence pattern. Required. :paramtype days_of_week: list[str or ~azure.mgmt.alertsmanagement.models.DaysOfWeek] """ super().__init__(start_time=start_time, end_time=end_time, **kwargs) self.recurrence_type = "Weekly" # type: str self.days_of_week = days_of_week