Фильтрация AWS событий необработанного журнала CloudWatch по нескольким значениям / AWS CLI - PullRequest
0 голосов
/ 11 февраля 2020

Учитывая следующий запрос к CloudWatch, который извлекает журналы с сообщениями, включая «запись 1456» (где 1456 - это идентификатор) как мне расширить это, чтобы получить несколько идентификаторов и какова соответствующая команда CLI?

fields  @message
| filter @message like "entry 1456"
| limit 10

Чтобы пояснить, я хотел бы отфильтровать по нескольким идентификаторам, например, «как 1456 | 1257 | 879». Но не уверен в формате регулярного выражения в таком случае.

И я предполагаю, что соответствующая команда CLI будет выглядеть примерно так:

aws logs filter-log-events 
--log-group-name group_name
--app
--filter-pattern ........

Просто хочу убедиться, что лучший способ сформулировать это.

1 Ответ

1 голос
/ 11 февраля 2020

Синтаксис будет следующим:

fields  @message
| filter @message like /entry [1456|1257]/
| limit 10

Вы также можете сначала проанализировать строку журнала и извлечь значение, например так:

fields  @message
| parse @message /.*entry (?<id>\d+).*/
| filter id in [1257, 1456]
| limit 10

Теперь для CLI вы не будете использовать filter-log-events , но start-query и get-query-results .

...