doxy/Library/Sources/Internal/Extensions/LoggerMetadata+Functions.swift

29 lines
707 B
Swift

import Hummingbird
import Logging
extension Logger.Metadata {
// MARK: Functions
static func metadata<Context: RequestContext>(
context: Context,
request: Request,
statusCode: HTTPResponse.Status,
redirect: String? = nil
) -> Logger.Metadata {
var metadata: Logger.Metadata = [
"hb.request.id": "\(context.id)",
"hb.request.method": "\(request.method.rawValue)",
"hb.request.path": "\(request.uri.path)",
"hb.request.status": "\(statusCode.code)"
]
if let redirect {
metadata["hb.request.redirect"] = "\(redirect)"
}
return metadata
}
}