public class ErrorLogHelper
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
DEVICE_INFO_FILE
Device info filename.
|
static java.lang.String |
ERROR_LOG_FILE_EXTENSION
Error log file extension for the JSON schema.
|
static int |
FRAME_LIMIT
For huge stack traces such as giant StackOverflowError, we keep only beginning and end of frames according to this limit.
|
static int |
MAX_PROPERTY_ITEM_LENGTH
Max length of properties.
|
static java.lang.String |
MINIDUMP_FILE_EXTENSION
Minidump file extension for the NDK crashes.
|
static java.lang.String |
THROWABLE_FILE_EXTENSION
Error log file extension for the serialized throwable for client side inspection.
|
| Constructor and Description |
|---|
ErrorLogHelper() |
| Modifier and Type | Method and Description |
|---|---|
static void |
cleanPendingMinidumps()
Clear (delete all content) pending minidump directory.
|
static void |
clearStaticState() |
static ManagedErrorLog |
createErrorLog(android.content.Context context,
java.lang.Thread thread,
Exception exception,
java.util.Map<java.lang.Thread,java.lang.StackTraceElement[]> allStackTraces,
long initializeTimestamp,
boolean fatal) |
static ManagedErrorLog |
createErrorLog(android.content.Context context,
java.lang.Thread thread,
java.lang.Throwable throwable,
java.util.Map<java.lang.Thread,java.lang.StackTraceElement[]> allStackTraces,
long initializeTimestamp) |
static ErrorReport |
getErrorReportFromErrorLog(ManagedErrorLog log,
java.lang.String stackTrace) |
static java.io.File |
getErrorStorageDirectory() |
static java.io.File |
getLastErrorLogFile() |
static Exception |
getModelExceptionFromThrowable(java.lang.Throwable t) |
static java.io.File |
getNewMinidumpDirectory()
A general folder where unprocessed NDK crashes are saved.
|
static java.io.File[] |
getNewMinidumpFiles() |
static java.io.File |
getNewMinidumpSubfolder()
A one-time run-specific folder where unprocessed NDK crashes are saved.
|
static java.io.File |
getNewMinidumpSubfolderWithContextData(android.content.Context context)
A one-time run-specific folder where unprocessed NDK crashes are saved.
|
static java.io.File |
getPendingMinidumpDirectory()
A folder where minidumps of processed NDK crashes are saved.
|
static com.microsoft.appcenter.ingestion.models.Device |
getStoredDeviceInfo(java.io.File logFolder)
Get deviceInfo data.
|
static java.io.File[] |
getStoredErrorLogFiles() |
static java.io.File |
getStoredThrowableFile(java.util.UUID id) |
static java.lang.String |
getStoredUserInfo(java.io.File logFolder)
Get userId data.
|
static java.util.UUID |
parseLogFolderUuid(java.io.File logFolder)
Parse log folder name UUID.
|
static void |
removeLostThrowableFiles()
Remove throwable files.
|
static void |
removeMinidumpFolder()
Remove the minidump folder.
|
static void |
removeStaleMinidumpSubfolders()
Remove the minidump sub-folders from previous sessions in the 'minidump/new' folder.
|
static void |
removeStoredErrorLogFile(java.util.UUID id) |
static void |
removeStoredThrowableFile(java.util.UUID id) |
static void |
setErrorLogDirectory(java.io.File file) |
static java.util.Map<java.lang.String,java.lang.String> |
validateProperties(java.util.Map<java.lang.String,java.lang.String> properties,
java.lang.String logType)
Validates properties.
|
public static final java.lang.String DEVICE_INFO_FILE
public static final java.lang.String ERROR_LOG_FILE_EXTENSION
public static final java.lang.String THROWABLE_FILE_EXTENSION
public static final int FRAME_LIMIT
public static final int MAX_PROPERTY_ITEM_LENGTH
public static final java.lang.String MINIDUMP_FILE_EXTENSION
@NonNull public static ManagedErrorLog createErrorLog(@NonNull android.content.Context context, @NonNull java.lang.Thread thread, @NonNull java.lang.Throwable throwable, @NonNull java.util.Map<java.lang.Thread,java.lang.StackTraceElement[]> allStackTraces, long initializeTimestamp)
@NonNull public static ManagedErrorLog createErrorLog(@NonNull android.content.Context context, @NonNull java.lang.Thread thread, @NonNull Exception exception, @NonNull java.util.Map<java.lang.Thread,java.lang.StackTraceElement[]> allStackTraces, long initializeTimestamp, boolean fatal)
@NonNull public static java.io.File getErrorStorageDirectory()
@NonNull public static java.io.File getNewMinidumpDirectory()
@NonNull public static java.io.File getNewMinidumpSubfolder()
@NonNull public static java.io.File getNewMinidumpSubfolderWithContextData(android.content.Context context)
@NonNull public static java.io.File getPendingMinidumpDirectory()
@NonNull public static java.io.File[] getStoredErrorLogFiles()
@NonNull public static java.io.File[] getNewMinidumpFiles()
@Nullable public static com.microsoft.appcenter.ingestion.models.Device getStoredDeviceInfo(java.io.File logFolder)
logFolder - folder where to look for stored device information.public static java.lang.String getStoredUserInfo(java.io.File logFolder)
logFolder - folder where to look for stored userId.public static void removeStaleMinidumpSubfolders()
public static void removeMinidumpFolder()
@Nullable public static java.io.File getLastErrorLogFile()
@Nullable
public static java.io.File getStoredThrowableFile(@NonNull
java.util.UUID id)
public static void removeStoredThrowableFile(@NonNull
java.util.UUID id)
public static void removeStoredErrorLogFile(@NonNull
java.util.UUID id)
public static void removeLostThrowableFiles()
@NonNull public static ErrorReport getErrorReportFromErrorLog(@NonNull ManagedErrorLog log, java.lang.String stackTrace)
public static void setErrorLogDirectory(java.io.File file)
@NonNull public static Exception getModelExceptionFromThrowable(@NonNull java.lang.Throwable t)
public static java.util.Map<java.lang.String,java.lang.String> validateProperties(java.util.Map<java.lang.String,java.lang.String> properties,
java.lang.String logType)
properties - Properties collection to validate.logType - Log type.public static void cleanPendingMinidumps()
@NonNull public static java.util.UUID parseLogFolderUuid(java.io.File logFolder)
logFolder - a folder, e.g. lib/files/error/minidump/new/a80da2ae-8c85-43b0-a25b-d52319fb6d56public static void clearStaticState()