2009-09-26 2 views
14

백그라운드에서 작동하는 첫 번째 objective-c 데몬 유형 프로세스를 작성하고 있습니다. 모든 일이 제대로 기록되어야합니다.objective-c logging best practices

나는 애플 제품에 처음으로 익숙하지 않으므로 잘 모르겠다. 활동을 기록하는 가장 일반적인 방법은 무엇인가? 모든 사람들이 단순히 자신의 특수 형식으로 텍스트 파일에 로그온하거나 시스템 호출을 사용합니까?

답변

15

Apple System Logger을 확인해야합니다. ASL은 시스템 로그 데이터베이스에 기록하고 (Console.app 또는 자신의 앱에서 로그를 쉽게 조회 할 수 있도록 함) 하나 이상의 플랫 파일 (원하는 경우)에 추가로 기록합니다. ASL에 Peter Hosey의 introduction이 내가 알고있는 최고입니다. ASL은 C 레벨 API이지만 원하는 경우 Objective-C를 래핑하는 것이 상대적으로 쉽습니다. 나는 또한 Google's Toolbox for Mac을 봐서 추천 할 것입니다. 그 외에도 ASL 지원이 포함 된 GTMLogger 기능이 포함되어 있습니다. 나는 GTMLogger에 찬성하여 집에서 자란 ASL 래퍼를 버렸다.

+0

Mac 용 Google 툴박스 링크를 이용해 주셔서 감사합니다. 구글은 구글 코드에 정말 멋진 프로젝트를 가지고있다! – Jesper

0

시도해 볼만한 또 다른 방법은 https://github.com/CocoaLumberjack입니다. Lumberjack은 매우 유연하며 다양한 대상에 로그를 기록하고 로그 수준을 구성 할 수 있습니다. 로그에 익숙하다면 매우 log4j/log4net입니다.

또한 ASL보다 빠르다고보고했습니다 ... 기능이나 속도면에서 GTMLogger와 어떻게 비교되는지 모르겠지만 문서는 좀 더 친숙한 것으로 보입니다.