Cocoa Lumberjack에 파일 및 회선 번호를 표시하는 방법을 찾으려고합니다.Cocoa Lumberjack : 파일 및 행 번호를 표시하는 방법?
Google 검색 및 일부 인터넷 검색을 통해 손쉽게이 작업을 수행 할 수있는 방법을 찾지 못했습니다.
사용자 정의 포맷터를 추가하지 않으면이 작업을 수행 할 수있는 방법이 있습니까?
Cocoa Lumberjack에 파일 및 회선 번호를 표시하는 방법을 찾으려고합니다.Cocoa Lumberjack : 파일 및 행 번호를 표시하는 방법?
Google 검색 및 일부 인터넷 검색을 통해 손쉽게이 작업을 수행 할 수있는 방법을 찾지 못했습니다.
사용자 정의 포맷터를 추가하지 않으면이 작업을 수행 할 수있는 방법이 있습니까?
글쎄, 말했듯이, 내장 된 방법이 없습니다. 그래서, 구현 한 사용자 정의 포맷터 : Urk의가, 거기에 어떤 사소한 방법이 아니다, 그러나 당신이 당신의 자신의 포맷을 정의하는 경우가
클래스가 작동하면 로깅 코드를 좀 더 장황하게 만듭니다. 내 프로젝트에서 내가 지금처럼 CocoaLumberjack의 사용을 몇 가지 추가 매크로 추가를 선택했다 : 클라이언트 코드에서
// Prefix.pch file
// ...
#ifdef DEBUG
#define DLogError(fmt, ...) DDLogError((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
#define DLogWarn(fmt, ...) DDLogWarn((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
#define DLogInfo(fmt, ...) DDLogInfo((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
#define DLogDebug(fmt, ...) DDLogDebug((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
#define DLogVerbose(fmt, ...) DDLogVerbose((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
#else
#define DLogError(fmt, ...)
#define DLogWarn(fmt, ...)
#define DLogInfo(fmt, ...)
#define DLogDebug(fmt, ...)
#define DLogVerbose(fmt, ...)
#endif
를, 당신은 다음 호출 할 수 있습니다은 https :
DLogWarn(@"This is a warning");
별도의 포맷이 동안 (doc 참조) 아주 간단 제안으로
@interface LineNumberLogFormatter : NSObject<DDLogFormatter>
- (NSString *)formatLogMessage:(DDLogMessage *)logMessage;
@end
@implementation LineNumberLogFormatter
- (NSString *)formatLogMessage:(DDLogMessage *)logMessage
{
NSString *path = [NSString stringWithCString:logMessage->file encoding:NSASCIIStringEncoding];
NSString *fileName = [path lastPathComponent];
return [NSString stringWithFormat:@"%@:%d %@", fileName, logMessage->lineNumber, logMessage->logMsg];
}
@end
고맙습니다. 매우 도움이됩니다. – Natalia
서식 문서는 여기로 이동 : //github.com/CocoaLumberjack/CocoaLumberjack/blob/master/Documentation/CustomFormatters.md – Natalia