すべてのプロダクト
Search
ドキュメントセンター

Function Compute:ロギング

最終更新日:Aug 30, 2024

Node.jsランタイムでログを印刷および表示できます。 ログを使用して問題をすばやく特定したり、分析して関数実行プロセスや期間などの関数実行情報を取得したりできます。 これにより、システムの信頼性と安定性が向上します。

ログの印刷

関数によって標準出力 (stdout) に出力されるログの内容は、サービスの作成時にSimple log Serviceの指定されたLogstoreに保存されます。 次のいずれかの方法を使用して、ログをstdoutに印刷できます。 次のサンプルコードは、ログを印刷する方法を示しています。

ECMAScriptモジュール

説明

この例では、Node.js 18以降のみをサポートします。

export const handler = async (event, context) => {
  process.stdout.write('hi,fc\n');
  console.log('hello,world');
  context.logger.info('hello,fc');
  return "Hello World!";
};

CommonJSモジュール

'usestrict';

exports.handler = (event, context, callback) => {
  process.stdout.write('hi,fc\n');
  console.log('hello,world');
  context.logger.info('hello,fc');
  callback(null, 'hello,world');
};

process.stdout.writeを使用してログを印刷

この方法を使用してログを印刷すると、ログの内容がそのまま印刷されます。 次のログが表示されます。

hi,fc

console.logを使用してログを印刷

この方法を使用してログを印刷する場合、各ログには時間、リクエストID、ログレベルなどの情報が含まれます。 次のログが表示されます。

2023-04-01T10:04:19.024Z 19b394a3-4fff-480c-9b5c-cbdfd6952f4e [silly] hello,world

context.loggerを使用してログを印刷

関数のインスタンス同時実行性を1より大きい値に設定すると、1つの関数インスタンスが複数のリクエストを同時に処理します。 この場合、context.loggerを使用してログを印刷し、リクエストIDで各同時リクエストのログを区別することを推奨します。 次のログが表示されます。

2023-04-01T10:04:19.024Z 19b394a3-4fff-480c-9b5c-cbdfd6952f4e [info] hello,fc

ログの表示

関数の実行後、関数の詳細ページの [ログ] タブでログを表示できます。 詳細については、「関数呼び出しログの表示」をご参照ください。