Pular para o conteúdo principal
As integrações do AppSignal para Ruby, Elixir, Node.js e Python oferecem métodos e funções auxiliares que permitem enviar facilmente eventos de monitor de processo para o AppSignal.
Os helpers de integração ainda usam CheckIn, checkIn e check_in no código para compatibilidade com aplicações existentes.

Eventos de monitor de processo cron

Para notificar o AppSignal que um cron job terminou com sucesso, use a função auxiliar cron, passando o nome do monitor de processo cron como argumento.
def send_invoices
  # ... your code here ...
  Appsignal::CheckIn.cron("send_invoices")
end
É seguro chamar a função auxiliar cron várias vezes em um curto período, pois o helper enviará no máximo um evento de finalização ao AppSignal a cada dez segundos.

Monitorando a duração do job

Para monitorar a duração de um cron job, você pode usar a função auxiliar cron com um bloco ou função que contém o código que deseja monitorar. Isso enviará eventos ao AppSignal tanto quando o job começa quanto quando termina.
def send_invoices()
  Appsignal::CheckIn.cron("send_invoices") do
    # ... your code here ...
  end
end
Se uma exceção for levantada dentro da função ou método sendo monitorado, o evento de finalização não será reportado ao AppSignal, acionando uma notificação de monitor de processo ausente. A exceção será re-levantada. Se o contexto em que a exceção é levantada for um contexto monitorado pelo AppSignal, então a exceção será reportada ao AppSignal. Caso contrário, se você quiser reportar a exceção ao AppSignal, pode usar nossos helpers de tratamento de exceções para Ruby, Elixir, Node.js ou Python.

Eventos de monitor de processo heartbeat

Para enviar um evento de monitor de processo heartbeat para o AppSignal, use a função auxiliar heartbeat, passando o nome do monitor de processo heartbeat como argumento. É seguro chamar heartbeat várias vezes, pois o helper enviará no máximo um evento de heartbeat ao AppSignal a cada dez segundos.
loop do
  Appsignal::CheckIn.heartbeat("job_processor")
  # ... your code here ...
end

Enviando heartbeats continuamente

Para enviar monitores de processo heartbeat continuamente, você pode passar a opção { continuous: true } para a função auxiliar heartbeat. Isso é útil para monitorar o tempo de vida do próprio processo. O helper enviará um evento de heartbeat ao AppSignal a cada trinta segundos.
Appsignal::CheckIn.heartbeat("job_processor", continuous: true)

Revisando ocorrências de monitor de processo no AppSignal

Uma vez configurado, o AppSignal começará a exibir informações sobre ocorrências dos seus monitores de processo. Você pode ler mais sobre ocorrências em nossa documentação de ocorrências de monitor de processo.