Move print logs to OSLogger (#179)

This aids in debugging in console.app, since print statements from the PacketTunnelProvider are not shown in xcode's console.
This commit is contained in:
Ian VanSchooten 2024-10-16 14:28:07 -04:00 committed by GitHub
parent 2d74360bc2
commit 494f071ed5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 13 additions and 8 deletions

View File

@ -7,7 +7,7 @@ class PacketTunnelProvider: NEPacketTunnelProvider {
private var networkMonitor: NWPathMonitor?
private var site: Site?
private var log = Logger(subsystem: "net.defined.mobileNebula", category: "PacketTunnelProvider")
private let log = Logger(subsystem: "net.defined.mobileNebula", category: "PacketTunnelProvider")
private var nebula: MobileNebulaNebula?
private var dnUpdater = DNUpdater()
private var didSleep = false
@ -106,7 +106,7 @@ class PacketTunnelProvider: NEPacketTunnelProvider {
try self.nebula?.reload(String(data: newSite.getConfig(), encoding: .utf8), key: newSite.getKey())
} catch {
self.log.error("Got an error while updating nebula \(error.localizedDescription, privacy: .public)")
log.error("Got an error while updating nebula \(error.localizedDescription, privacy: .public)")
}
}

View File

@ -1,6 +1,9 @@
import NetworkExtension
import MobileNebula
import SwiftyJSON
import os.log
let log = Logger(subsystem: "net.defined.mobileNebula", category: "Site")
extension String: Error {}
@ -430,7 +433,7 @@ struct IncomingSite: Codable {
return
}
print("Saving to \(configPath)")
log.notice("Saving to \(configPath, privacy: .public)")
do {
if (self.key != nil) {
let data = self.key!.data(using: .utf8)

View File

@ -1,8 +1,10 @@
import Foundation
import os.log
class DNUpdater {
private let apiClient = APIClient()
private let timer = RepeatingTimer(timeInterval: 15 * 60) // 15 * 60 is 15 minutes
private let timer = RepeatingTimer(timeInterval: 30) // 15 * 60 is 15 minutes
private let log = Logger(subsystem: "net.defined.mobileNebula", category: "DNUpdater")
func updateAll(onUpdate: @escaping (Site) -> ()) {
_ = SiteList{ (sites, _) -> () in
@ -55,7 +57,7 @@ class DNUpdater {
} catch (APIClientError.invalidCredentials) {
if (!credentials.invalid) {
try site.invalidateDNCredentials()
print("Invalidated credentials in site \(site.name)")
log.notice("Invalidated credentials in site: \(site.name, privacy: .public)")
}
return
@ -63,7 +65,7 @@ class DNUpdater {
newSite?.save(manager: nil) { error in
if (error != nil) {
print("failed to save update: \(error!.localizedDescription)")
self.log.error("failed to save update: \(error!.localizedDescription, privacy: .public)")
} else {
onUpdate(Site(incoming: newSite!))
}
@ -71,11 +73,11 @@ class DNUpdater {
if (credentials.invalid) {
try site.validateDNCredentials()
print("Revalidated credentials in site \(site.name)")
log.notice("Revalidated credentials in site \(site.name, privacy: .public)")
}
} catch {
print("Error while updating \(site.name): \(error.localizedDescription)")
log.error("Error while updating \(site.name, privacy: .public): \(error.localizedDescription, privacy: .public)")
}
}
}