ログ記録 - React Native SDK
アプリのログレベルを設定または変更して、アプリケーションを開発またはデバッグできます。 アプリの環境に応じて、異なる量のデータをログに記録するには、ログレベルを変更することをお勧めします。 さまざまなログ レベルまたはカスタム ロガーを指定できます。
Tip
以下も参照してください。
このページでは、Realm React Native SDK v12.0.0 で追加された Realm ロガーを設定する方法を説明します。 これにより、Realm React Native SDKの以前のバージョンでの同期クライアントのログ レベルの設定が置き換えられます。 以前のバージョンで同期クライアントのログ レベルを設定する方法については、「 クライアント ログ レベルの設定 - React Native SDK 」を参照してください。
Realm ログ レベルの設定または変更
Realm React Native SDKによって報告される詳細のレベルを設定できます。 ログレベルを構成するには、有効なレベルstringの値を setLogLevel() に渡します。
"all"
"trate"
"debug"
"詳細"
"info"
"WARN"
"error"
"false"
"OFF"
Realm.setLogLevel('trace');
アプリ内の任意の場所で setLogLevel()
を使用して、コードのさまざまなポイントでログの冗長度を増減します。 この動作は、非推奨の同期クライアント ログ レベルとは異なります。このログは、同期済み Realm を開く前に設定する必要があり、変更できませんでした。
ロギングをオフにするには、 setLogLevel()
に「OFF」を渡します。
Realm.setLogLevel('off');
ロガーをカスタマイズする
カスタム ロガーを設定するには、 setLogger()を呼び出します。 このメソッドは、個々の Realm ではなく Realm ロガーからlevel
とmessage
引数を受け取ります。 これらの引数を使用して、独自のログ記録動作を定義します。
RealmProvider
で Realm を開く前に、 setLogger()
を使用する必要があります。 RealmProvider
と同じコンポーネントのフックではsetLogger()
を使用できません。これは、 RealmProvider
がマウント時に Realm を開くためです。 フックは通常、コンポーネントがマウントされた後に実行されます。つまり、 RealmProvider
はすでに Realm を開いています。
ほとんどの場合、カスタム ロガーは React ツリーの外部で設定する必要があります。 たとえば、アプリのルートindex.js
ファイル 。
Realm.setLogger((level, message) => { const log = { message, level, }; setLogs(previousLogs => [...previousLogs, log]); });
これにより、どこで設定されているかに関係なく、アプリケーション内のすべての Realm ログのログ動作が設定されます。 ログ レベルを指定しない場合、デフォルトは「情報」です。