/dev/console
Urządzenie nie jest szczególnie związany z konsoli aplikacji.
W systemie Mac OS X 10.6 aplikacja konsolowa ma dwa rodzaje źródeł danych, które czyta: normalne pliki dziennika (np. Pliki w /var/log/
) i wiadomości logowane za pomocą (syslog rozszerzonego Apple).
Jeśli masz plik dziennika, który chcesz monitorować, możesz użyć pozycji menu Plik > Otwórz… (⌘O), aby wyświetlić plik w konsoli .
Uwaga: wydaje się, że jedynym sposobem na usunięcie pliku z listy plików konsoli jest skorzystanie z menu Plik > Przenieś do Kosza (⌘⌫); przygotuj się na wyciągnięcie pliku z Kosza, jeśli chcesz przestać go oglądać w konsoli .
Za pomocą programu wiersza polecenia syslog można wysyłać wiadomości do narzędzia syslog.
syslog -s Your message goes here. \(quote special chars for the shell'!)'
Jednak w domyślnej konfiguracji ten komunikat nigdy nie pojawi się w żadnym z widoków konsoli, ponieważ jego „poziom” jest zbyt niski, aby był ważny. To wstępne filtrowanie jest spowodowane przez syslogd . Jest konfigurowany przez pliki asl.conf
i syslog.conf
. Domyślna konfiguracja nie przechowuje większości wiadomości, jeśli ich poziom jest zbyt niski (i syslog -s
domyślnie najniższy poziom). Konsola może wyświetlać tylko wiadomości zapisane przez syslogd .
Możesz zmienić wartość pola Poziom, korzystając z -l
opcji:
syslog -s -l notice This message should show up in \"All Messages\" \
with a Facility of syslog.
notice
Poziom jest (domyślnie) najniższy poziom, dla którego syslogd będzie przechowywać większość wiadomości.
Komunikat generowany w ten sposób pojawi się w konsoli „s wbudowaną«Wszystkie Komunikat ten»przeszukiwanie bazy danych
(plik All Messages.aslquery
w /Applications/Utilities/Console.app/Contents/Resources/ASLQueries/
technicznie ogranicza go do wiadomości, gdzie pole Instrument«zawiera»pusty łańcuch, ale warunek ten jest trywialnie spełnione przez każdego instrumentu wartość).
Jeśli chcesz, aby Twoja wiadomość pojawi się w konsoli „s wbudowaną«Konsola»Komunikaty wyszukiwania bazy danych, to musi być nieco bardziej szczegółowe. Pokazuje tylko (zapisane) wiadomości, które mają pole Facility równe com.apple.console
(patrz plik Console Messages.aslquery
w /Applications/Utilities/Console.app/Contents/Resources/ASLQueries/
). Możesz generować takie wiadomości za pomocą syslog poprzez -k
opcję ustawienia pola Facility.
syslog -s -k Facility com.apple.console \
-k Level notice \
-k Message 'This will show up in "Console Messages"'
Podczas używania -k
wszystkie opcje i sama wiadomość muszą być określone zestawami -k key value
argumentów (nie możemy użyć -l
do ustawienia poziomu). Oznacza to, że musimy umieścić wiadomość w jednym argumencie, aby mogła to być wartość pola Wiadomość.