- Instrumentação personalizada em Ruby
- Instrumentação personalizada em Elixir
- Instrumentação personalizada em Node.js
- Instrumentação personalizada em Python
Grupos de eventos
Todo evento criado pela instrumentação do AppSignal tem um nome. Neste nome também está presente o grupo pai do evento. Esse nome de grupo permite que o AppSignal agrupe eventos de consultas ao banco de dados e renderização de views. Usando esse agrupamento, podemos criar visões gerais que mostram tempos de execução por grupo, bem como eventos individuais. Por exemplo, nossa integração com Rails cria estes grupos:active_record,
action_view, action_controller, etc.
Nomenclatura de eventos
Um nome de evento é uma string composta por caracteres alfanuméricos, sublinhados e pontos. Espaços e traços não são aceitos. Pense nesta regex,([a-zA-Z0-9_.]+); se for aceita por esta regex, o nome do evento é aceito.
Vamos começar com um nome de evento simples.
Shell
. em uma chave.
O grupo é tudo após esse ponto.
O grupo de um evento é a biblioteca de código à qual ele pertence ou o tipo de
ação que ele representa, como uma consulta ao banco de dados ou uma requisição
HTTP.
Também funciona com vários pontos em uma chave.
Shell
other.
Exemplos
Alguns exemplos de chaves usadas pelas integrações do AppSignal:- ActiveRecord:
sql.active_record - Redis:
query.redis - Elasticsearch:
search.elasticsearch - ActionView:
render_template.action_viewerender_partial.action_view - Net::HTTP do Ruby:
request.net_http - Sidekiq:
perform_job.sidekiq - Instrumentação de métodos em Ruby:
method_name.ClassName.other, e;method_name.class_method.NestedClassName.ParentModule.other