You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决ARM模板中的MessagingGatewayBadRequest错误?

问题:ARM模板创建Service Bus队列时出现MessagingGatewayBadRequest错误

使用ARM模板创建Service Bus命名空间和队列时,命名空间能成功创建,但队列创建失败,报错如下:

"code": "MessagingGatewayBadRequest",
"message": "

return (<Code>400</Code>)
SubCode=40000. Bad Request. To know more visit https://aka.ms/sbResourceMgrExceptions.

无法定位错误根源,队列配置并不复杂,且微软官方文档未提及该错误。

ARM模板

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.5.6.12127",
      "templateHash": "15173749018276299351"
    }
  },
  "parameters": {
    "environment": {
      "type": "string",
      "allowedValues": ["Dev", "Test", "Prod"],
      "metadata": {
        "description": "Environment for resource group"
      }
    },
    "resourceTags": {
      "type": "object",
      "defaultValue": {
        "Environment": "[parameters('environment')]",
        "BillTo": "specialprojects",
        "Architecture": "AppService",
        "AlertName": "mgmt"
      }
    },
    "serviceBusNamespaceName": {
      "type": "string",
      "metadata": {
        "description": "Name of the Service Bus namespace"
      }
    },
    "queues": {
      "type": "array",
      "metadata": {
        "description": "Array of the Queue"
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Location for all resources."
      }
    }
  },
  "resources": [
    {
      "type": "Microsoft.ServiceBus/namespaces",
      "apiVersion": "2021-11-01",
      "name": "[toLower(parameters('serviceBusNamespaceName'))]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "Standard"
      },
      "properties": {},
      "tags": "[parameters('resourceTags')]"
    },
    {
      "type": "Microsoft.ServiceBus/namespaces/queues",
      "apiVersion": "2021-11-01",
      "name": "[format('{0}/{1}', toLower(parameters('serviceBusNamespaceName')), parameters('queues')[copyIndex()].name)]",
      "copy": {
        "name": "QueueCopy",
        "count": "[length(parameters('queues'))]"
      },
      "properties": {
        "lockDuration": "PT5M",
        "maxSizeInMegabytes": 1024,
        "requiresDuplicateDetection": true,
        "requiresSession": false,
        "deadLetteringOnMessageExpiration": true,
        "duplicateDetectionHistoryTimeWindow": "PT10M",
        "maxDeliveryCount": 10,
        "enablePartitioning": false,
        "enableExpress": false,
        "maxMessageSizeInKilobytes": 10240,
        "autoDeleteOnIdle": "PT48H"
      },
      "dependsOn": [
        "[resourceId('Microsoft.ServiceBus/namespaces', toLower(parameters('serviceBusNamespaceName')))]"
      ],
      "tags": "[parameters('resourceTags')]"
    }
  ]
}

参数文件 (parameters.json)

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "environment": {
      "value": "Dev"
    },
    "serviceBusNamespaceName": {
      "value": "c4p-dev"
    },
    "queues": {
      "value": [
        {
          "name": "dmp"
        },
        {
          "name": "smp"
        },
        {
          "name": "auction"
        }
      ]
    }
  }
}

错误详情

{
  "code": "DeploymentFailed",
  "message": "At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/DeployOperations for usage details.",
  "details": [
    {
      "code": "MessagingGatewayBadRequest",
      "message": "&lt;Error&gt;&lt;Code&gt;400&lt;/Code&gt;&lt;Detail&gt;SubCode=40000. Bad Request. To know more visit https://aka.ms/sbResourceMgrExceptions. . TrackingId:06e867e5-289e-4fdd-956c-2b9684760455_G8, SystemTracker:c4p-dev.servicebus.windows.net:smp, Timestamp:2022-08-11T14:50:04&lt;/Detail&gt;&lt;/Error&gt;"
    },
    {
      "code": "MessagingGatewayBadRequest",
      "message": "&lt;Error&gt;&lt;Code&gt;400&lt;/Code&gt;&lt;Detail&gt;SubCode=40000. Bad Request. To know more visit https://aka.ms/sbResourceMgrExceptions. . TrackingId:5fbdd148-e1c9-4db9-90ac-4ae9dc966ad9_G0, SystemTracker:c4p-dev.servicebus.windows.net:auction, Timestamp:2022-08-11T14:50:04&lt;/Detail&gt;&lt;/Error&gt;"
    },
    {
      "code": "MessagingGatewayBadRequest",
      "message": "&lt;Error&gt;&lt;Code&gt;400&lt;/Code&gt;&lt;Detail&gt;SubCode=40000. Bad Request. To know more visit https://aka.ms/sbResourceMgrExceptions. . TrackingId:005c726d-e8fc-46cc-bd97-d9e688e9cab6_G17, SystemTracker:c4p-dev.servicebus.windows.net:dmp, Timestamp:2022-08-11T14:50:04&lt;/Detail&gt;&lt;/Error&gt;"
    }
  ]
}

错误截图


解决方案

问题根源在于使用了已弃用的API属性:

在2021-11-01版本的Service Bus API中,maxMessageSizeInKilobytes属性已被弃用,取而代之的是maxMessageSizeInBytes。当模板中使用这个弃用属性并设置值时,会触发400错误。

你设置的10240 KB对应10MB,转换成字节为10485760。修改队列的properties配置,替换属性并设置正确值即可解决问题:

"properties": {
  "lockDuration": "PT5M",
  "maxSizeInMegabytes": 1024,
  "requiresDuplicateDetection": true,
  "requiresSession": false,
  "deadLetteringOnMessageExpiration": true,
  "duplicateDetectionHistoryTimeWindow": "PT10M",
  "maxDeliveryCount": 10,
  "enablePartitioning": false,
  "enableExpress": false,
  "maxMessageSizeInBytes": 10485760,
  "autoDeleteOnIdle": "PT48H"
}

另外,也可以直接移除这个属性,因为Service Bus Standard层的默认消息大小就是10MB,无需额外配置。


内容的提问来源于stack exchange,提问作者GThree

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 04:06:24