“队列/主题中的死信邮件数(预览)”的度量标准名称

时间:2019-03-21 16:29:48

标签: azure azure-devops azureservicebus azure-servicebus-topics

对于我们的持续部署,我们希望为主题中的死信消息设置警报规则。在azure门户上,此指标作为预览功能存在。我们想通过ARM模板创建此警报规则。

在我的ARM模板参数中已经可以使用一个度量标准名称吗? 如果没有,什么时候可以在我们的ARM模板中使用该指标?

请参阅此处未列出指标名称:https://docs.microsoft.com/en-us/azure/azure-monitor/platform/metrics-supported#microsoftservicebusnamespaces

但是可以手动创建警报规则并选择以下指标: enter image description here

2 个答案:

答案 0 :(得分:2)

以下是用于创建度量标准警报Count of dead lettered messages in a Queue/Topic的ARM模板:

    {
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "alertName": {
      "type": "string",
      "minLength": 1,
      "metadata": {
        "description": "Name of the alert"
      }
    },
    "alertDescription": {
      "type": "string",
      "defaultValue": "This is a metric alert",
      "metadata": {
        "description": "Description of alert"
      }
    },
    "alertSeverity": {
      "type": "int",
      "defaultValue": 3,
      "allowedValues": [
        0,
        1,
        2,
        3,
        4
      ],
      "metadata": {
        "description": "Severity of alert {0,1,2,3,4}"
      }
    },
    "isEnabled": {
      "type": "bool",
      "defaultValue": true,
      "metadata": {
        "description": "Specifies whether the alert is enabled"
      }
    },
    "resourceId": {
      "type": "string",
      "minLength": 1,
      "metadata": {
        "description": "Full Resource ID of the resource emitting the metric that will be used for the comparison. For example /subscriptions/00000000-0000-0000-0000-0000-00000000/resourceGroups/ResourceGroupName/providers/Microsoft.compute/virtualMachines/VM_xyz"
      }
    },
    "metricName": {
      "type": "string",
      "minLength": 1,
      "metadata": {
        "description": "Name of the metric used in the comparison to activate the alert."
      }
    },
    "operator": {
      "type": "string",
      "defaultValue": "GreaterThan",
      "allowedValues": [
        "Equals",
        "NotEquals",
        "GreaterThan",
        "GreaterThanOrEqual",
        "LessThan",
        "LessThanOrEqual"
      ],
      "metadata": {
        "description": "Operator comparing the current value with the threshold value."
      }
    },
    "threshold": {
      "type": "string",
      "defaultValue": "0",
      "metadata": {
        "description": "The threshold value at which the alert is activated."
      }
    },
    "timeAggregation": {
      "type": "string",
      "defaultValue": "Average",
      "allowedValues": [
        "Average",
        "Minimum",
        "Maximum",
        "Total"
      ],
      "metadata": {
        "description": "How the data that is collected should be combined over time."
      }
    },
    "windowSize": {
      "type": "string",
      "defaultValue": "PT5M",
      "metadata": {
        "description": "Period of time used to monitor alert activity based on the threshold. Must be between five minutes and one day. ISO 8601 duration format."
      }
    },
    "evaluationFrequency": {
      "type": "string",
      "defaultValue": "PT1M",
      "metadata": {
        "description": "how often the metric alert is evaluated represented in ISO 8601 duration format"
      }
    }
  },
  "variables": {},
  "resources": [
    {
      "apiVersion": "2018-03-01",
      "type": "Microsoft.Insights/ActionGroups",
      "name": "testAG12",
      "location": "Global",
      "kind": null,
      "tags": {},
      "properties": {
        "groupShortName": "testAg",
        "enabled": true,
        "emailReceivers": [
          {
            "name": "emailservice_-EmailAction-",
            "emailAddress": "email@contoso.com",
            "status": "Enabled",
            "useCommonAlertSchema": false
          }
        ],
        "smsReceivers": [],
        "webhookReceivers": [],
        "itsmReceivers": [],
        "azureAppPushReceivers": [],
        "automationRunbookReceivers": [],
        "voiceReceivers": [],
        "logicAppReceivers": [],
        "azureFunctionReceivers": [],
        "armRoleReceivers": []
      },
      "identity": null
    },
    {
      "name": "[parameters('alertName')]",
      "type": "Microsoft.Insights/metricAlerts",
      "location": "global",
      "apiVersion": "2018-03-01",
      "tags": {},
      "properties": {
        "description": "[parameters('alertDescription')]",
        "severity": "[parameters('alertSeverity')]",
        "enabled": "[parameters('isEnabled')]",
        "scopes": [ "[parameters('resourceId')]" ],
        "evaluationFrequency": "[parameters('evaluationFrequency')]",
        "windowSize": "[parameters('windowSize')]",
        "criteria": {
          "odata.type": "Microsoft.Azure.Monitor.SingleResourceMultipleMetricCriteria",
          "allOf": [
            {
              "name": "1st criterion",
              "metricName": "[parameters('metricName')]",
              "metricNamespace": "microsoft.servicebus/namespaces",
              "dimensions": [],
              "operator": "[parameters('operator')]",
              "threshold": "[parameters('threshold')]",
              "timeAggregation": "[parameters('timeAggregation')]"
            }
          ]
        },
        "actions": [
          {
            "actionGroupId": "[resourceId('Microsoft.Insights/ActionGroups', 'testAG12')]"
          }
        ]
      }
    }
  ]
}

将以下重要值传递给参数:

Metric Name : DeadletteredMessages
Time Aggregation : Average
Resource Id: Resource ID of your Service Bus Namespace. You can get this from the properties of the service bus blade as shown in below image

enter image description here enter image description here

答案 1 :(得分:0)

我意识到我忘记了Azure门户中的“导出模板”功能。手动创建警报规则或任何资源后,资源组可以导出为ARM模板。在这里,我能够找到包含模板内容的资源,以生成手动创建的资源。

enter image description here