

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 亚马逊 MQ 上的 RabbitMQ：ARN 无效
<a name="troubleshooting-action-required-codes-invalid-arn"></a>

 当代理中配置的一个或多个 ARNs 无效或无法访问时，亚马逊 MQ 上的 RabbitMQ 将引发一个 INVALID\$1ARN 关键操作所需的代码。这适用于 ARNs 用于更具体的隔离代码（例如 RABBITMQ\$1INVALID\$1ARN\$1LDAP 或 RABBITMQ\$1INVALID\$1ASSUMEROLE 或 RABBITMQ\$1INVALID\$1ASSUMEROLE）未涵盖的 SSL 证书、 AWS Secrets Manager 机密、Amazon S3 对象或其他 AWS 资源引用。

 在 RABBITMQ\$1INVALID\$1ARN 隔离区中的代理可能会遇到功能降级的情况，具体取决于哪些代理无效。 ARNs 依赖于无法访问的资源的功能将不可用，并且代理将记录错误，指出哪个 ARN 无法解析。对代理可用性的影响取决于关键代理操作是否需要无效的 ARN。

## 诊断和解决 RABBITMQ\$1INVALID\$1ARN
<a name="w2aac40c37b7"></a>

 要诊断和解决 RABBITMQ\$1INVALID\$1ARN 操作所需的代码，您必须使用亚马逊 CloudWatch 日志和受影响资源的相应服务控制台。 AWS 

**解决无效的 ARN 问题**

1. 导航至 Amazon CloudWatch Logs Insights，然后对您的经纪人的日志组运行以下查询`/aws/amazonmq/broker/<broker-id>/general`：

   ```
   fields @timestamp, @message
   | sort @timestamp desc
   | filter @message like /error.*aws_arn_config/
   | limit 10000
   ```

1. 查找类似于以下内容的错误消息：

   ```
   [error] <0.254.0> aws_arn_config: {<<"could not resolve ARN 'arn:aws:s3:::bucket-name/certificate.pem' for configuration 'aws.arns.auth_ldap.ssl_options.cacertfile', error: \"AWS service is unavailable\"">>,{error,"AWS service is unavailable"}}
   ```

1. 检查 AWS 资源并修复所有问题，例如：
   + 验证资源是否与代理位于同一 AWS 区域
   + 确认 ARN 语法是否正确
   + 确保 IAM 角色具有访问资源的相应权限

1. 在更新代理配置之前，使用 [ARN 访问验证](arn-support-rabbitmq-configuration.md#arn-support-validation) API 端点验证修复程序。

1. 更新代理配置并重启代理。