ここではLog & Crash Search転送APIを使用する方法を説明します。
Log & Crash Searchで発行されたAppKeyで、NHN Cloud Logger SDKを初期化します。
API
Supported Platforms ■ UNREAL_ANDROID ■ UNREAL_IOS ■ UNREAL_WINDOWS
void Initialize(const FGamebaseLoggerConfiguration& loggerConfiguration);
Example
void USample::InitializeLogger()
{
FGamebaseLoggerConfiguration Configuration;
Configuration.AppKey = TEXT("USER_LOGGER_APP_KEY");
Configuration.bEnableCrashReporter = true;
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem<UGamebaseSubsystem>(GetGameInstance());
Subsystem->GetLogger()->Initialize(Configuration);
}
Log & Crash Serverへログを転送します。 NHN Cloud Logger SDKは、下記5つのレベルのログを転送できます。 * DEBUG * INFO * WARN * ERROR * FATAL
ログレベルは次のとおりです。
API
Supported Platforms ■ UNREAL_ANDROID ■ UNREAL_IOS ■ UNREAL_WINDOWS
void Debug(const FString& Message, const TMap<FString, FString>& UserFields = TMap<FString, FString>());
void Info(const FString& Message, const TMap<FString, FString>& UserFields = TMap<FString, FString>());
void Warn(const FString& Message, const TMap<FString, FString>& UserFields = TMap<FString, FString>());
void Error(const FString& Message, const TMap<FString, FString>& UserFields = TMap<FString, FString>());
void Fatal(const FString& Message, const TMap<FString, FString>& UserFields = TMap<FString, FString>());
Example
void USample::DebugLogger()
{
TMap<FString, FString> UserFields;
UserFields.Add("KEY_1", "VALUE_1");
UserFields.Add("KEY_2", "VALUE_2");
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem<UGamebaseSubsystem>(GetGameInstance());
Subsystem->GetLogger()->Debug("MESSAGE", UserFields);
}
void USample::InfoLogger()
{
TMap<FString, FString> UserFields;
UserFields.Add("KEY_1", "VALUE_1");
UserFields.Add("KEY_2", "VALUE_2");
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem<UGamebaseSubsystem>(GetGameInstance());
Subsystem->GetLogger()->Info("MESSAGE", UserFields);
}
void USample::WarnLogger()
{
TMap<FString, FString> UserFields;
UserFields.Add("KEY_1", "VALUE_1");
UserFields.Add("KEY_2", "VALUE_2");
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem<UGamebaseSubsystem>(GetGameInstance());
Subsystem->GetLogger()->Warn("MESSAGE", UserFields);
}
void USample::ErrorLogger()
{
TMap<FString, FString> UserFields;
UserFields.Add("KEY_1", "VALUE_1");
UserFields.Add("KEY_2", "VALUE_2");
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem<UGamebaseSubsystem>(GetGameInstance());
Subsystem->GetLogger()->Error("MESSAGE", UserFields);
}
void USample::FatalLogger()
{
TMap<FString, FString> UserFields;
UserFields.Add("KEY_1", "VALUE_1");
UserFields.Add("KEY_2", "VALUE_2");
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem<UGamebaseSubsystem>(GetGameInstance());
Subsystem->GetLogger()->Fatal("MESSAGE", UserFields);
}
ユーザー定義フィールドを設定します。 ユーザー定義フィールドを設定すると、ログ転送APIを呼び出すたびに設定した値とログをサーバーへ転送します。
API
Supported Platforms ■ UNREAL_ANDROID ■ UNREAL_IOS ■ UNREAL_WINDOWS
void SetUserField(const FString& key, const FString& value);
Example
void USample::SetLoggerUserField()
{
UGamebaseSubsystem* Subsystem = UGameInstance::GetSubsystem<UGamebaseSubsystem>(GetGameInstance());
Subsystem->GetLogger()->SetUserField("KEY", "VALUE");
}