Have a look here: http://github.com/tcurdt/feedbackreporter/blob/443300c21f6b7c5b70298edd861b4b2017a97b00/Sources/Main/FRConsoleLog.m
HTH -- Torsten On Mon, May 4, 2009 at 22:49, Randall Meadows <[email protected]> wrote: > I want to have a custom log file for my app, so that my client can send it > to me when things go "different". > > In reading the docs for NSLog, it seems that it is just a front-end for asl. > So here's what I thought should work: > > directories = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, > NSUserDomainMask, YES); > NSString *logFileName = nil; > int result = 0; > if ([directories count] > 0) { > logFileName = [directories objectAtIndex:0]; > logFileName = [logFileName stringByAppendingPathComponent:@"Logs"]; > if ([fileMgr createDirectoryAtPath:logFileName > withIntermediateDirectories:YES attributes:nil error:nil]) { > logFileName = [logFileName > stringByAppendingPathComponent:@"MyLogFile.log"]; > int fd = open([logFileName fileSystemRepresentation], > (O_RDWR|O_CREAT|O_TRUNC), (S_IRWXU|S_IRWXG|S_IRWXO)); > if (fd != -1) { > result = asl_add_log_file(NULL, fd); > } > } > } > > This results in the file being created, but nothing ever being written to > it. In Console.app, I can see the messages when I select "All Messages", > "Console Messages", and "system.log", but *not* "MyLogFile.log". > > I assume it has something to do with this comment in the docs for NSLogv > (which NSLog calls): "If the STDERR_FILENO file descriptor has been > redirected away from the default or is going to a tty, it will also be > written there. If you want to direct output elsewhere, you need to use a > custom logging facility." This seems contradictory to the statement that > NSLog "Logs an error message to the Apple System Log facility." If anyone > would like to educate me on my obvious misunderstanding of this, I'd > appreciate it. > > Anyway, I tried it, and yes, redirecting stderr to my log file does put all > my NSLogs into my log file. But, it also prevents the messages from being > seen in Xcode's Console window. > > How can I have my cake and eat it too? > > > randy > _______________________________________________ > > Cocoa-dev mailing list ([email protected]) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > http://lists.apple.com/mailman/options/cocoa-dev/tcurdt%40vafer.org > > This email sent to [email protected] > _______________________________________________ Cocoa-dev mailing list ([email protected]) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to [email protected]
