12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- #import "DDOSLogger.h"
- #import <os/log.h>
- @implementation DDOSLogger
- static DDOSLogger *sharedInstance;
- + (instancetype)sharedInstance {
- static dispatch_once_t DDOSLoggerOnceToken;
- dispatch_once(&DDOSLoggerOnceToken, ^{
- sharedInstance = [[[self class] alloc] init];
- });
- return sharedInstance;
- }
- - (instancetype)init {
- if (sharedInstance != nil) {
- return nil;
- }
- if (self = [super init]) {
- return self;
- }
- return nil;
- }
- - (void)logMessage:(DDLogMessage *)logMessage {
-
- if ([logMessage->_fileName isEqualToString:@"DDASLLogCapture"]) {
- return;
- }
-
- if(@available(iOS 10.0, macOS 10.12, tvOS 10.0, watchOS 3.0, *)) {
-
- NSString * message = _logFormatter ? [_logFormatter formatLogMessage:logMessage] : logMessage->_message;
- if (message) {
- const char *msg = [message UTF8String];
-
- switch (logMessage->_flag) {
- case DDLogFlagError :
- os_log_error(OS_LOG_DEFAULT, "%{public}s", msg);
- break;
- case DDLogFlagWarning :
- case DDLogFlagInfo :
- os_log_info(OS_LOG_DEFAULT, "%{public}s", msg);
- break;
- case DDLogFlagDebug :
- case DDLogFlagVerbose :
- default :
- os_log_debug(OS_LOG_DEFAULT, "%{public}s", msg);
- break;
- }
- }
-
- }
- }
- - (DDLoggerName)loggerName {
- return DDLoggerNameOS;
- }
- @end
|