В основному, це підсумовує:
- Програми можуть використовувати API syslog (bsd_in) і API asl (asl_in) для входу повідомлень, передаючи їх демону syslog (syslogd). Інші дані, які реєструються, можуть надходити з ядра (klog_in) або з мережі (udp_in).
- Всі ці повідомлення обробляються syslogd, який виводить повідомлення журналу як шлях BSD (bsd_out: він записує речі в різні базові файли журналу, як / var / log) і в уніфікований магазин журналів повідомлень (asl_action: сховище повідомлень знаходиться в / var / log / asl / *).
- Консоль відображає обидва види засобів реєстрації: "класичні" файли журналів і пошуки бази даних. Навіть якщо ви видаляєте всі файли .log, база даних все ще залишається недоторканою і повною кількістю записів.
Також, якщо ви хочете усунути неполадки, там не потрібно видаляти старі файли журналів , вам доведеться бути більш конкретними над тим, що ви хочете прочитати з журналу. Гарною відправною точкою буде використання "syslog" (не syslogd!) З командного рядка, де можна проаналізувати журнали з більш конкретними інструкціями (подивіться на man syslog). Отже, якщо ви розібрали всі повідомлення, зареєстровані Safari за останні 5 годин, виконайте такі дії:
syslog -k Facility -k Time ge -5h -k Sender Safari
або для перегляду всіх повідомлень, але не з повідомлень Mail:
syslog -k Facility -k Sender ne Mail
Повірте мені, навіть якщо це виглядає заплутаним, краще читати журнали в командному рядку, ніж у Console.app
Але якщо ви хочете продовжувати використовувати консоль, ви все одно можете перевірити сторінку man для aslmanager і syslog.conf, щоб побачити, як ви можете, наприклад. налаштуйте, де зберігаються файли, як довго і як їх архівувати.