GDLog 1.0.2

GDLog 1.0.2

Gene De Lisa维护。



GDLog 1.0.2

GDLog

Platforms License

Swift Package Manager Carthage compatible CocoaPods compatible

Travis

Swift 4

Platforms iOS Platforms macOS Platforms tvOS Platforms watchOS

Sponsors Twitter @GeneDeLisaDev

Swift的另一个日志记录器。

该工具使用Apple的统一日志OSLog - 以及NSLog作为后备,因此本质上是一个外观。我认为这使OSLog在Swift中更容易使用,因为您可以进行字符串插值。

由于已经有一个名为GDLogger的Cocoapod,因此我将这个改名为GDLog。

需求

  • iOS 10.0+ / Mac OS X 10.12+ / tvOS 10.0+ / watchOS 3.0+
  • Xcode 9.0+

安装

CocoaPods

CocoaPods是Cocoa项目的依赖项管理器。您可以使用以下命令安装它

$ gem install cocoapods

要使用CocoaPods将GDLogger集成到您的Xcode项目中,请在您的Podfile中指定它

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!

pod 'GDLogger', '~> 0.0.1'

然后,运行以下命令

$ pod install

Carthage

Carthage是一个去中心化的依赖管理器,可以自动将框架添加到您的Cocoa应用程序中。

您可以使用以下命令通过Homebrew安装Carthage:

$ brew update
$ brew install carthage

要使用Carthage将GDLogger集成到您的Xcode项目中,请在您的Cartfile中指定它。

github "GDLogger/GDLogger" ~> 0.0.1

Swift Package Manager

要作为Swift Package Manager包使用GDLogger,只需在您的Package.swift文件中添加以下内容。

import PackageDescription

let package = Package(
name: "HelloGDLogger",
dependencies: [
.Package(url: "https://github.com/genedelisa/GDLogger.git", "0.0.1")
]
)

手动整合

如果您不想使用上述任何依赖管理器,您可以手动将GDLogger集成到项目中。

Git子模块

  • 打开终端,在您的根项目目录下使用cd命令。
$ git init
  • 使用以下命令将GDLogger添加为git submodule
$ git submodule add https://github.com/genedelisa/GDLogger.git
$ git submodule update --init --recursive
  • 打开新的GDLogger文件夹,并将GDLogger.xcodeproj拖拽到您的应用Xcode项目的Project Navigator中。

它应该会出现在蓝色应用项目图标下方。它是在所有其他Xcode组之上还是之下并不重要。

  • 在Project Navigator中选择GDLogger.xcodeproj,并验证其部署目标与应用程序目标的匹配。
  • 然后,选择Xcode中的应用程序项目(蓝色项目图标),导航到目标配置窗口,在侧边栏的"Targets"标题下选择应用程序目标。
  • 在该窗口顶部的标签栏中,打开"General"面板。
  • 在"Embedded Binaries"部分点击"+"按钮。
  • 您将看到两个不同的GDLogger.xcodeproj文件夹,每个文件夹中都有一个GDLogger.framework(位于Products文件夹中)。

您可以选择哪个Products文件夹并不重要。

  • 选择GDLogger.framework

  • 这就是全部了!

GDLogger.framework 会自动添加为目标依赖项,在复制文件构建阶段被链接为框架和嵌入框架,这就是您在模拟器和设备上构建所需的所有内容。

嵌入的二进制文件

  • https://github.com/genedelisa/GDLogger/releases 下载最新版本
  • 然后,选择Xcode中的应用程序项目(蓝色项目图标),导航到目标配置窗口,在侧边栏的"Targets"标题下选择应用程序目标。
  • 在该窗口顶部的标签栏中,打开"General"面板。
  • 在"Embedded Binaries"部分点击"+"按钮。
  • 添加下载的 GDLogger.framework
  • 这就是全部了!

其他日志记录选项。

CocoaLumberjack

XCGLogger

用法

Apple 的统一日志记录

为子系统设置日志级别。

$ sudo log config --mode "level:debug" --subsystem com.your_company.your_subsystem_name

例如,从终端(或iterm)设置子系统的调试级别。然后您可以流式传输输出。

$ sudo log config --mode "level:debug" --subsystem com.rockhoppertech.SlowItDown

$ log stream --predicate 'subsystem == "com.rockhoppertech.SlowItDown"' --info --debug

检查当前日志级别。

$ sudo log config --status

使用系统控制台(以及/或 Xcode 的控制台)来读取日志消息。

您可以在控制台应用程序中按子系统过滤。

示例控制台输出

Console

消息表情可以根据级别进行重定义。

var log = GDLogger()
log.debugPrefix = ""
log.debugPostfix = ""

以下是一些示例输出。

2017-12-18 15:54:03.611598-0500 SlowItDown[31758:2620634] [general] 😺😺😺 authorized ☞ checkMediaLibraryPermission() 🗄MediaLibraryController.swift➸121 😺😺😺

创建日志记录器的其他选项。

var log2 = GDLogger(category: "my category")
log2.debug("logging to my category string")

public enum MyCategories: String {
case mycat
}
var log3 = GDLogger(category: MyCategories.mycat.rawValue)
log3.debug("logging to my category enum")

var log4 = GDLogger(.controller, category: .general)
log4.debug("logging to controler subsystem using general category")

许可协议

GDLogger 使用 MIT 许可协议发布。有关详细信息,请参阅 LICENSE