美文网首页程序员iOS Developer
SwiftyBeaver使用 (Swift多彩日志记录)

SwiftyBeaver使用 (Swift多彩日志记录)

作者: LuisX | 来源:发表于2017-03-15 14:00 被阅读1403次
    SwiftyBeaver

    官方网站
    官方GitHub

    一、简介

    全球首个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.4

    Mac 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

    五、文档

    swiftybeaver文档

    相关文章

      网友评论

        本文标题:SwiftyBeaver使用 (Swift多彩日志记录)

        本文链接:https://www.haomeiwen.com/subject/wuplnttx.html