aws log get-log-events - проблема log-group-name - PullRequest
0 голосов
/ 06 декабря 2018

Я пытаюсь получить журнал с журналами aws, но имя группы журналов неправильно обрабатывается командой aws cli:

$ aws logs get-log-events --log-group-name /aws/lambda/mySkillName -- log-stream-name '2018/11/28/[$LATEST]4e288b653df8409e977aa4093303761b'

An error occurred (InvalidParameterException) when calling the GetLogEvents operation: 1 validation error detected: Value 'C:/Program Files/Git/aws/lambda/mySkillName' at 'logGroupName' failed to satisfy constraint: Member must satisfy regular expression pattern: [\.\-_/#A-Za-z0-9]+

Почему aws-cli добавляет C:/Program Files/Git к имени группы журналов?

Я запускаю это в Windows 10. Я получаю аналогичные результаты в Git-Bash и Cygwin Bash.

Подробнееинформация:

С флагом --debug:

$ aws logs get-log-events --debug --log-group-name / aws / lambda / mySkillName -log-stream-name '2018/11/28 / [$ LATEST] 4e288b653df8409e977aa4093303761b' 2018-12-06 06: 54: 13,744 - MainThread - awscli.clidriver - ОТЛАДКА - версия CLI: aws-cli / 1.16.65 Python / 2.7.13 Windows / 10 botocore / 1.12.55 2018-12-06 06: 54: 13,746 - MainThread - awscli.clidriver - DEBUG - Аргументы, введенные в CLI: ['logs', 'get-log-events', '-debug ',' --log-group-name ',' C: / Program Files / Git / aws / lambda / mySkillName ',' --log-stream-name ',' 2018/11/28 / [$ LATEST]4e288b653df8409e977aa4093303761b ']

Гм, нет, тене аргументы, которые я ввел в CLI.Что-то изменило аргумент --log-group-name.

Что это делает?

1 Ответ

0 голосов
/ 08 мая 2019

Это потому, что аргумент начинается с / и это специальное монтирование в git-bash:

$ mount
C:/Program Files/Git on / type ntfs (binary,noacl,auto)
C:/Program Files/Git/usr/bin on /bin type ntfs (binary,noacl,auto)
C: on /c type ntfs (binary,noacl,posix=0,user,noumount,auto)

Это проблема git-bash, а не aws-cli.

From https://github.com/git-for-windows/build-extra/blob/master/ReleaseNotes.md

Если вы укажете параметры командной строки, начинающиеся с косой черты, преобразование пути из POSIX в Windows приведет к преобразованию, например, «/usr/bin/bash.exe» в «C: \».Program Files \ Git \ usr \ bin \ bash.exe "

Решение состоит в том, чтобы отключить это преобразование

MSYS_NO_PATHCONV=1 aws logs get-log-events ...
...