※個人の備忘録です
実行環境
・Node.js
・AWS Lambda
内容
AWS LambdaからCloudWatchへログを出力させた際に、なぜかログイベントが改行されて表示されており、
原因が分からず困ったので、その際の解決方法を記載します。
lambdaにはサーバーにssh接続した後、サーバーのソフトウェアを取得するコマンドを記載しており、
stream.pipe(process.stdout)でCloudWatchへ出力させていました。
実際のシェル上ではコマンドの結果は改行されて表示されているのに、lambdaの実行結果が出力されているCloudWatchでは1つのログイベントではなく複数のログイベントに渡ってコマンドの実行結果が出力されており、理由がわかりませんでした。
結論としては、改行コード(\n)が含まれているとCloudWatchでも改行されて表示されるためでした。
なので、コマンドの最後に| tr -d "\n" \r"を付けたすことで、解決出来ました。
参考
↧