この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

ログメッセージ

クライアント側のコードをデバッグするために、Web ブラウザの JavaScript コンソールに出力を書き出すことができます。

$A.log(string[, error]) メソッドを使用して、ログメッセージを JavaScript コンソールに書き出します。

最初のパラメータは、ログに記録する文字列です。

2 つ目のパラメータ (省略可能) は、エラーオブジェクトであり、より詳細な情報を含めることができます。

PROD または PRODDEBUG モードで実行された Lightning コンポーネントの場合、デフォルトでは、$A.log() は出力しません。PROD または PRODDEBUG モードでメッセージをログに記録するには、本番モードでのログを参照してください。または、ブラウザでサポートされていれば console.log() を使用します。

メモ

たとえば、$A.log("This is a log message") は、JavaScript コンソールに次のように出力します。

1This is a log message

クライアント側コントローラの openNote というアクションに $A.log("The name of the action is: " + this.getDef().getName()) を追加すると、JavaScript コンソールには次のように出力されます。

1The name of the action is: openNote

JavaScript コンソールの使用手順については、Web ブラウザの説明を参照してください。

本番モードでのログ

PROD または PRODDEBUG モードでメッセージをログに記録するには、カスタムログ関数を作成します。特定の重大度レベルのログメッセージに登録するには、$A.logger.subscribe(String level, function callback) を使用する必要があります。

最初のパラメータは、登録される重大度レベルです。有効な値は、次のとおりです。

  • ASSERT
  • ERROR
  • INFO
  • WARNING

2 つ目のパラメータは、登録された重大度レベルのメッセージがログに記録されるとコールされるコールバック関数です。

$A.log() は、重大度レベル INFO のメッセージをログに記録します。$A.logger.subscribe("INFO", logCustom) を追加すると、定義したカスタム logCustom() 関数を使用して $A.log() がログを記録します。

クライアント側コントローラのサンプル JavaScript コードを見てみましょう。

1({
2    sampleControllerAction: function(cmp) {
3        // subscribe to severity levels
4        $A.logger.subscribe("INFO", logCustom);
5        // Following subscriptions not exercised here but shown for completeness
6        //$A.logger.subscribe("WARNING", logCustom);
7        //$A.logger.subscribe("ASSERT", logCustom);
8        //$A.logger.subscribe("ERROR", logCustom);
9
10        $A.log("log one arg");
11        $A.log("log two args", {message: "drat and double drat"});
12
13        function logCustom(level, message, error) {
14            console.log(getTimestamp(), "logCustom: ", arguments); 
15        }
16
17        function getTimestamp() {
18            return new Date().toJSON();
19        }
20    }
21
22})

$A.logger.subscribe("INFO", logCustom) は、重大度レベル INFO でメッセージがログに記録されると logCustom() 関数をコールするように登録します。この場合、logCustom() はメッセージをタイムスタンプと一緒にコンソールにログを記録するだけです。

$A.log() コールでは、登録と一致する重大度レベル INFO のログメッセージがログに記録され、logCustom() コールバックが呼び出されます。