Skip to content

Commit

Permalink
Remove logger
Browse files Browse the repository at this point in the history
  • Loading branch information
adinauer committed Jun 15, 2022
1 parent 1810d53 commit 6f8dae8
Show file tree
Hide file tree
Showing 3 changed files with 51 additions and 51 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ static void init(
readDefaultOptionValues(options, context);

options.addEventProcessor(
new DefaultAndroidEventProcessor(context, logger, buildInfoProvider, options));
new DefaultAndroidEventProcessor(context, buildInfoProvider, options));
options.addEventProcessor(new PerformanceAndroidEventProcessor(options, activityFramesTracker));

options.setTransportGate(new AndroidTransportGate(context, options.getLogger()));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@
import io.sentry.DateUtils;
import io.sentry.EventProcessor;
import io.sentry.Hint;
import io.sentry.ILogger;
import io.sentry.SentryBaseEvent;
import io.sentry.SentryEvent;
import io.sentry.SentryLevel;
Expand Down Expand Up @@ -71,29 +70,23 @@ final class DefaultAndroidEventProcessor implements EventProcessor {
private final @NotNull RootChecker rootChecker;
private final @NotNull SentryAndroidOptions options;

private final @NotNull ILogger logger;

public DefaultAndroidEventProcessor(
final @NotNull Context context,
final @NotNull ILogger logger,
final @NotNull BuildInfoProvider buildInfoProvider,
final @NotNull SentryAndroidOptions options) {
this(
context,
logger,
buildInfoProvider,
new RootChecker(context, buildInfoProvider, logger),
new RootChecker(context, buildInfoProvider, options.getLogger()),
options);
}

DefaultAndroidEventProcessor(
final @NotNull Context context,
final @NotNull ILogger logger,
final @NotNull BuildInfoProvider buildInfoProvider,
final @NotNull RootChecker rootChecker,
final @NotNull SentryAndroidOptions options) {
this.context = Objects.requireNonNull(context, "The application context is required.");
this.logger = Objects.requireNonNull(logger, "The Logger is required.");
this.buildInfoProvider =
Objects.requireNonNull(buildInfoProvider, "The BuildInfoProvider is required.");
this.rootChecker = Objects.requireNonNull(rootChecker, "The RootChecker is required.");
Expand Down Expand Up @@ -158,10 +151,12 @@ private boolean shouldApplyScopeData(
if (HintUtils.shouldApplyScopeData(hint)) {
return true;
} else {
logger.log(
SentryLevel.DEBUG,
"Event was cached so not applying data relevant to the current app execution/version: %s",
event.getEventId());
options
.getLogger()
.log(
SentryLevel.DEBUG,
"Event was cached so not applying data relevant to the current app execution/version: %s",
event.getEventId());
return false;
}
}
Expand Down Expand Up @@ -229,7 +224,7 @@ private void setThreads(final @NotNull SentryEvent event) {

private void setPackageInfo(final @NotNull SentryBaseEvent event, final @NotNull App app) {
final PackageInfo packageInfo =
ContextUtils.getPackageInfo(context, PackageManager.GET_PERMISSIONS, logger);
ContextUtils.getPackageInfo(context, PackageManager.GET_PERMISSIONS, options.getLogger());
if (packageInfo != null) {
String versionCode = ContextUtils.getVersionCode(packageInfo);

Expand Down Expand Up @@ -307,7 +302,7 @@ private void setArchitectures(final @NotNull Device device) {
device.setSimulator((Boolean) emulator);
}
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting emulator.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting emulator.", e);
}

DisplayMetrics displayMetrics = getDisplayMetrics();
Expand Down Expand Up @@ -348,7 +343,7 @@ private void setDeviceIO(final @NotNull Device device, final boolean applyScopeD

if (options.isCollectIpcDeviceInfo()) {
Boolean connected;
switch (ConnectivityChecker.getConnectionStatus(context, logger)) {
switch (ConnectivityChecker.getConnectionStatus(context, options.getLogger())) {
case NOT_CONNECTED:
connected = false;
break;
Expand Down Expand Up @@ -393,7 +388,7 @@ private void setDeviceIO(final @NotNull Device device, final boolean applyScopeD
if (device.getConnectionType() == null) {
// wifi, ethernet or cellular, null if none
device.setConnectionType(
ConnectivityChecker.getConnectionType(context, logger, buildInfoProvider));
ConnectivityChecker.getConnectionType(context, options.getLogger(), buildInfoProvider));
}
}

Expand Down Expand Up @@ -424,7 +419,7 @@ private TimeZone getTimeZone() {
// currentTimeMillis returns UTC already
return DateUtils.getDateTime(System.currentTimeMillis() - SystemClock.elapsedRealtime());
} catch (IllegalArgumentException e) {
logger.log(SentryLevel.ERROR, e, "Error getting the device's boot time.");
options.getLogger().log(SentryLevel.ERROR, e, "Error getting the device's boot time.");
}
return null;
}
Expand All @@ -442,10 +437,10 @@ private TimeZone getTimeZone() {
actManager.getMemoryInfo(memInfo);
return memInfo;
}
logger.log(SentryLevel.INFO, "Error getting MemoryInfo.");
options.getLogger().log(SentryLevel.INFO, "Error getting MemoryInfo.");
return null;
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting MemoryInfo.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting MemoryInfo.", e);
return null;
}
}
Expand All @@ -464,7 +459,7 @@ private TimeZone getTimeZone() {
try {
return Build.MODEL.split(" ", -1)[0];
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting device family.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting device family.", e);
return null;
}
}
Expand All @@ -487,7 +482,7 @@ private TimeZone getTimeZone() {

return ((float) level / (float) scale) * percentMultiplier;
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting device battery level.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting device battery level.", e);
return null;
}
}
Expand All @@ -503,7 +498,7 @@ private TimeZone getTimeZone() {
return plugged == BatteryManager.BATTERY_PLUGGED_AC
|| plugged == BatteryManager.BATTERY_PLUGGED_USB;
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting device charging state.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting device charging state.", e);
return null;
}
}
Expand All @@ -515,7 +510,7 @@ private TimeZone getTimeZone() {
return ((float) temperature) / 10; // celsius
}
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting battery temperature.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting battery temperature.", e);
}
return null;
}
Expand All @@ -532,13 +527,15 @@ private TimeZone getTimeZone() {
deviceOrientation =
DeviceOrientations.getOrientation(context.getResources().getConfiguration().orientation);
if (deviceOrientation == null) {
logger.log(
SentryLevel.INFO,
"No device orientation available (ORIENTATION_SQUARE|ORIENTATION_UNDEFINED)");
options
.getLogger()
.log(
SentryLevel.INFO,
"No device orientation available (ORIENTATION_SQUARE|ORIENTATION_UNDEFINED)");
return null;
}
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting device orientation.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting device orientation.", e);
}
return deviceOrientation;
}
Expand All @@ -554,7 +551,7 @@ private TimeZone getTimeZone() {
long totalBlocks = getBlockCountLong(stat);
return totalBlocks * blockSize;
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting total internal storage amount.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting total internal storage amount.", e);
return null;
}
}
Expand Down Expand Up @@ -609,7 +606,9 @@ private int getAvailableBlocksDep(final @NotNull StatFs stat) {
long availableBlocks = getAvailableBlocksLong(stat);
return availableBlocks * blockSize;
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting unused internal storage amount.", e);
options
.getLogger()
.log(SentryLevel.ERROR, "Error getting unused internal storage amount.", e);
return null;
}
}
Expand All @@ -620,10 +619,10 @@ private int getAvailableBlocksDep(final @NotNull StatFs stat) {
if (path != null) { // && path.canRead()) { canRead() will read return false
return new StatFs(path.getPath());
}
logger.log(SentryLevel.INFO, "Not possible to read external files directory");
options.getLogger().log(SentryLevel.INFO, "Not possible to read external files directory");
return null;
}
logger.log(SentryLevel.INFO, "External storage is not mounted or emulated.");
options.getLogger().log(SentryLevel.INFO, "External storage is not mounted or emulated.");
return null;
}

Expand Down Expand Up @@ -664,7 +663,7 @@ private int getAvailableBlocksDep(final @NotNull StatFs stat) {
return file;
}
} else {
logger.log(SentryLevel.INFO, "Not possible to read getExternalFilesDirs");
options.getLogger().log(SentryLevel.INFO, "Not possible to read getExternalFilesDirs");
}
return null;
}
Expand All @@ -681,7 +680,7 @@ private int getAvailableBlocksDep(final @NotNull StatFs stat) {
long totalBlocks = getBlockCountLong(stat);
return totalBlocks * blockSize;
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting total external storage amount.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting total external storage amount.", e);
return null;
}
}
Expand All @@ -705,7 +704,9 @@ private boolean isExternalStorageMounted() {
long availableBlocks = getAvailableBlocksLong(stat);
return availableBlocks * blockSize;
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting unused external storage amount.", e);
options
.getLogger()
.log(SentryLevel.ERROR, "Error getting unused external storage amount.", e);
return null;
}
}
Expand All @@ -719,7 +720,7 @@ private boolean isExternalStorageMounted() {
try {
return context.getResources().getDisplayMetrics();
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting DisplayMetrics.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting DisplayMetrics.", e);
return null;
}
}
Expand All @@ -741,7 +742,7 @@ private boolean isExternalStorageMounted() {
os.setRooted((Boolean) rooted);
}
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting OperatingSystem.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting OperatingSystem.", e);
}

return os;
Expand Down Expand Up @@ -796,7 +797,7 @@ private void setAppPackageInfo(final @NotNull App app, final @NotNull PackageInf
try (BufferedReader br = new BufferedReader(new FileReader(file))) {
return br.readLine();
} catch (IOException e) {
logger.log(SentryLevel.ERROR, errorMsg, e);
options.getLogger().log(SentryLevel.ERROR, errorMsg, e);
}

return defaultVersion;
Expand All @@ -820,7 +821,7 @@ private void setAppPackageInfo(final @NotNull App app, final @NotNull PackageInf
return context.getString(stringId);
}
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting application name.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting application name.", e);
}

return null;
Expand All @@ -842,7 +843,7 @@ private void setAppPackageInfo(final @NotNull App app, final @NotNull PackageInf
try {
return Installation.id(context);
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting installationId.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting installationId.", e);
}
return null;
}
Expand All @@ -851,7 +852,7 @@ private void setAppPackageInfo(final @NotNull App app, final @NotNull PackageInf
private @Nullable Map<String, String> getSideLoadedInfo() {
String packageName = null;
try {
final PackageInfo packageInfo = ContextUtils.getPackageInfo(context, logger);
final PackageInfo packageInfo = ContextUtils.getPackageInfo(context, options.getLogger());
final PackageManager packageManager = context.getPackageManager();

if (packageInfo != null && packageManager != null) {
Expand All @@ -876,7 +877,7 @@ private void setAppPackageInfo(final @NotNull App app, final @NotNull PackageInf
}
} catch (IllegalArgumentException e) {
// it'll never be thrown as we are querying its own App's package.
logger.log(SentryLevel.DEBUG, "%s package isn't installed.", packageName);
options.getLogger().log(SentryLevel.DEBUG, "%s package isn't installed.", packageName);
}

return null;
Expand All @@ -894,7 +895,7 @@ private void setSideLoadedInfo(final @NotNull SentryBaseEvent event) {
}
}
} catch (Throwable e) {
logger.log(SentryLevel.ERROR, "Error getting side loaded info.", e);
options.getLogger().log(SentryLevel.ERROR, "Error getting side loaded info.", e);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ import com.nhaarman.mockitokotlin2.verify
import com.nhaarman.mockitokotlin2.whenever
import io.sentry.DiagnosticLogger
import io.sentry.Hint
import io.sentry.ILogger
import io.sentry.SentryEvent
import io.sentry.SentryLevel
import io.sentry.SentryTracer
Expand Down Expand Up @@ -47,7 +46,7 @@ class DefaultAndroidEventProcessorTest {

private val className = "io.sentry.android.core.DefaultAndroidEventProcessor"
private val ctorTypes =
arrayOf(Context::class.java, ILogger::class.java, BuildInfoProvider::class.java, SentryAndroidOptions::class.java)
arrayOf(Context::class.java, BuildInfoProvider::class.java, SentryAndroidOptions::class.java)

init {
Locale.setDefault(Locale.US)
Expand All @@ -63,7 +62,7 @@ class DefaultAndroidEventProcessorTest {
val sentryTracer = SentryTracer(TransactionContext("", ""), mock())

fun getSut(context: Context): DefaultAndroidEventProcessor {
return DefaultAndroidEventProcessor(context, options.logger, buildInfo, options)
return DefaultAndroidEventProcessor(context, buildInfo, options)
}
}

Expand All @@ -85,31 +84,31 @@ class DefaultAndroidEventProcessorTest {
fun `when null context is provided, invalid argument is thrown`() {
val ctor = className.getCtor(ctorTypes)

val params = arrayOf(null, mock<ILogger>(), null, mock<SentryAndroidOptions>())
val params = arrayOf(null, null, mock<SentryAndroidOptions>())
assertFailsWith<IllegalArgumentException> { ctor.newInstance(params) }
}

@Test
fun `when null logger is provided, invalid argument is thrown`() {
val ctor = className.getCtor(ctorTypes)

val params = arrayOf(mock<Context>(), null, null, mock<SentryAndroidOptions>())
val params = arrayOf(mock<Context>(), null, mock<SentryAndroidOptions>())
assertFailsWith<IllegalArgumentException> { ctor.newInstance(params) }
}

@Test
fun `when null options is provided, invalid argument is thrown`() {
val ctor = className.getCtor(ctorTypes)

val params = arrayOf(mock<Context>(), mock<ILogger>(), mock<BuildInfoProvider>(), null)
val params = arrayOf(mock<Context>(), mock<BuildInfoProvider>(), null)
assertFailsWith<IllegalArgumentException> { ctor.newInstance(params) }
}

@Test
fun `when null buildInfo is provided, invalid argument is thrown`() {
val ctor = className.getCtor(ctorTypes)

val params = arrayOf(null, null, mock<BuildInfoProvider>(), mock<SentryAndroidOptions>())
val params = arrayOf(null, mock<BuildInfoProvider>(), mock<SentryAndroidOptions>())
assertFailsWith<IllegalArgumentException> { ctor.newInstance(params) }
}

Expand Down Expand Up @@ -313,7 +312,7 @@ class DefaultAndroidEventProcessorTest {
@Test
fun `Processor won't throw exception when theres a hint`() {
val processor =
DefaultAndroidEventProcessor(context, fixture.options.logger, fixture.buildInfo, mock())
DefaultAndroidEventProcessor(context, fixture.buildInfo, mock(), fixture.options)

val hints = HintUtils.createWithTypeCheckHint(CachedEvent())
processor.process(SentryEvent(), hints)
Expand Down

0 comments on commit 6f8dae8

Please sign in to comment.