コンテンツにスキップ

Log 設定

Log 初期化設定

FTSdk.initLogWithConfig(new FTLoggerConfig()
    //.setEnableConsoleLog(true, "log prefix")
    .setEnableLinkRumData(true)
    .setEnableCustomLog(true)
    .setEnableWebViewLog(true)
    //.setLogLevelFilters(new Status[]{Status.CRITICAL, Status.ERROR})
    .setSamplingRate(0.8f));
FTSdk.initLogWithConfig(
    FTLoggerConfig()
        //.setEnableConsoleLog(true, "log prefix")
        .setEnableLinkRumData(true)
        .setEnableCustomLog(true)
        .setEnableWebViewLog(true)
        //.setLogLevelFilters(arrayOf(Status.CRITICAL, Status.ERROR))
        .setSamplingRate(0.8f)
)
メソッド名 必須 説明
setSamplingRate Float いいえ サンプリングレートを設定します。範囲は [0,1] で、0 は非収集、1 は全収集を意味します。デフォルト値は 1 です。
setEnableConsoleLog Boolean いいえ コンソールログを報告するかどうかを設定します。この設定は ft-plugin に依存し、デフォルトは false です。ログレベルの対応関係は次のとおりです:Log.v -> okLog.i -> infoLog.d -> debugLog.e -> errorLog.w -> warningprefix はコンソールのプレフィックスフィルタリングパラメータで、デフォルトではフィルタリングは設定されません。注意:Android のコンソールログ量は非常に多いため、アプリケーションのパフォーマンスへの影響を避け、不要なリソースの浪費を減らすために、prefix を使用して価値のあるログをフィルタリングすることを推奨します。ft-plugin 1.3.5 以降では、Log.println で出力されたログのキャプチャをサポートしています。
setEnableWebViewLog Boolean いいえ WebView 内の Browser SDK によって生成されたログを収集するかどうかを設定します。デフォルトは false で、ft-sdk 1.7.5 以降でサポートされています。この設定は setEnableCustomLog および setEnableConsoleLog とは独立しています。連携方法については WebView ログ収集 を参照してください。
setEnableLinkRumData Boolean いいえ RUM データと関連付けるかどうかを設定します。デフォルトは false です。
setEnableCustomLog Boolean いいえ カスタムログをアップロードするかどうかを設定します。デフォルトは false です。
setLogLevelFilters Array いいえ ログレベルのフィルタリングを設定します。デフォルトでは設定されません。
addGlobalContext Dictionary いいえ ログのグローバル属性を追加します。追加ルールについてはこちらを参照してください。
setLogCacheLimitCount Int いいえ ローカルキャッシュの最大ログエントリ数の制限 [1000,)。ログが多いほど、ディスクキャッシュの負荷が大きくなります。デフォルトは 5000 です。
setLogCacheDiscardStrategy LogCacheDiscard いいえ ログが上限に達した後の破棄ルールを設定します。デフォルトは LogCacheDiscard.DISCARD で、DISCARD は追加データを破棄し、DISCARD_OLDEST は古いデータを破棄します。

Logger ログ出力

FTLogger を使用してカスタムログを出力するには、FTLoggerConfig.setEnableCustomLog(true) を有効にする必要があります。

現在、ログ内容は 30 KB に制限されており、この文字数を超える部分は切り捨てられます。

使用方法

/**
 * 単一のログデータをローカルに保存し同期します
 *
 * @param content ログ内容
 * @param status  ログレベル、enum Status
 * @param property 追加属性(オプション)
 */
public void logBackground(String content, Status status, HashMap<String, Object> property)

/**
 * 単一のログデータをローカルに保存し同期します
 *
 * @param content ログ内容
 * @param status  ログレベル、String
 * @param property 追加属性(オプション)
 */
public void logBackground(String content, String status, HashMap<String, Object> property)

/**
 * 複数のログデータをローカルに保存し同期します
 *
 * @param logDataList {@link LogData} リスト
 */
public void logBackground(List<LogData> logDataList)
/**
 * 単一のログデータをローカルに保存し同期します
 *
 * @param content ログ内容
 * @param status  ログレベル
 * @param property ログ属性(オプション)
 */
fun logBackground(content: String, status: Status, property: HashMap<String, Any>)

/**
 * 単一のログデータをローカルに保存し同期します
 *
 * @param content ログ内容
 * @param status  ログレベル
 * @param property ログ属性(オプション)
 */
fun logBackground(content: String, status: String, property: HashMap<String, Any>)

/**
 * 複数のログデータをローカルに保存し同期します
 *
 * @param logDataList ログデータリスト
 */
fun logBackground(logDataList: List<LogData>)

ログレベル

メソッド名 説明
Status.DEBUG デバッグ
Status.INFO 情報
Status.WARNING 警告
Status.ERROR エラー
Status.CRITICAL 重大
Status.OK 回復

コード例

// 単一ログのアップロード
FTLogger.getInstance().logBackground("test", Status.INFO);

// HashMap にパラメータを渡す
HashMap<String, Object> map = new HashMap<>();
map.put("ft_key", "ft_value");
FTLogger.getInstance().logBackground("test", Status.INFO, map);

// ログの一括アップロード
List<LogData> logList = new ArrayList<>();
logList.add(new LogData("test", Status.INFO));
FTLogger.getInstance().logBackground(logList);
// 単一ログのアップロード
FTLogger.getInstance().logBackground("test", Status.INFO)

// HashMap にパラメータを渡す
val map = HashMap<String, Any>()
map["ft_key"] = "ft_value"
FTLogger.getInstance().logBackground("test", Status.INFO, map)

// ログの一括アップロード
FTLogger.getInstance().logBackground(mutableListOf(LogData("test", Status.INFO)))

フィードバック

このページは役に立ちましたか?