com.medallia.mxo.logging

All of APIs listed on this page are in the com.medallia.mxo.logging package.

MXOLogComponent

A list of components to filter the messages the MXO SDK will log.

public enum class MXOLogComponent {
    	ANY,
    	INTERACTION,
    	INTERACTION_MAP,
    	ADMIN_UI,
    	OPT_OUT,
    	TOUCHPOINT,
    	CONFIGURATION,
    	OPTIMIZATIONS,
    	AUTHENTICATION,
    	AUTOMATIC,
    	IDENTITY,
    	NETWORKING,
    	DATABASE,
    	STATE,
    	FILELOGGING,
    	APP_INSTALL,
    	NONE,
}
EnumDescription
ANYThe combination of all components listed below other than NONE.
INTERACTIONInteraction tracking log messages.
INTERACTION_MAPInteraction map log messages.
ADMIN_UIAdmin User Interface log messages.
TOUCHPOINTTouchpoint log messages.
CONFIGURATIONConfiguration log messages.
OPTIMIZATIONSOptimization log messages.
AUTHENTICATIONAuthentication log messages.
AUTOMATICAutomatic Interactions log messages.
IDENTITYIdentity Transfer log messages.
NETWORKINGNetworking log messages.
DATABASEDatabase log messages.
STATEState log messages.
FILELOGGINGFile logging messages.
APP_INSTALLApp install Interaction log messages.
NONENeither of the components listed above is logged. Used to opt out of logging.
Note: For more information, see how to use MXO components when configuring logging.

MXOLoggingConfiguration

The logging configuration object for the MXO SDK.

public class MXOLoggingConfiguration private constructor(
	public val levels: Set<MXOLogLevel> = EnumSet.of(WARN, ERROR),
    	public val components: Set<MXOLogComponent> = EnumSet.of(ANY),
    	public val logWriters: Set<MXOLogWriter> = setOf(),
)
PropertyTypeDescription
levelsSet<MXOLogLevel>A set of MXO log levels.
componentsSet<MXOLogComponent>A set of MXO log components.
logWritersSet<MXOLogWriter>A set of custom MXO loggers.

Create an instance using the Builder as shown below:

@JvmSynthetic
public fun mxoLoggingConfiguration(
	initializer: MXOLoggingConfiguration.Builder.() -> Unit = { },
): MXOLoggingConfiguration
Note: For more information, see how to configure logging.

MXOLogLevel

A list of levels (IE severity) to filter the messages the MXO SDK will log.

public enum class MXOLogLevel {
	VERBOSE,
	DEBUG,
    	ERROR,
    	WARN,
    	INFO,
    	ASSERT,
    	NONE,
}
EnumDescription
VERBOSEAny amount of detail might be logged.
DEBUGDebug details are logged, and all the levels below.
ERRORError details are logged, and all the levels below.
WARNWarning details are logged, and all the levels below.
INFOInfo details are logged, and the level below.
ASSERTAssert details only are logged.
NONENeither of the levels listed above is logged. Used to opt out of logging.
Note: For more information, see how to use MXO log levels when configuring logging.

MXOLogWriter

The required base class to write Medallia SDK logs to a custom destination.

public interface MXOLogWriter {
	public fun log(
        	logLevel: MXOLogLevel,
        	component: MXOLogComponent,
        	message: String,
        	throwable: Throwable?,
    	)
}
PropertyTypeDescription
logLevelMXOLogLevelThe level of error to log.
componentMXOLogComponentThe feature component of the MXO SDK to log logs from.
messageStringThe message to log.
throwableThrowable?The potential error that a caller might log a message with.
Note: For more information, see how to use MXO log writer when configuring logging.