unicorn + systemd: perdendo o log após a atualização unicorn

3

Estou implantando unicórnio com o systemd pela primeira vez (na verdade, esta é a primeira vez que estou usando o systemd), e estou usando o truque" zero-downtime upgrade ", ou basicamente:

  • Envie USR2 para o processo mestre
  • Isso faz com que um novo mestre & trabalhadores para desovar, o antigo pidfile a ser renomeado e o novo pidfile para refletir o novo PID do mestre
  • Enviar QUIT para o antigo mestre
  • Isso faz com que os funcionários antigos lidem com a solicitação e saída atuais e o antigo mestre morra

Isso tudo está funcionando muito bem, exceto por uma coisa: a captura de log do systemd (por systemctl status ) não vê a saída do novo processo. Eu estou supondo que isso é porque não estava envolvido no processo de transferência ou algo assim?

systemd é ver o novo PID do mestre e rastreá-lo corretamente.

Se eu definir preload_app = false na configuração do unicórnio e apenas HUP o mestre (que não altera o PID do mestre), está tudo bem - mas isso não dá conta do caso em que eu realmente quero atualizar o unicórnio.

Caso seja importante, não estou tendo o daemonize de unicórnio e tenho Type=simple no arquivo de configuração da minha unidade.

Existe alguma maneira de obter systemd para se anexar à saída de log do novo mestre?

    
por Nate 13.05.2016 / 22:04

0 respostas