什么是assertThat()方法?怎么可能有用呢?
我在hadoop的mapreduce程序中见过这个方法。谁能简单解释一下吗?
我有一个自定义资源,用于从 API 网关获取 API 密钥并将其作为标头发送到 Cloudfront。当我创建一个堆栈时,我custom:resource正在触发,因为它是第一次创建逻辑 ID。但是,当我更新堆栈(即更改 API 密钥名称)时,类型的 API 密钥资源AWS::ApiGateway::ApiKey将创建一个新的逻辑 ID,同时又创建一个新的 API 密钥,此时我custom:resource没有调用,因为它具有相同的逻辑 ID因此,我的 Cloudfront 拥有旧的 API 密钥而不是新的。
custom:resource每次我的堆栈发生更新时,有没有办法调用我的?作为一种解决方法,每当我更新堆栈中的资源时,我都会更改Logical Idofcustom:resource以触发它。但这并不困难,因为 logicalId 被共享为许多资源的引用。
顺便说一句,我的自定义资源附加到 lambda 函数。我什至尝试更改Version字段并尝试向属性字段(即堆栈名称、参数等)添加值,但它仍然没有调用。
{
"AWSTemplateFormatVersion" : "2010-09-09",
"Resources" : {
"MyFrontEndTest" : {
"Type": "Custom::PingTester",
"Version" : "1.0", -->Even changed the version to 2.0
"Properties" : {
"ServiceToken": "arn:aws:lambda:us-east-1:*****",
"InputparameterName" : "MYvalue" -->Added this field
}
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢任何帮助表示赞赏
我正在尝试为我的 Firehose 捕获 Cloudwatch 日志,以在将数据发送到S3目的地时发现任何错误。我创建了一个带有日志详细信息的 cloudformation 模板
"CloudWatchLoggingOptions" : {
"Enabled" : "true",
"LogGroupName": "/aws/firehose/firehose-dev", -->firehose-dev is my firehosedeliverystream name
"LogStreamName" : "s3logs"
},
Run Code Online (Sandbox Code Playgroud)
我已授予必要的 IAM 权限来创建loggroupname和streamname.
{
"Sid": "",
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": [
"arn:aws:logs:*:*:*"
]
}
Run Code Online (Sandbox Code Playgroud)
当我触发模板时,我没有在 cloudwatch 日志中找到任何日志组名和流名。
但是当我们为AWS::Lambda资源提供相同的 IAM 权限时,它会自动创建一个/aws/lambda/mylambdaname日志组名(即)并将日志发送到该组。但是为什么这种情况不适用于 firehose ?
作为解决方法
我手动创建AWS::Logs::LogGroup与名称资源/aws/firehose/firehose-dev和AWS::Logs::LogStream资源使用的名称s3logs。
如果我们使用控制台配置 firehose 传输流,firehose 也会自动创建日志组名称和日志流名称。
通过 cloudformation 配置时,firehose 不能像 aws …
amazon-web-services aws-cloudformation amazon-cloudwatchlogs amazon-kinesis-firehose
实际上我有弹性搜索5.1.1并尝试使用以下命令下载kopf插件,我得到了这样的错误..你能帮我解决这个问题吗?
C:\ Users\896323\Downloads\elasticsearch-5.1.1\elasticsearch-5.1.1\bin> plugin install lmenezes/elasticsearch-kopf/2.1.1用于管理已安装的elasticsearch插件的工具
非选项参数:命令
选项说明------ -----------
错误:未知插件lmenezes/elasticsearch-kopf/2.1.1
用例
我有包含资源和 lambda 函数的 cloudformation 模板。通常,当创建堆栈失败时,cloudformation 会回滚堆栈。
但是,如果我推送了一些逻辑错误或配置较少的资源或 lambda 函数怎么办?在这种情况下,我想将堆栈回滚到以前的工作堆栈。
我知道我必须rollback triggers监控我的堆栈并触发警报。但我想手动执行此操作,因为如果我错过了该测试场景并且因此未触发警报怎么办?
可以用cloudformation吗?
谢谢任何帮助表示赞赏