29 lines
707 B
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
|
||
|
}
|
||
|
|
||
|
}
|