Existem práticas recomendadas e / ou ferramentas para o monitoramento 'nohup'?

7

Eu uso nohuppara iniciar playbooks Ansible dentro do Master, que é gerado via boto3 da AWS Lambda.

Este manual cria vários trabalhadores, faz com que eles executem algumas tarefas e os encerra.

Então, eu quero projetar / construir um sistema de monitoramento confiável para o mesmo. Por enquanto, estou gravando os logs de nohupum tasks.logarquivo dentro do master e enviando-o para uma loja (por enquanto, S3) quando as execuções do Ansible forem concluídas.

Mas, eu queria saber se existe um método muito mais elegante (e / ou) melhor para fazer o mesmo? E também, se existem boas ferramentas que me ajudariam no processo?

Dawny33
fonte
algo ao redor do ELK / filebeat para enviar os logs seria uma opção interessante?
Tensibai 31/03
@ Tensibai Sim, também estamos explorando a pilha ELK :). Mas, por enquanto, o S3 é suficiente.
Dawny33
Eu estou muito inseguro para entender o que você está procurando de fato: p
Tensibai 31/03
O que você quer saber sobre eles?
Xiong Chiamiov 02/04
Parece bobagem de usar nohupquando o redirecionamento para um arquivo de log e a execução em segundo plano são integrados ao shell atualmente.
chicks

Respostas:

8

Não tenho certeza de que seja uma prática recomendada, mas o que eu faria seria usar a batida de arquivos para ler o log quase em tempo real e enviá -lo ao ElasticSearch.
A AWS fornece um serviço ElasticSearch que pode te salvar dessa parte.

A desvantagem de usar a batida de arquivo diretamente para a pesquisa elástica é que o horário dos eventos será o horário em que o prospector os lerá e, se seus logs tiverem um carimbo de data e hora, eles poderão ser "ingeridos" em ordem diferente da produzida (de vários trabalhadores).

Você pode adicionar o Logstash entre eles, enviando do arquivo para o logstash e, em seguida, para a pesquisa elástica. O Logstash pode interpretar seus logs e dividi-los em campos para pesquisar novamente, da mesma maneira que você pode analisar sua data no log para que os eventos sejam armazenados com um carimbo de data / hora correto.

Você pode usar o logstash diretamente para ler os logs, mas é muito pesado em recursos, portanto, eu o manteria separado para não afetar os trabalhadores.

Se você comprar uma licença do x-pack, poderá adicionar alertas nas mensagens diretamente da elasticsearch.

Se você deseja economizar com o fardo de manter o armazenamento de log, existem serviços como o logmatic.io, que fornece a pilha completa, basta empurrar seus logs e várias análises são processadas em estoque.

Tensibai
fonte