用 Swift 编写的简单、轻量级且灵活的调试日志小助手
如果您发现自己符合以下描述,那么您可能需要使用 AELog
- 我只想在项目开发过程中将任何内容记录到控制台,然后在上线时将其关闭。
- 我想在文件级别启用/禁用日志记录,并按照我喜欢的方式格式化日志行。
- 我不想有其他任何东西,只想立即启动并运行。
/// Log detailed debugging information with a simple one liner:
aelog()
/// - Note: if this was on line 21 in `viewDidLoad` of a `ViewController`, output could look like this:
/// 2016-04-03 21:08:00.123 -- [Main] ViewController (21) -> viewDidLoad() >
/// Add custom text to log line:
aelog("hi there")
/// Log random items (some interesting variables at the moment)
let text = "One two three four five"
let x: CGFloat = 21
let y: CGFloat = 8
let size = CGSize(width: 19, height: 84)
let rect = CGRect(x: x, y: y, width: size.width, height: size.height)
let range = 1...5
aelog(text, x, y, size, rect, range, Log.shared, self)
/// - Note: in this case output could look like this:
/// 04:01:05.967 -- ViewController (30) -> viewDidAppear >
/// #0: String | "One two three four five"
/// #1: Double | 21.0
/// #2: Double | 8.0
/// #3: CGSize | (19.0, 84.0)
/// #4: CGRect | (21.0, 8.0, 19.0, 84.0)
/// #5: CountableClosedRange<Int> | CountableClosedRange(1...5)
/// #6: Log | AELog.Log
/// #7: ViewController | <AELogDemo_iOS.ViewController: 0x7fd14c41dd60>
/// Log both to debugger and device console:
aelog("this should be logged just in case...", mode: .nsLog)
/// Log Settings
/// Enable or disable logging with one flag and customize formatting as you like.
/// - Warning: `aelog` will by default work only if logging is enabled and file is not disabled in settings,
/// otherwise it will do nothing, but with `mode: .nsLog` it will always work, wether logging is enabled or not.
let settings = Log.shared.settings
settings.isEnabled = true
settings.dateFormat = "yyyy-MM-dd HH:mm:ss.SSS"
settings.template = "{date} -- [{thread}] {file} ({line}) -> {function} > {text}"
/// - Note: toggle logging for specific files like this:
settings.files = [
"AppDelegate" : false,
"ViewController" : true
]
/// LogDelegate
Log.shared.delegate = self
func didLog(line: Line, mode: Log.Mode) {
/// - Note: do something here?
}
您是否曾经想在您不在电脑旁时,像实时地直接在您的 iOS 设备上看到您的应用程序的输出? 是的,我也没有,但以防万一您改变主意(就像我一样),请查看 AEConsole - 可自定义的控制台 UI 覆盖层,在您的 iOS 应用程序顶部显示调试日志。 毕竟,AELog
的创建只是为了补充 AEConsole
。
.package(url: "https://github.com/tadija/AELog.git", from: "0.6.3")
github "tadija/AELog"
pod 'AELog'
AELog 在 MIT 许可下发布。 有关详细信息,请参见 LICENSE。