PlanetKitの初期化およびログ設定
アプリケーションでLINE Planetの機能を使用する前にPlanetKitを初期化する必要があります。ここでは、PlanetKitを初期化し、ログを設定するサンプルコードを提供します。
初期化
Configurationオブジェクトを引数としてPlanetKitManager::Initialize()を呼び出し、PlanetKitを初期化します。このとき、必ずUpdateServerUrl()を利用してplanet_base_urlを設定する必要があります。
環境別のplanet_base_url情報は、開発環境で確認できます。
void YourApplication::InitializePlanetKit(bool bLogSizeUnlimited, PlanetKit::ELogLevel eLogLevel, PlanetKit::ELogSizeLimit eLogSizeLimit = PlanetKit::ELogSizeLimit::PLNK_LOG_SIZE_LIMIT_LARGE)
{
PlanetKit::WString strLogPath(L"your_log_path");
PlanetKit::ConfigurationPtr pConfiguration = PlanetKit::Configuration::Create(L"./");
if(bLogSizeUnlimited) {
pConfiguration->EnableLog(strLogPath, L"your_log_file_name", eLogLevel);
}
else {
pConfiguration->EnableLog(strLogPath, eLogLevel, eLogSizeLimit);
}
PlanetKit::PlanetKitManager::Initialize(pConfiguration);
PlanetKit::PlanetKitManagerPtr pPlanetKitManager = PlanetKit::PlanetKitManager::GetInstance();
pPlanetKitManager->UpdateServerUrl(planet_base_url);
}
ログの設定
デバッグが必要な場合、初期化中にConfigurationクラスのEnableLog()を使用してロギングを設定する必要があります。PlanetKitは柔軟なログ設定のために2つのEnableLog()メソッドを提供します。
- デフォルトの設定は、無効になっています。
- PlanetKit 5.1以上のバージョンからは、ファイルでのログ出力のみ可能です。
ログレベル
ログレベルを設定して、デバッグ情報の出力レベルを調整できます。ELogLevel enumで提供するログレベル設定は、次のとおりです。
PLNK_LOG_SIMPLE:PlanetKitが簡単なデバッグ情報を出力します。PLNK_LOG_DETAILED:PlanetKitが詳細なデバッグ情報を出力します。
LINE Planetチームにデバッグを依頼する際には、PLNK_LOG_DETAILEDレベルで生成されたログファイルを共有してください。
サイズ制限付きのロギング設定
サイズ制限に達したときに自動ローテーションされるロギングを設定するには、EnableLog(strLogDirectory, eLogLevel, eLogSizeLimit)メソッドを使用します。
- ログファイル名
- ログファイルは、内部ロジックに従ってローテーションが適用されて生成されます(例:
planetkit.log、planetkit.log.1、planetkit.log.2)。
- ログファイルは、内部ロジックに従ってローテーションが適用されて生成されます(例:
- ログレベル
eLogLevelパラメーターのデフォルト値は、PLNK_LOG_SIMPLEです。
- ログサイズの制限
ELogSizeLimitenumで提供するログサイズ制限の設定は、次のとおりです。PLNK_LOG_SIZE_LIMIT_SMALL:ログファイル全体のサイズ制限は、16MBです。PLNK_LOG_SIZE_LIMIT_MEDIUM:ログファイル全体のサイズ制限は、64MBです。PLNK_LOG_SIZE_LIMIT_LARGE:ログファイル全体のサイズ制限は、256MBです。
eLogSizeLimitパラメーターのデフォルト値は、PLNK_LOG_SIZE_LIMIT_LARGEです。
以下は、サイズ制限付きのロギングを設定するサンプルコードです。
void YourApplication::InitializePlanetKitWithSizeLimit(PlanetKit::ELogLevel eLogLevel, PlanetKit::ELogSizeLimit eLogSizeLimit = PlanetKit::ELogSizeLimit::PLNK_LOG_SIZE_LIMIT_LARGE)
{
PlanetKit::WString strLogPath(L"your_log_path");
PlanetKit::ConfigurationPtr pConfiguration = PlanetKit::Configuration::Create(L"./");
pConfiguration->EnableLog(strLogPath, eLogLevel, eLogSizeLimit);
PlanetKit::PlanetKitManager::Initialize(pConfiguration);
PlanetKit::PlanetKitManagerPtr pPlanetKitManager = PlanetKit::PlanetKitManager::GetInstance();
pPlanetKitManager->UpdateServerUrl(planet_base_url);
}
サイズ制限のないロギング設定
サイズ制限のないロギングを設定するには、EnableLog(strLogDirectory, strLogFileName, eLogLevel)メソッドを使用します。
- ログファイル名
- システムが生成するログファイルのデフォルト形式はタイムスタンプが含まれた
planetkitMMDD_HHMMSS.logです。 - 必要に応じて、
strLogFileNameパラメーターでユーザー指定ファイル名を設定できます。
- システムが生成するログファイルのデフォルト形式はタイムスタンプが含まれた
- ログレベル
eLogLevelパラメーターのデフォルト値は、PLNK_LOG_SIMPLEです。
以下は、サイズ制限のないロギングを設定するサンプルコードです。
void YourApplication::InitializePlanetKitWithoutSizeLimit(PlanetKit::ELogLevel eLogLevel)
{
PlanetKit::WString strLogPath(L"your_log_path");
PlanetKit::ConfigurationPtr pConfiguration = PlanetKit::Configuration::Create(L"./");
pConfiguration->EnableLog(strLogPath, L"your_log_file_name", eLogLevel);
PlanetKit::PlanetKitManager::Initialize(pConfiguration);
PlanetKit::PlanetKitManagerPtr pPlanetKitManager = PlanetKit::PlanetKitManager::GetInstance();
pPlanetKitManager->UpdateServerUrl(planet_base_url);
}