MMLogger 0.1.4

MMLogger 0.1.4

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布上次发布2017年5月
SwiftSwift 版本3.0
SPM支持 SPM

Mateusz Mackowiak 维护。



MMLogger 0.1.4

  • Mateusz Mackowiak

MMLogger

示例

要运行示例项目,首先克隆仓库,然后从 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 文件。