SwiftyBeaver使用 (Swift多彩日志记录)
一、简介
全球首个Swift日志平台为Swift 2&Swift 3添加多彩,灵活,轻量级记录。 伟大的开发和发布与支持控制台,文件和云平台。
新增:发布期间方便的将日志记录到内置SwiftyBeaver平台和Mac应用程序中!
(1)、开发期间: 彩色记录到Xcode控制台
1.1了解更多彩色记录到Xcode控制台和Swift 3,对于Swift 2.3使用这个要领。不需要再破解Xcode 8来获得颜色,甚至可以自定义日志级别词汇(例如ATTENTION代替ERROR?)。甚至你想使用😉代替💜来显示一般量的数据。
(2)、开发期间: 彩色记录文件
1.2了解更多终端记录文件在磁盘上存储的日志。
(3)、发布期间: 加密记录到SwiftyBeaver平台
1.3了解更多 发布期间记录到SwiftyBeaver平台。
(4) 、通过Mac App来浏览、搜索和过滤
1.4Mac APP在开发或者发布期间非常方便的访问你的日志
二、安装
Swift 3安装SwiftyBeaver最终版本
Swift 2安装SwiftyBeaver 0.7.0版本
Carthage方式
使用Carthage安装SwiftyBeaver,编辑Cartfile文件
Swift 3:
github "SwiftyBeaver/SwiftyBeaver"
Swift 2:
github "SwiftyBeaver/SwiftyBeaver" ~> 0.7
CocoaPods方式
使用CocoaPods 安装SwiftyBeaver,编辑Podfile文件
Swift 3:
pod 'SwiftyBeaver'
Swift 2:
target 'MyProject' do
use_frameworks!
# Pods for MyProject
pod 'SwiftyBeaver', '~> 0.7'
end
post_install do |installer|
installer.pods_project.build_configurations.each do |config|
# Configure Pod targets for Xcode 8 with Swift 2.3
config.build_settings['SWIFT_VERSION'] = '2.3'
end
end
Swift安装包管理方式
使用Swift Package Manager 安装SwiftyBeaver,编辑Package.swift文件
仅支持Swift 3
.Package(url: "https://github.com/SwiftyBeaver/SwiftyBeaver.git", majorVersion: 1)
三、使用
1.项目中使用SwiftyBeaver,在AppDelegate.swift文件中,添加如下代码。
import SwiftyBeaver
let log = SwiftyBeaver.self
2.在AppDelegate:didFinishLaunchingWithOptions()方法中添加SwiftyBeaver日志目的(控制台、文件、等等),可以选择调整日志格式,完成后可以全局调用以下log级别输出日志。
//添加log目的,最少一项
// Xcode控制台日志
let console = ConsoleDestination()
// 默认swiftybeaver.log文件日志
let file = FileDestination()
// cloud平台配置
let cloud = SBPlatformDestination(appID: "foo", appSecret: "bar", encryptionKey: "123")
// 使用自定义格式输出短时间、日志级别、信息
// console.format = "$DHH:mm:ss$d $L $M"
// 或者使用 console.format = "$J" 输出JSON格式
//添加配置到SwiftyBeaver
log.addDestination(console)
log.addDestination(file)
log.addDestination(cloud)
//日志具有不同重要性
log.verbose("not so important") // 优先级 1, VERBOSE 紫色
log.debug("something to debug") // 优先级 2, DEBUG 绿色
log.info("a nice information") // 优先级 3, INFO 蓝色
log.warning("oh no, that won’t be good") // 优先级 4, WARNING 黄色
log.error("ouch, an error did occur!") // 优先级 5, ERROR 红色
//支持类型: 字符串,数字,日期,等等
log.verbose(123)
log.info(-123.45678)
log.warning(Date())
log.error(["I", "like", "logs!"])
log.error(["name": "Mr Beaver", "address": "7 Beaver Lodge"])
3.效果
3.0四、服务器端Swift
我们❤️服务器端Swift 3和SwiftyBeaver支持它开箱即用!尝试自己,并在Ubuntu Docker容器中运行SwiftyBeaver。只需安装Docker,然后去macOS或Ubuntu上的项目文件夹,并输入:
# 创建docker镜像,构建SwiftyBeaver并运行单元测试
swift build --clean && docker build --rm -t swiftybeaver .
# 可选地登录容器以运行Swift CLI并执行更多操作
docker run --rm -it --privileged=true -v $PWD:/app swiftybeaver
注意:对于流行的Swift服务端web框架Vapor ,你可以使用我们提供的SwiftyBeaver-Vapor