Pular para o conteúdo principal
Breadcrumbs estão disponíveis desde a versão 2.11.2 da gem Ruby.
Os breadcrumbs foram inicialmente implementados em nossa biblioteca JavaScript front-end com a ideia de que ajudariam a depurar um problema quando você tem uma trilha de breadcrumbs com ações (do usuário) que levaram ao erro. Então percebemos que isso também poderia ser útil para requisições back-end, onde você pode adicionar uma lista ordenada por tempo das ações que levaram ao erro. Por exemplo, adicionando breadcrumbs através de árvores de decisão que de outra forma não são instrumentadas. Breadcrumbs

Uso

Por padrão, nenhum breadcrumb é rastreado, mas é muito fácil rastrear os seus próprios. Sempre que um evento interessante, operação ou mudança de estado ocorrer no seu app, você pode deixar um breadcrumb assim:
Appsignal.add_breadcrumb("Navigation", "https://example.com", "", { :response => 200 }, Time.now.utc)
Appsignal.add_breadcrumb("Network", "[GET] https://example.com", "", { :response => 500 })
Appsignal.add_breadcrumb("UI", "closed modal(change_password)", "User closed modal without actions")
Apenas os últimos 20 breadcrumbs adicionados serão adicionados à transaction atual.

Opções de Breadcrumb

OpçãoTipoDescrição
categoryStringCategoria para rotular o evento
actionStringInformações contextuais relacionadas ao evento
messageString(opcional) Uma mensagem de log ou outra string para enviar ao AppSignal
metadataObject<String, String>(opcional) Um objeto de metadados relacionados ao evento
timeTime object(opcional) Objeto Time que responde a .to_i, o padrão é Time.utc