【小ネタ】AWS LambdaでNode.js 10.xがサポートされたので実際に動作しているバージョンを確認してみる

AWS LambdaのNode.js 10.xランタイムで動作しているNode.jsのバージョンを調査してみました。
2019.05.14

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

以下のエントリの通り、AWS LambdaでNode.js 10.xが公式にサポートされました!

【アップデート】 LambdaでNode.js v10が利用できるようになりました!!

Node.js 10.x?

ランタイムを見ると、Node.js 10.xが選択できるようになっています。

8.xのときはNode.js 8.10でしたが、10.xはそのままNode.js 10.xとなっています。 ちょっと気になったので、実際どのバージョンが動作しているのか確認してみました。

Node.js 10.xランタイムでLambda関数を新規作成し、以下のようなコードでNode.jsのバージョンを確認してみます。

exports.handler = async (event) => {
    const execSync = require('child_process').execSync;
    const stdout = execSync("node -v").toString();
    console.log(stdout);
    const response = {
        statusCode: 200,
        body: JSON.stringify('Hello from Lambda!'),
    };
    return response;
};

適当なテストイベントで実行すると…

出力結果より、2019/5/14時点でNode.js 10.xランタイムは

v10.15.3

で動作しているようですね。

Lambdaの公式ドキュメント

…と、ここまでやった時点で公式のドキュメントも覗いてみました。

[AWS Lambda]Building Lambda Functions with Node.js

(上記リンクページからの引用)

Name Identifier Node.js Version AWS SDK for JavaScript Operating System
Node.js 10 nodejs10.x 10.15 2.437.0 Amazon Linux 2
Node.js 8.10 nodejs8.10 8.10 2.290.0 Amazon Linux

Node.jsのバージョンも記載されてました。。

おわりに

ドキュメントはちゃんと読もう

【2019/5/15追記】

弊社大栗がもう少し詳細な検証をしていましたので、よろしければこちらもどうぞ。

AWS LambdaのOSがAmazon Linux 2に変わっていたから中身を覗いてみた