Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 由于语法错误,Aws复合报警无法工作_Amazon Web Services_Amazon Cloudformation - Fatal编程技术网

Amazon web services 由于语法错误,Aws复合报警无法工作

Amazon web services 由于语法错误,Aws复合报警无法工作,amazon-web-services,amazon-cloudformation,Amazon Web Services,Amazon Cloudformation,我得到下面提到的CF的这个语法错误 CMP: Type: AWS::CloudWatch::CompositeAlarm DependsOn: - QueueUploadWorkerpproximateNumberOfMessagesVisible - QueueDataWorkerApproximateAgeOfOldestMessage Properties: AlarmName: CMP AlarmDescription: CompositeAlarm AlarmR

我得到下面提到的CF的这个语法错误

    CMP:
Type: AWS::CloudWatch::CompositeAlarm
DependsOn:
 - QueueUploadWorkerpproximateNumberOfMessagesVisible
 - QueueDataWorkerApproximateAgeOfOldestMessage
Properties:
  AlarmName: CMP
  AlarmDescription: CompositeAlarm
  AlarmRule: (ALARM([!Ref 'ALARM1']) AND ALARM([!Ref 'ALARM2']))
  AlarmActions:
       - !Ref SNSTOPIC
资源处理程序返回消息:“AlarmRule[Unsupported token'Alarms1']”在字符13处出错,必须是“)”](服务:AmazonCloudWatch;状态代码:400;错误代码:ValidationError;请求ID:726ebbbd-2e30-447e-9944-4d72d9b63f2c;代理:null)”(请求令牌:92f75190-0b7e-e6f5-f5c0-d18377a82c4c,HandlerErrorCode:InvalidRequest)

您可以使用来引用您的
ALARM1
ALARM2

AlarmRule: !Sub "(ALARM(['${ALARM1}']) AND ALARM(['${ALARM2}']))"

您必须仔细检查规则的语法,但现在将正确引用
ALARM1
ALARM2

为什么不!参考工作here@wasimmir因为它的语法不正确。如果要引用字符串中的值,必须使用Sub。它不起作用。它以另一种方式引用arn,并在下面给出了错误资源处理程序返回的消息:“无法将复合报警保存为报警规则中不存在的报警[arn:aws:cloudwatch:eu-west-1:123456789:alarm:['Alarm1'],arn:aws:cloudwatch:eu-west-1:123456789:alarm:['Alarm2'](服务:AmazonCloudWatch;状态代码:400;错误代码:ValidationError;请求ID:55b75e37-ed60-4fed-a2fc-3576acf5dddb;代理:null)”(请求令牌:e8e41628-4296-8107-74fe-0af24cc066b6,句柄错误代码:InvalidRequest)@wasimmir请分享您的完整代码,而不是几行代码。如果没有完整的示例,很难知道您的错误的上下文。实际问题中的代码,当我在aws文档中提到核心队列名称时,它会起作用,但当我尝试引用它时,我会得到错误。就像在这个URL中它是如何出现的一样