测试已测试 | ✗ |
语言语言 | SwiftSwift |
许可证 | MIT |
发布上次发布 | 2017年5月 |
SwiftSwift 版本 | 3.0 |
SPM支持 SPM | ✗ |
由 Mateusz Mackowiak 维护。
要运行示例项目,首先克隆仓库,然后从 Example 目录运行 pod install
。
MMLogger 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile 中
pod "MMLogger"
基本用法
import MMLogger
MMLogger.default.warning("warning")
日志级别
public enum MMLogLevel : UInt {
case off
case error
case warning
case info
case debug
case verbose
}
创建一个用于简单使用的封装器
public var log: MMLogger {
return MMLogger.default
}
log.warning("warning")
默认情况下,一个 MMPrintLogger.default 实例注册用于 .verbose 日志级别。要删除默认日志记录器,请使用 MMLogger.default.removeAllLoggers()
添加自定义日志级别的默认日志记录器
// or log.addLogger(logger: MMPrintLogger(), for: .debug)
MMLogger.default.addLogger(logger: MMPrintLogger.default, for: .debug)
添加自定义日志记录器
class MYCustomLogger: NSObject, MMLoggerProtocol {
func log(message: MMLogMessage) {
print("\(message.message)\n")
}
}
// or log.addLogger(logger: MYCustomLogger(), for: .warning)
MMLogger.default.addLogger(logger: MYCustomLogger(), for: .warning)
添加自定义格式化程序
class MyLoggerFormatter: NSObject, MMLoggerFormatter {
func format(_ message: MMLogMessage) -> String {
return "++++++++++\n\(message.date) [\(message.level)] \(message.message)\n"
}
}
let logger = MMPrintLogger()
logger.formatter = MyLoggerFormatter()
// or log.addLogger(logger: logger, for: .verbose)
MMLogger.default.addLogger(logger: logger, for: .verbose)
添加 Logstash 日志记录器
let logstashLogger = MMLogstashLogger(host: "localhost", port: 9601, timeout: 5, logActivity: true)
log.addLogger(logstashLogger, from: .verbose)
设置 Logstash / Kibana / Elasticsearch 服务器
安装组件
brew install elasticsearch
brew services start elasticsearch
brew install kibana
brew services start kibana
brew install logstash
使用 logstash-config.conf 配置 logstash
启动代理
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.bcd.logstash</string>
<key>KeepAlive</key>
<true/>
<key>StandardOutPath</key>
<string>~/Documents/logstash.log</string>
<key>StandardErrorPath</key>
<string>~/Documents/logstash.log</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/logstash</string>
<string>-f</string>
<string>~/Documents/logstash-config.conf</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Mateusz Mackowiak,[email protected]
MMLogger 可在 MIT 许可证下获得。有关更多信息,请参阅 LICENSE 文件。