是否可以将os_log消息存储到文本文件中?或者是否可以使用方法重排来观察 os_log() 函数调用?



我有两个用Objective-c编写的iOS应用程序。对于其中一个应用程序,我正在使用自己的日志记录功能。我将日志存储在本地数据库中,并将日志消息发送到服务器以进行调试和检查应用程序的性能。

在另一个应用程序中,我使用os_log进行日志记录。在大多数地方,我使用以下行来记录事件。 os_log(OS_LOG_DEFAULT,"日志消息转到此处"(;

现在我想将这些日志存储到本地数据库并将其发送到我的服务器。可以这样做吗?

我在某篇文章中读到,我们可以使用方法重排来记录事件。是否可以在此处使用方法切换。如果没有,有没有办法将os_log消息保存到本地数据库。

您可以定义一个新的宏来调用os_log和保存方法

#define my_log(p1, p2) [MyLog logWithParam:p1 p2:p2]
@interface MyLog : NSObject
+(void)logWithParam:(NSString*)p1 p2:(NSString*)p2;
@end
@implementation MyLog
+(void)logWithParam:(NSString*)p1 p2:(NSString*)p2{
os_log(p1, p2);
[self saveLogToLocalFile];
}
@end

最新更新