Aipo e RabbitMQ - Ferramentas para monitoramento e alarmes de callout

1

Acho que atingimos o limite de usabilidade de celery events e celery fllower . Existe uma boa ferramenta para monitorar o status do Celery rodando sob o RabbitMQ?

Em particular, gostaria que algo levantasse um alarme quando:

  • Minhas filas estão fazendo backup
  • Os consumidores registram ou cancelam o registro

Também seria bom saber:

  • Quantas tarefas executadas quando - algum tipo de histórico de registros de métricas
  • Duração média da tarefa, etc.
por Goro 08.06.2013 / 01:31

1 resposta

2

Eu não uso o Celery, mas uso o RabbitMQ há algum tempo. Agora eu uso Diamond com o colecionador RabbitMQ para enviar estatísticas para o Graphite e, em seguida, monitorar a duração de cada fila. Isso pelo menos informará quando as filas estão sendo salvas, embora não inclua os limites de memória ou disco usados pelo RabbitMQ. Não é garantido que você informe quando os consumidores registram ou cancelam o registro, mas podem informar quantos há. No meu caso, se houver consumidores e as filas não são terrivelmente backup, então não há um problema grande o suficiente para se preocupar com isso.

Existem estatísticas para o número de publicações / entrega / reenvio / acks que você pode usar para rastrear o histórico de taxa de transferência.

Eu acompanho a duração da tarefa, mas pelo que tenho visto é realmente apenas uma questão do lado do cliente e terá que ser feito diretamente no Celery, para o qual StatsD funciona muito bem. O (de) registro do consumidor pode ser possível com alguns ganchos na publicação do Celery + StatsD.

Para monitorar o Graphite, eu escrevi minha própria ferramenta como um intervalo, mas Umpire é útil e existe um plugin Graphite para o Nagios.

    
por 09.06.2013 / 18:33