我写了一个简单的bash脚本来下载我的RDS postgres文件。 但是踢球者是所有工作都很好的终端,但是当我在脚本中尝试相同的东西时,我得到一个错误:
/usr/bin
有问题的命令是:
An error occurred (DBLogFileNotFoundFault) when calling the DownloadDBLogFilePortion operation: DBLog File: "error/postgresql.log.2017-11-05-23", is not found on the DB instance
一切正常,但是当我在bash脚本中放入完全相同的行时,我得到的错误消息是没有db日志文件 - 这是废话,它们就在那里。
这是bash脚本:
aws rds download-db-log-file-portion --db-instance-identifier foobar --starting-token 0 --output text --log-file error/postgresql.log.2017-11-05-23 >> test.log
TNX, 汤姆
答案 0 :(得分:1)
我稍微重写了您的脚本,它似乎对我有用。它对grep咆哮。这使用jq。
for filename in $( aws rds describe-db-log-files --db-instance-identifier $1 | jq -r '.DescribeDBLogFiles[] | .LogFileName' )
do
aws rds download-db-log-file-portion --db-instance-identifier $1 --output text --no-paginate --log-file $filename >> /tmp/postgres_$1.log.$2
done