aws cli logs filter-pattern exclude

时间:2018-06-04 19:19:11

标签: amazon-web-services logging design-patterns filter command-line-interface

我正在尝试从AWS中运行的应用程序获取日志,同时排除包含某个短语的日志:

aws logs filter-log-events --log-group-name $MY_LOG_GROUP --filter-pattern -"dont want"

以上作品。但是,如果我改为尝试:

aws logs filter-log-events --log-group-name $MY_LOG_GROUP --filter-pattern -"dontwant"

我明白了:

aws: error: argument --filter-pattern: expected one argument

我假设我的shell将其解析为另一个标志,而不是--filter-pattern的参数。所以,第一个问题:我如何强制aws cli将其视为一个论点?

如果我改为尝试:

aws logs filter-log-events --log-group-name "$MY_LOG_GROUP" --filter-pattern -"GET /healthcheck"

我明白了:

An error occurred (InvalidParameterException) when calling the FilterLogEvents operation: Invalid filter pattern

第二个问题:这里有什么问题,我该如何解决?

1 个答案:

答案 0 :(得分:1)

请改为尝试:

aws logs filter-log-events --log-group-name $MY_LOG_GROUP --filter-pattern=-"dont want"

aws cli也支持<option>=<value>语法。看起来这是awhile的一个问题。

至于第二个例子,斜杠导致问题,但我认为这是有效的,所以它不会试图解释斜杠;也是awhile的问题:

aws logs filter-log-events --log-group-name "$MY_LOG_GROUP" --filter-pattern='-"GET /healthcheck"'