vadymmarkov / Malibu

:surfer: Malibu is a networking library built on promises
https://vadymmarkov.github.io
Other
414 stars 39 forks source link

Feature: logging #27

Closed vadymmarkov closed 8 years ago

vadymmarkov commented 8 years ago

Now you can disable and enable logging and provide your own logging method:

// MARK: - Errors

struct CustomErrorLogger: ErrorLogging {
  func logError(error: ErrorType) {
    NSLog("\(error)")
  }
}

// MARK: - Info

struct CustomInfoLogger: InfoLogging {
  func logRequest(request: NSURLRequest) {
    guard let URLString = request.URL?.absoluteString else {
      return
    }

    NSLog("\(URLString)")
  }
}

Malibu.logger.infoLogger = CustomInfoLogger()
Malibu.logger.errorLogger = CustomInfoLogger()
Malibu.logger.level = .Debug

If you just set a logging level so something other than .Disabled and don't specify custom loggers, then defaults loggers will be used.

zenangst commented 8 years ago

@vadymmarkov 💥