Skip to content

Commit 6c907f3

Browse files
committed
Add Logging Abstractions
1 parent a1621d6 commit 6c907f3

File tree

3 files changed

+33
-14
lines changed

3 files changed

+33
-14
lines changed
Lines changed: 28 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,33 @@
11
import Foundation
22
import Logging
33

4-
var logger = Logger(label: "com.automattic.hostmgr")
5-
6-
func initializeLoggingSystem() {
7-
let logLevelFromEnv = ProcessInfo.processInfo.environment["LOG_LEVEL"].flatMap { Logger.Level(rawValue: $0) }
8-
logger.logLevel = logLevelFromEnv ?? .info
9-
LoggingSystem.bootstrap { label in
10-
MultiplexLogHandler([
11-
StreamLogHandler.standardError(label: label)
12-
])
4+
/// A hack to allow global logging
5+
struct logger {
6+
static func debug(_ message: @autoclosure () -> Logger.Message) {
7+
Logger.shared.debug(message())
8+
}
9+
10+
static func trace(_ message: @autoclosure () -> Logger.Message) {
11+
Logger.shared.trace(message())
12+
}
13+
14+
static func info(_ message: @autoclosure () -> Logger.Message) {
15+
Logger.shared.info(message())
16+
}
17+
}
18+
19+
extension Logger {
20+
static var shared = Logger(label: "com.automattic.hostmgr")
21+
22+
static func initializeLoggingSystem() {
23+
#if DEBUG
24+
Logger.shared.logLevel = .trace
25+
#endif
26+
27+
LoggingSystem.bootstrap { label in
28+
MultiplexLogHandler([
29+
StreamLogHandler.standardError(label: label)
30+
])
31+
}
1332
}
1433
}

Sources/hostmgr/helpers/S3.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ struct S3Manager {
9696
let s3Client = try getS3Client(from: client, for: bucket, in: region).with(timeout: .seconds(timeout))
9797
let objectRequest = S3.GetObjectRequest(bucket: bucket, key: key)
9898

99-
_ = try s3Client.getObjectStreaming(objectRequest, logger: logger) { buffer, loop in
99+
_ = try s3Client.getObjectStreaming(objectRequest, logger: Logger.shared) { buffer, loop in
100100
let availableBytes = buffer.readableBytes
101101
downloadedBytes += availableBytes
102102
if let bytes = buffer.getData(at: buffer.readerIndex, length: availableBytes) {
@@ -142,10 +142,10 @@ struct S3Manager {
142142
let options: AWSServiceConfig.Options
143143
if try Configuration.shared.allowAWSAcceleratedTransfer
144144
&& bucketTransferAccelerationIsEnabled(for: bucket, in: region) {
145-
logger.log(level: .info, "Using Accelerated S3 Download")
145+
logger.info("Using Accelerated S3 Download")
146146
options = .s3UseTransferAcceleratedEndpoint
147147
} else {
148-
logger.log(level: .info, "Using Standard S3 Download")
148+
logger.info("Using Standard S3 Download")
149149
options = []
150150
}
151151

@@ -165,7 +165,7 @@ struct S3Manager {
165165

166166
let bucketInfoRequest = S3.GetBucketAccelerateConfigurationRequest(bucket: bucket)
167167
return try S3(client: client, region: region)
168-
.getBucketAccelerateConfiguration(bucketInfoRequest, logger: logger)
168+
.getBucketAccelerateConfiguration(bucketInfoRequest, logger: Logger.shared)
169169
.wait()
170170
.status == .enabled
171171
}

Sources/hostmgr/main.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ struct Hostmgr: ParsableCommand {
2121
])
2222
}
2323

24-
initializeLoggingSystem()
24+
Logger.initializeLoggingSystem()
2525
Hostmgr.main()
2626

2727
struct SetCommand: ParsableCommand {

0 commit comments

Comments
 (0)