Lighty
Easy to use and lightweight logger for iOS, macOS, tvOS, watchOS and Linux in Swift.
Screenshots
Requirements
Lighty Version | Minimum iOS Target | Minimum OS X Target | Minimum watchOS Target | Minimum tvOS Target | Swift Version |
---|---|---|---|---|---|
1.1.7 | iOS 10 | OS X 10.11 | watchOS 3.0 | tvOS 10.0 | Swift 5 |
1.1.6 | iOS 9 | OS X 10.9 | watchOS 2.0 | tvOS 9.0 | Swift 4.1 |
1.1.5 | iOS 9 | OS X 10.9 | watchOS 2.0 | tvOS 9.0 | Swift 4.0 |
1.1.4 | iOS 9 | OS X 10.9 | watchOS 2.0 | tvOS 9.0 | Swift 3.x |
CocoaPods
CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:
$ gem install cocoapods
To integrate Lighty into your Xcode project using CocoaPods, specify it in your Podfile:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!
target '<Your Target Name>' do
pod 'Lighty', '~>1.1.7'
end
Then, run the following command:
$ pod install
Carthage
Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.
You can install Carthage with Homebrew using the following command:
brew update
brew install carthage
To integrate Lighty into your Xcode project using Carthage, specify it in your Cartfile:
github "abdullahselek/Lighty" ~> 1.1.7
Run carthage update to build the framework and drag the built Lighty.framework into your Xcode project.
Swift Package Manager
Modify your Package.swift file to include the following dependency:
.package(url: "https://github.com/abdullahselek/Lighty.git", from: "1.1.7")
Run swift package resolve
Example Usage
import Lighty
let logger = LightyLogger.sharedInstance
logger.log(type: .verbose, message: "Verbose")
logger.log(type: .debug, message: "Debug")
logger.log(type: .info, message: "Info")
logger.log(type: .warn, message: "Warn")
LightyLogger.sharedInstance.log(type: .error, message: "Error for test :)")
or globally add an instance to AppDelegate
import Lighty
let logger = LightyLogger.sharedInstance
class AppDelegate: UIResponder, UIApplicationDelegate {
...
}
and you can reach logger
instance from module classes.
You can set your own date formatter and separator
let dateFormatter = DateFormatter()
dateFormatter.dateStyle = .long
dateFormatter.timeStyle = .long
logger.dateFormatter = dateFormatter
logger.separator = " + "
Enable/Disable formatted date logs
logger.enableDate = false
Enable/Disable logging
logger.enable = false
Logs for just debug mode
logger.dlog(type: .warn, message: "Log for just debug mode")