Skip to main content
Version: 7.1

PlanetKit initialization and log setting

You must initialize PlanetKit before using any functions of LINE Planet in your application. This page provides a code example for initializing PlanetKit and configuring log settings.

Initialization​

Initialize PlanetKit using PlanetKitManager::Initialize() with a Configuration object. After that, you must set planet_base_url through UpdateServerUrl().

Note

You can find planet_base_url for each environment in Development environment.

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);
}

Log setting​

If you need to debug, you must configure logging using EnableLog() of the Configuration class during initialization. PlanetKit provides two EnableLog() methods for flexible log configuration.

Note
  • By default, the logging is disabled.
  • Starting with PlanetKit 5.1, logs can be output to files only.

Log levels​

You can adjust the level of debug information output by setting the log level. Log level settings available in the ELogLevel enum are as follows:

  • PLNK_LOG_SIMPLE: PlanetKit outputs simple debug information.
  • PLNK_LOG_DETAILED: PlanetKit outputs detailed debug information.
Note

To request debugging from the LINE Planet team, you must send a log file created with the PLNK_LOG_DETAILED level.

Configure logging with size limit​

To configure logging with automatic rotation when the size limit is reached, use the EnableLog(strLogDirectory, eLogLevel, eLogSizeLimit) method.

  • Log file name
    • Log files are created according to internal logic, with rotation applied (for example, planetkit.log, planetkit.log.1, planetkit.log.2).
  • Log level
    • The default value of the eLogLevel parameter is PLNK_LOG_SIMPLE.
  • Log size limit
    • Log size limit settings available in ELogSizeLimit are as follows:
      • PLNK_LOG_SIZE_LIMIT_SMALL: The total size limit of log files is 16MB.
      • PLNK_LOG_SIZE_LIMIT_MEDIUM: The total size limit of log files is 64MB.
      • PLNK_LOG_SIZE_LIMIT_LARGE: The total size limit of log files is 256MB.
    • The default value of the eLogSizeLimit parameter is PLNK_LOG_SIZE_LIMIT_LARGE.

The following is an example of configuring logging with size limit.

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);
}

Configure logging without size limit​

To configure logging without a size limit, use the EnableLog(strLogDirectory, strLogFileName, eLogLevel) method.

  • Log file name
    • The default format of the log file created by the system is planetkitMMDD_HHMMSS.log, which includes a timestamp.
    • Optionally, you can set a custom file name in the strLogFileName parameter.
  • Log level
    • The default value of the eLogLevel parameter is PLNK_LOG_SIMPLE.

The following is an example of configuring logging without size limit.

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);
}