O /dev/console
dispositivo não está especialmente relacionado ao aplicativo Console .
No Mac OS X 10.6, o aplicativo Console possui dois tipos de fontes de dados: arquivos de log normais (por exemplo, os arquivos inseridos /var/log/
) e mensagens registradas no recurso syslog (estendido pela Apple).
Se você possui um arquivo de log que deseja monitorar, pode usar o item de menu Arquivo > Abrir ... (⌘O) para visualizar o arquivo no console .
Nota: A única maneira de remover um arquivo da lista de arquivos do console parece ser usar o item de menu Arquivo > Mover para a lixeira (⌘⌫); esteja preparado para retirar o arquivo da lixeira se você quiser parar de assisti-lo no console .
Você pode usar o programa de linha de comando syslog para enviar mensagens para o recurso syslog.
syslog -s Your message goes here. \(quote special chars for the shell'!)'
No entanto, na configuração padrão, essa mensagem nunca será exibida em nenhuma das visualizações do console, pois seu "nível" é muito baixo para ser importante. Essa filtragem inicial ocorre devido ao syslogd . É configurado pelos arquivos asl.conf
e syslog.conf
. A configuração padrão não armazena a maioria das mensagens se seu nível for muito baixo (e o syslog -s
padrão é o nível mais baixo). O console pode mostrar apenas as mensagens que foram armazenadas pelo syslogd .
Você pode alterar o valor do campo Nível usando a -l
opção:
syslog -s -l notice This message should show up in \"All Messages\" \
with a Facility of syslog.
O notice
nível é o nível mais baixo (padrão) para o qual o syslogd armazenará a maioria das mensagens.
A mensagem gerada como esta vai aparecer no Console ‘s built-in‘Todos os messsages’pesquisa de banco de dados
(o arquivo All Messages.aslquery
em /Applications/Utilities/Console.app/Contents/Resources/ASLQueries/
tecnicamente limita a mensagem onde o campo Facility‘contém’a cadeia vazia, mas esta condição é trivialmente satisfeita por qualquer Facility valor).
Se você quiser que sua mensagem apareça em Console ‘s built-in‘Console Messages’pesquisa de banco de dados, então você deve ser um pouco mais específico. Ele mostra apenas mensagens (armazenadas) que possuem um campo de facilidade igual a com.apple.console
(consulte o arquivo Console Messages.aslquery
em /Applications/Utilities/Console.app/Contents/Resources/ASLQueries/
). Você pode gerar essas mensagens com o syslog pela -k
opção de definir o campo Facilidade.
syslog -s -k Facility com.apple.console \
-k Level notice \
-k Message 'This will show up in "Console Messages"'
Ao usar -k
, todas as opções e a própria mensagem devem ser especificadas com conjuntos de -k key value
argumentos (não podemos usar -l
para definir o nível). Isso significa que precisamos colocar a mensagem em um único argumento para que possa ser o valor do campo Mensagem.