【问题标题】:Metric name for "Count of dead-lettered messages in a Queue/Topic. (Preview)" Azure“队列/主题中的死信消息计数。(预览版)”Azure
【发布时间】:2019-03-21 16:29:47
【问题描述】:

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

在我的 ARM 模板参数中是否已经有一个指标名称可以用于此目的? 如果没有,什么时候可以在我们的 ARM 模板中使用这个指标?

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

但可以手动创建警报规则并选择此指标:

【问题讨论】:

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


    【解决方案1】:

    这是用于创建度量警报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
    

    【讨论】:

    • 非常感谢!您能否告诉我您是如何从门户上的第二个屏幕截图(带有设置)进入屏幕的?或者换句话说,您是如何找到指标名称的?然后我可以更好地了解如何在需要时找到其他指标名称。
    • 第二张截图实际上是来自门户的模板部署。登录portal.azure.com > 所有服务 > 搜索模板docs.microsoft.com/en-us/azure/azure-resource-manager/… 您可以粘贴我的回答中提到的模板,您将看到相同的用户界面。
    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 2018-08-26
      • 1970-01-01
      • 2014-08-30
      • 1970-01-01
      • 2018-09-04
      • 2021-04-11
      • 2012-12-28
      • 1970-01-01
      • 2017-02-13
      相关资源
      最近更新 更多