From d3048fe62ae3a22f1e7233d1affb27d02251494b Mon Sep 17 00:00:00 2001 From: M66B Date: Thu, 16 Sep 2021 08:13:34 +0200 Subject: [PATCH] Added bread crumbs --- app/src/main/java/eu/faircode/email/Core.java | 2 +- .../eu/faircode/email/EntityOperation.java | 8 +++++++- app/src/main/java/eu/faircode/email/Log.java | 3 +-- .../eu/faircode/email/ServiceSynchronize.java | 18 ++++++++++++++++++ 4 files changed, 27 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/Core.java b/app/src/main/java/eu/faircode/email/Core.java index a191c6daa2..1933197ac5 100644 --- a/app/src/main/java/eu/faircode/email/Core.java +++ b/app/src/main/java/eu/faircode/email/Core.java @@ -681,7 +681,7 @@ class Core { state.error(new OperationCanceledException("Processing")); else { if (state.isProcessing()) - Log.e(folder.name + " cannot run " + + Log.e(folder.name + " cannot run" + " sequence=" + sequence + " batch=" + state.getBatch(folder.id, priority)); } diff --git a/app/src/main/java/eu/faircode/email/EntityOperation.java b/app/src/main/java/eu/faircode/email/EntityOperation.java index 51505e20c1..efeef2d439 100644 --- a/app/src/main/java/eu/faircode/email/EntityOperation.java +++ b/app/src/main/java/eu/faircode/email/EntityOperation.java @@ -461,7 +461,13 @@ public class EntityOperation { } int count = db.operation().deleteOperation(fid, SYNC); - Log.i("Deleted stale sync=" + count); + + Map crumb = new HashMap<>(); + crumb.put("folder", Long.toString(fid)); + crumb.put("stale", Integer.toString(count)); + crumb.put("force", Boolean.toString(force)); + Log.breadcrumb("Poll", crumb); + sync(context, fid, false, force); } diff --git a/app/src/main/java/eu/faircode/email/Log.java b/app/src/main/java/eu/faircode/email/Log.java index cfcae6ac4e..3130a65b50 100644 --- a/app/src/main/java/eu/faircode/email/Log.java +++ b/app/src/main/java/eu/faircode/email/Log.java @@ -307,8 +307,7 @@ public class Log { sb.append(' ').append(key).append('=').append(val); ocrumb.put(key, val); } - if (BuildConfig.DEBUG) - Log.i(sb.toString()); + Log.i(sb.toString()); Bugsnag.leaveBreadcrumb(name, ocrumb, BreadcrumbType.LOG); } catch (Throwable ex) { ex.printStackTrace(); diff --git a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java index e61d52bc0f..df135ce1c2 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java +++ b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java @@ -1863,6 +1863,14 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences final long sequence = state.getSequence(folder.id, key.getPriority()); + Map crumb = new HashMap<>(); + crumb.put("account", folder.account == null ? null : Long.toString(folder.account)); + crumb.put("folder", folder.name + "/" + folder.type + ":" + folder.id); + crumb.put("partition", key.toString()); + crumb.put("operations", Integer.toString(partitions.get(key).size())); + crumb.put("sequence", Long.toString(sequence)); + Log.breadcrumb("Queuing", crumb); + executor.submit(new Helper.PriorityRunnable(key.getPriority(), key.getOrder()) { @Override public void run() { @@ -1881,6 +1889,14 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences " sequence=" + sequence + " operations=" + partition.size()); + Map crumb = new HashMap<>(); + crumb.put("account", folder.account == null ? null : Long.toString(folder.account)); + crumb.put("folder", folder.name + "/" + folder.type + ":" + folder.id); + crumb.put("partition", key.toString()); + crumb.put("operations", Integer.toString(partition.size())); + crumb.put("sequence", Long.toString(sequence)); + Log.breadcrumb("Executing", crumb); + // Get folder Folder ifolder = mapFolders.get(folder); // null when polling boolean canOpen = (EntityFolder.INBOX.equals(folder.type) || @@ -1952,6 +1968,8 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences db.folder().setFolderState(folder.id, null); } } + } catch (Throwable ex) { + Log.e(ex); } finally { wlOperations.release(); }