Como agregar e classificar stout / logs em tempo real no Mac?

0

Estou desenvolvendo um aplicativo rails e scala que usa MySQL, Redis, MongoDB e memcached no OSX.

É bastante irritante ter sempre 6 terminais abertos e percorrer os logs lá, então eu queria saber se existe uma ferramenta que me permite iniciar os programas e, em seguida, pegue o stdout / log para o socket (ou logfile cauda se essa é a única saída) e agregue-a com prefixos para a origem

[MySQL        - 00pid00] SELECT .......
[Rails Server - 11pid11] GET request to /foo
...

O ideal é que eu também possa classificar e filtrar como Apache Chainsaw permite o log4j e criar meus próprios campos baseado em regex (ou seja, quando há um erro, mostre-me um campo que exibe apenas a URL do erro e a resposta / arquivo HTTP + linha que causou o erro.

(Eu sei sed grek awk e co, mas uma interface gráfica é muito mais fácil de usar e muito mais rápido para começar)

    
por mmlac 04.06.2013 / 23:17

2 respostas

0

Se você puder configurar cada um desses sistemas para registrar em arquivos, você poderá ligar esses registros a partir do Chainsaw e agregar as entradas de log em uma única tabela. Veja como:

  • Baixe o último instantâneo de desenvolvedor do Chainsaw: link
  • Selecione a guia "Bem-vindo" e clique no botão "Visualizar exemplo de configuração do receptor" na parte superior da guia e copie a configuração -Crie um número de entradas VFSLogFilePatternReceiver, uma para cada arquivo de log que você vai seguir.
    • O logFormat mais simples é o MESSAGE - ele colocará cada linha de log no campo MESSAGE em uma linha no Chainsaw.
    • Você pode fazer com que o Chainsaw analise a linha de log usando os campos definidos no javadoc LogFilePatternReceiver: link
    • Observe se o seu formato de registro abrange várias linhas que você pode usar (LF) para representar um feed de linha (ainda não nesse JavaDoc)
  • Depois que todos os seus arquivos de log estiverem sendo exibidos no Chainsaw como guias separadas, você poderá coletar todos os eventos de todas as guias em uma nova guia definindo uma expressão que corresponda aos eventos que deseja ver (consulte a Ajuda / Tutorial documentação sobre sintaxe de expressão).
    • Dica: limpe e pause a aba do log da motosserra (no menu 'guia atual') para ter certeza de que as mensagens de registro da motosserra não estão misturadas com a sua
    • Selecione "visualizar, criar guia a partir da expressão"
    • A expressão mais simples que corresponderá a todas as entradas em todas as guias é MSG EXISTS
    • uma nova guia com sua expressão será criada e preenchida com todos os eventos existentes que correspondam à expressão
    • à medida que novos eventos chegam que correspondem à expressão, eles serão adicionados à guia original, bem como à guia de expressão
por 07.06.2013 / 01:56
1

Você pode adicionar seus próprios arquivos de log ao padrão /Applications/Utilities/Console.app

    
por 05.06.2013 / 00:01

Tags