Log 設定
このドキュメントは、HarmonyOS Log の初期化設定を説明します。
初期化設定
import { FTSDK, FTLoggerConfig, Status } from '@guancecloud/ft_sdk/Index';
const logGlobalContext = new Map<string, string | number | boolean | object>();
logGlobalContext.set('demo_log_number_tag', 101);
const logConfig = new FTLoggerConfig()
.setSamplingRate(1.0)
.setEnableCustomLog(true)
.setLogLevelFilters([
Status.ERROR,
Status.WARN,
Status.INFO,
Status.DEBUG
])
.setEnableLinkRumData(true)
.addGlobalContext(logGlobalContext)
.setLogCacheLimitCount(10000);
FTSDK.installLogConfig(logConfig);
| メソッド |
型 |
必須 |
説明 |
setSamplingRate |
number |
いいえ |
ログサンプリングレート、範囲 [0.0, 1.0]、デフォルト 1.0 |
setEnableCustomLog |
boolean |
いいえ |
カスタムログを有効にするかどうか、デフォルト false |
setEnableLinkRumData |
boolean |
いいえ |
RUM データに関連付けるかどうか、デフォルト false |
setLogLevelFilters |
Array<Status \| string \| { name: string }> |
いいえ |
ログレベルフィルター、指定可能な値:ERROR、WARN、INFO、DEBUG |
addGlobalContext |
Dictionary |
いいえ |
ログのグローバル属性を追加します。追加ルールはこちらを参照してください。 |
setLogCacheLimitCount |
number |
いいえ |
ログデータのキャッシュ数制限、デフォルト 5000、最小値 1000 |
setLogCacheDiscardStrategy |
LogCacheDiscard |
いいえ |
ログが上限に達した後の破棄ルールを設定します。デフォルトは LogCacheDiscard.DISCARD、DISCARD は追加データを破棄、DISCARD_OLDEST は古いデータを破棄します。 |
ログレベル
| メソッド名 |
意味 |
| Status.TRACE |
トレース |
| Status.DEBUG |
デバッグ |
| Status.INFO |
情報 |
| Status.WARN |
警告 |
| Status.ERROR |
エラー |
| Status.FATAL |
致命的 |
動的に Log グローバル属性を追加
import { FTSDK } from '@guancecloud/ft_sdk/Index'
const dynamicContext = new Map<string, string | number | boolean | object>();
dynamicContext.set('user_level', 'vip')
FTSDK.appendLogGlobalContext(dynamicContext)
FTSDK.appendLogGlobalContextKeyValue('login_state', 'logged_in')
使用上の推奨事項
setLogLevelFilters(...) は FTLogger のビジネスログの報告レベルを制御します。SDK 内部診断ログの setSdkLogLevel(...) とは独立しています。
- デバッグ段階では、
setEnableCustomLog(true)、setDebug(true) を SDK デバッグログ と組み合わせて、収集パイプラインを検証することをお勧めします。
- ログをユーザー行動、ページ、リソースデータと関連付けて分析したい場合は、
setEnableLinkRumData(true) を同時に有効にすることをお勧めします。
- ログ量が多い場合は、サンプリングレートとレベルフィルターで報告量を制御できます。