AELog alternatives and similar libraries
Based on the "Logging" category.
Alternatively, view AELog alternatives based on common mentions on social networks and blogs.
-
SwiftyBeaver
Convenient & secure logging during development & release in Swift 4 & 5 -
XCGLogger
A debug log framework for use in Swift projects. Allows you to log details to the console (and optionally a file), just like you would have with NSLog() or print(), but with additional information, such as the date, function name, filename and line number. -
Dotzu
Debbuger tool for iOS developer. Display logs, network request, device informations, crash logs while using the app. -
TinyConsole
๐ฑ๐ฌ๐ฆ TinyConsole is a micro-console that can help you log and display information inside an iOS application, where having a connection to a development computer is not possible. -
CleanroomLogger
CleanroomLogger provides an extensible Swift-based logging API that is simple, lightweight and performant -
Willow
Willow is a powerful, yet lightweight logging library written in Swift. -
WatchdogInspector
Shows your current framerate (fps) in the status bar of your iOS app -
Duration
A simple Swift package for measuring and reporting the time taken for operations -
Puree
[Obsoleted] A log collector for iOS (new version! -> https://github.com/cookpad/Puree-Swift) -
Atlantis
A powerful input-agnostic swift logging framework made to speed up development with maximum readability. -
AEConsole
Customizable Console UI overlay with debug log on top of your iOS App -
CleanroomASL
A Swift-based API for reading from & writing to the Apple System Log (more commonly known somewhat inaccurately as "the console") -
TraceLog
TraceLog is a highly configurable, flexible, portable, and simple to use debug logging system for Swift and Objective-C applications running on Linux, macOS, iOS, watchOS, and tvOS.
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of AELog or a related project?
Popular Comparisons
README
AELog
Simple, lightweight and flexible debug logging minion written in Swift
If you find yourself in upcoming statements, then you probably want to use AELog:
- I just want to log anything to console while working on a project, then turn it off when going live.
- I'd like to enable / disable logging on a file level, and also to format log lines just the way I like.
- I don't want to have anything other then that, I just want to be up and running in no time.
Index
Features
- Top level logging which can be disabled when needed
- Enable or disable logging on a file level
- Customizable format and verbosity of log lines
Usage
/// Log detailed debugging information with a simple one liner:
aelog()
/// - Note: if this was on line 21 in `viewDidLoad` of a `ViewController`, output could look like this:
/// 2016-04-03 21:08:00.123 -- [Main] ViewController (21) -> viewDidLoad() >
/// Add custom text to log line:
aelog("hi there")
/// Log random items (some interesting variables at the moment)
let text = "One two three four five"
let x: CGFloat = 21
let y: CGFloat = 8
let size = CGSize(width: 19, height: 84)
let rect = CGRect(x: x, y: y, width: size.width, height: size.height)
let range = 1...5
aelog(text, x, y, size, rect, range, Log.shared, self)
/// - Note: in this case output could look like this:
/// 04:01:05.967 -- ViewController (30) -> viewDidAppear >
/// #0: String | "One two three four five"
/// #1: Double | 21.0
/// #2: Double | 8.0
/// #3: CGSize | (19.0, 84.0)
/// #4: CGRect | (21.0, 8.0, 19.0, 84.0)
/// #5: CountableClosedRange<Int> | CountableClosedRange(1...5)
/// #6: Log | AELog.Log
/// #7: ViewController | <AELogDemo_iOS.ViewController: 0x7fd14c41dd60>
/// Log both to debugger and device console:
aelog("this should be logged just in case...", mode: .nsLog)
/// Log Settings
/// Enable or disable logging with one flag and customize formatting as you like.
/// - Warning: `aelog` will by default work only if logging is enabled and file is not disabled in settings,
/// otherwise it will do nothing, but with `mode: .nsLog` it will always work, wether logging is enabled or not.
let settings = Log.shared.settings
settings.isEnabled = true
settings.dateFormat = "yyyy-MM-dd HH:mm:ss.SSS"
settings.template = "{date} -- [{thread}] {file} ({line}) -> {function} > {text}"
/// - Note: toggle logging for specific files like this:
settings.files = [
"AppDelegate" : false,
"ViewController" : true
]
/// LogDelegate
Log.shared.delegate = self
func didLog(line: Line, mode: Log.Mode) {
/// - Note: do something here?
}
One more thing
Have you ever wanted to see the output of your app while you're not at your computer, like in real time directly on your iOS device? Yeah, me neither, but just in case you change your mind (like I did), check out AEConsole - customizable console UI overlay with debug log on top of your iOS app. After all, AELog
was made just to complement AEConsole
.
Installation
-
.package(url: "https://github.com/tadija/AELog.git", from: "0.6.2")
-
github "tadija/AELog"
-
pod 'AELog'
License
AELog is released under the MIT license. See [LICENSE](LICENSE) for details.
*Note that all licence references and agreements mentioned in the AELog README section above
are relevant to that project's source code only.