2013-01-07 36 views
8

Tôi đang điều tra xem tôi có thể nhận được hiệu suất tốt hơn từ asl_log hơn NSLog trên iPhone/iOS (có lẽ ...) nhưng tôi bị kẹt ở điểm có vẻ như đầu ra nhật ký của asl sẽ hiển thị trong Hệ thống Bảng điều khiển (có thể xem được bằng một số ứng dụng như System Console, iConsole, v.v.). Tôi biết rằng tôi đang thiết lập nó ngay từ khi tôi mở ASL_OPT_STDERR và tôi thấy các mục nhật ký trong XCode khi thiết bị được kết nối với nhau.làm thế nào để có được asl_log xuất hiện trong đầu ra giao diện điều khiển hệ thống iOS?

Tôi đã khám phá rất nhiều nội dung thú vị trực tuyến (ví dụ: http://boredzo.org/blog/archives/2008-01-20/asl-logging, https://github.com/robbiehanson/CocoaLumberjack) và hy vọng tốt nhất dường như là asl_open() với Cơ sở "com.apple.console" nhưng than ôi, đầu ra vẫn không hiển thị trong Bảng điều khiển. NSLog có phải là lựa chọn duy nhất không?

Trả lời

5

Bạn cần đặt đặc quyền đọc trên thư, sử dụng ReadUID hoặc ReadGID. Việc đặt thành -1 sẽ cho phép bất kỳ người dùng/nhóm nào xem thông báo theo tài liệu tệp tiêu đề.

aslmsg msg = asl_new(ASL_TYPE_MSG); 
asl_set(msg, ASL_KEY_READ_UID, "-1"); 
asl_log(NULL, msg, ASL_LEVEL_NOTICE, "Hello, world!"); 
asl_free(msg); 
9

Thêm STDERR để ASL và sau đó nó xuất hiện trong giao diện điều khiển

asl_add_log_file(NULL, STDERR_FILENO); 
Các vấn đề liên quan