Skip to content

Commit

Permalink
updates to logging
Browse files Browse the repository at this point in the history
  • Loading branch information
paulplant committed Oct 21, 2024
1 parent c3c9ba2 commit f1377ce
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 17 deletions.
16 changes: 11 additions & 5 deletions xdrip/Managers/ContactImage/ContactImageManager.swift
Original file line number Diff line number Diff line change
Expand Up @@ -81,9 +81,12 @@ class ContactImageManager: NSObject {

// check that access to contacts is authorized by the user
guard CNContactStore.authorizationStatus(for: .contacts) == .authorized else {
trace("in updateContact, access to contacts is not authorized, setting enableContactImage to false", log: self.log, category: ConstantsLog.categoryContactImageManager, type: .info)

UserDefaults.standard.enableContactImage = false
// if it isn't, and the user has enabled the feature, then disable it
if UserDefaults.standard.enableContactImage {
trace("in updateContact, access to contacts is not authorized so setting enableContactImage to false", log: self.log, category: ConstantsLog.categoryContactImageManager, type: .info)

UserDefaults.standard.enableContactImage = false
}
return
}

Expand Down Expand Up @@ -124,7 +127,10 @@ class ContactImageManager: NSObject {
// we'll search for all results and then just use the first one for now
// we do it this way so that in the future we want to add a descriptor to the family name to have various contact images (such as "BG", "IOB", "COB" as needed)
if let contacts = try? self.contactStore.unifiedContacts(matching: predicate, keysToFetch: keyToFetch), let contact = contacts.first {
trace("in updateContact, existing contact found. Updating it's contact image.", log: self.log, category: ConstantsLog.categoryContactImageManager, type: .info)

if lastReading.count > 0 {
trace("in updateContact, '%{public}@' contact found. Updating the contact image to %{public}@ %{public}@.", log: self.log, category: ConstantsLog.categoryContactImageManager, type: .info, ConstantsHomeView.applicationName, lastReading[0].calculatedValue.mgDlToMmolAndToString(mgDl: UserDefaults.standard.bloodGlucoseUnitIsMgDl), UserDefaults.standard.bloodGlucoseUnitIsMgDl ? Texts_Common.mgdl : Texts_Common.mmol)
}

// create a mutableContact from the existing contact so that we can modify it
guard let mutableContact = contact.mutableCopy() as? CNMutableContact else { return }
Expand All @@ -135,7 +141,7 @@ class ContactImageManager: NSObject {
// we'll update the existing contact with the new data
saveRequest.update(mutableContact)
} else {
trace("in updateContact, no existing contact found. Creating a new contact called '%{public}@' and adding a contact image.", log: self.log, category: ConstantsLog.categoryContactImageManager, type: .info, ConstantsHomeView.applicationName)
trace("in updateContact, no existing contact found. Creating a new contact called '%{public}@' and adding a contact image with %{public}@ %{public}@.", log: self.log, category: ConstantsLog.categoryContactImageManager, type: .info, ConstantsHomeView.applicationName, lastReading[0].calculatedValue.mgDlToMmolAndToString(mgDl: UserDefaults.standard.bloodGlucoseUnitIsMgDl), UserDefaults.standard.bloodGlucoseUnitIsMgDl ? Texts_Common.mgdl : Texts_Common.mmol)

// create a new mutable contact instance and assign properties to it
let contact = CNMutableContact()
Expand Down
28 changes: 16 additions & 12 deletions xdrip/Utilities/Trace.swift
Original file line number Diff line number Diff line change
Expand Up @@ -366,9 +366,9 @@ class Trace {
traceInfo.appendStringAndNewLine("\nNotifications settings:")
traceInfo.appendStringAndNewLine(" Show BG in notifications: " + UserDefaults.standard.showReadingInNotification.description)
traceInfo.appendStringAndNewLine(" Notification interval: " + UserDefaults.standard.notificationInterval.description + " minutes")
traceInfo.appendStringAndNewLine(" Live Activities Type: " + UserDefaults.standard.liveActivityType.debugDescription)
traceInfo.appendStringAndNewLine(" Live Activity type: " + UserDefaults.standard.liveActivityType.debugDescription)
traceInfo.appendStringAndNewLine(" Show BG in app badge: " + UserDefaults.standard.showReadingInAppBadge.description)
traceInfo.appendStringAndNewLine(" Multiply app badge by 10: " + (UserDefaults.standard.bloodGlucoseUnitIsMgDl ? "-" : UserDefaults.standard.multipleAppBadgeValueWith10.description))
traceInfo.appendStringAndNewLine(" Multiply app badge by 10: " + (UserDefaults.standard.bloodGlucoseUnitIsMgDl ? "\(UserDefaults.standard.multipleAppBadgeValueWith10.description) (but not used in mg/dL)" : UserDefaults.standard.multipleAppBadgeValueWith10.description))

traceInfo.appendStringAndNewLine("\nHome screen settings:")
traceInfo.appendStringAndNewLine(" Allow chart rotation: " + UserDefaults.standard.allowScreenRotation.description)
Expand All @@ -379,6 +379,8 @@ class Trace {
traceInfo.appendStringAndNewLine(" Target: " + UserDefaults.standard.targetMarkValueInUserChosenUnitRounded.description)
traceInfo.appendStringAndNewLine(" Low: " + UserDefaults.standard.lowMarkValueInUserChosenUnitRounded.description)
traceInfo.appendStringAndNewLine(" Urgent low: " + UserDefaults.standard.urgentLowMarkValueInUserChosenUnitRounded.description)
traceInfo.appendStringAndNewLine(" Hours to show on main chart: " + UserDefaults.standard.chartWidthInHours.description)
traceInfo.appendStringAndNewLine(" Hours to show on mini-chart: " + UserDefaults.standard.miniChartHoursToShow.description)

traceInfo.appendStringAndNewLine("\nTreatments settings:")
traceInfo.appendStringAndNewLine(" Show treatments: " + UserDefaults.standard.showTreatmentsOnChart.description)
Expand All @@ -388,6 +390,7 @@ class Trace {

traceInfo.appendStringAndNewLine("\nStatistics settings:")
traceInfo.appendStringAndNewLine(" Show statistics: " + UserDefaults.standard.showStatistics.description)
traceInfo.appendStringAndNewLine(" Statistics days: " + UserDefaults.standard.daysToUseStatistics.description)
traceInfo.appendStringAndNewLine(" Time in Range type: " + UserDefaults.standard.timeInRangeType.description)
traceInfo.appendStringAndNewLine(" Show HbA1c in mmols/mol: " + UserDefaults.standard.useIFCCA1C.description)

Expand All @@ -397,11 +400,7 @@ class Trace {
traceInfo.appendStringAndNewLine(" URL: " + ((UserDefaults.standard.nightscoutUrl?.description ?? "") != "" ? "present" : "missing"))
traceInfo.appendStringAndNewLine(" API_SECRET: " + ((UserDefaults.standard.nightscoutAPIKey?.description ?? "") != "" ? "present" : "missing"))
traceInfo.appendStringAndNewLine(" Token: " + ((UserDefaults.standard.nightscoutToken?.description ?? "") != "" ? "present" : "missing"))
if UserDefaults.standard.nightscoutPort != 0 {
traceInfo.appendStringAndNewLine(" Port: " + UserDefaults.standard.nightscoutPort.description)
} else {
traceInfo.appendStringAndNewLine(" Port: Missing")
}
traceInfo.appendStringAndNewLine(" Port: " + ((UserDefaults.standard.nightscoutPort != 0) ? UserDefaults.standard.nightscoutPort.description : " missing"))
}

traceInfo.appendStringAndNewLine("\nDexcom Share settings:")
Expand Down Expand Up @@ -450,8 +449,9 @@ class Trace {
}

traceInfo.appendStringAndNewLine("\nContact Image settings:")
traceInfo.appendStringAndNewLine(" Create contact: " + UserDefaults.standard.enableContactImage.description)
traceInfo.appendStringAndNewLine(" Enable contact image: " + UserDefaults.standard.enableContactImage.description)
traceInfo.appendStringAndNewLine(" Show trend: " + UserDefaults.standard.displayTrendInContactImage.description)
traceInfo.appendStringAndNewLine(" Use high contrast: " + UserDefaults.standard.useHighContrastContactImage.description)

traceInfo.appendStringAndNewLine("\nData management settings:")
traceInfo.appendStringAndNewLine(" Retention period: " + UserDefaults.standard.retentionPeriodInDays.description + " days")
Expand All @@ -461,11 +461,14 @@ class Trace {
traceInfo.appendStringAndNewLine(" Show developer settings: " + UserDefaults.standard.showDeveloperSettings.description)
traceInfo.appendStringAndNewLine(" NS log enabled: " + UserDefaults.standard.NSLogEnabled.description)
traceInfo.appendStringAndNewLine(" OS log enabled: " + UserDefaults.standard.OSLogEnabled.description)
traceInfo.appendStringAndNewLine(" Smooth Libre readings: " + UserDefaults.standard.smoothLibreValues.description)
traceInfo.appendStringAndNewLine(" Suppress unlock payload: " + UserDefaults.standard.suppressUnLockPayLoad.description)
traceInfo.appendStringAndNewLine(" OS-AID share type: " + UserDefaults.standard.loopShareType.description)
traceInfo.appendStringAndNewLine(" LibreLinkUp version: " + (UserDefaults.standard.libreLinkUpVersion?.description ?? "nil"))

// misc settings
traceInfo.appendStringAndNewLine("\nMisc settings:")
traceInfo.appendStringAndNewLine(" Use debug level logs: " + UserDefaults.standard.addDebugLevelLogsInTraceFileAndNSLog.description)

traceInfo.appendStringAndNewLine(paragraphSeperator)

traceInfo.appendStringAndNewLine("General flags/variables:\n")
Expand All @@ -485,7 +488,7 @@ class Trace {
} else {
traceInfo.appendStringAndNewLine(" Sensor start date: nil")
}
traceInfo.appendStringAndNewLine(" Sensor max days: " + (Int(UserDefaults.standard.activeSensorMaxSensorAgeInDays ?? 0)).description)
traceInfo.appendStringAndNewLine(" Sensor max days: " + (UserDefaults.standard.activeSensorMaxSensorAgeInDays ?? 0).description)
traceInfo.appendStringAndNewLine(" Transmitter ID: " + (UserDefaults.standard.activeSensorTransmitterId?.description ?? "nil"))
} else {
traceInfo.appendStringAndNewLine(" Not used in Nightscout follower mode")
Expand All @@ -504,10 +507,10 @@ class Trace {
let alertTypesAccessor = AlertTypesAccessor(coreDataManager: coreDataManager)

// all bluetooth transmitters
traceInfo.appendStringAndNewLine("List of Bluetooth Peripherals:\n")
traceInfo.appendStringAndNewLine("List of Bluetooth Peripherals:")

for blePeripheral in bLEPeripheralAccessor.getBLEPeripherals() {
traceInfo.appendStringAndNewLine(" Name: " + blePeripheral.name)
traceInfo.appendStringAndNewLine("\n Name: " + blePeripheral.name)
traceInfo.appendStringAndNewLine(" Address: " + blePeripheral.address)
if let alias = blePeripheral.alias {
traceInfo.appendStringAndNewLine(" Alias: " + alias)
Expand Down Expand Up @@ -642,6 +645,7 @@ class Trace {
if blePeripheral.libre2 != nil {

traceInfo.appendStringAndNewLine(" Type: " + bluetoothPeripheralType.rawValue)
traceInfo.appendStringAndNewLine(" Smooth Libre readings: " + UserDefaults.standard.smoothLibreValues.description)

}

Expand Down

0 comments on commit f1377ce

Please sign in to comment.