AWS日志获取-日志-事件--日志组名称问题 [英] aws log get-log-events --log-group-name problem
本文介绍了AWS日志获取-日志-事件--日志组名称问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试检索包含AWS日志的日志,但AWS CLI命令未正确处理日志组名称:
$ aws logs get-log-events --log-group-name /aws/lambda/mySkillName --log-stream-name '2018/11/28/[$LATEST]4e288b653df8409e977aa4093303761b'
调用GetLogEvents操作时出错(Invalid参数异常):1检测到验证错误:‘logGroupName’处的值‘C:/Program Files/Git/aws/lambda/mySgarName’无法满足约束:成员必须满足正则表达式模式:[.-_/#A-ZA-Z0-9]+`
为什么AWS-CLI在日志组名称前面加上C:/Program Files/Git
?
我在Windows 10上运行此程序。我在Git-Bash和Cygwin bash上得到了类似的结果。
详细信息:
使用--debug
标志:
$AWS日志GET-LOG-EVENTS--DEBUG--日志组名称/aws/lambda/mySkill Name--日志流名称‘2018/11/28/[$LATEST]4e288b653df8409e977aa4093303761b’ 2018-12-06 06:54:13,744-MainThread-awscli.cliDRIVER-DEBUG-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/MySkill Name’,‘--LOG-STREAM-NAME’,‘2018/11/28/[$LATEST]4e288b653df8409e977aa4093303761b’]嗯,不,这些不是我在CLI中输入的参数。更改了
--log-group-name
参数。
它在做什么?
推荐答案
因为参数以/开头,并且它是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问题。
发件人https://github.com/git-for-windows/build-extra/blob/master/ReleaseNotes.md
如果指定以斜杠开头的命令行选项,POSIX到Windows的路径转换将启动转换,例如将"/usr/bin/bash.exe"转换为"C:Program FilesGitusrinash.exe"
解决方案是禁用该转换
MSYS_NO_PATHCONV=1 aws logs get-log-events ...
这篇关于AWS日志获取-日志-事件--日志组名称问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文