20. Eventos coletados
● Todo evento específico de cada app do New Relic
○ Transaction/TransactionError - APM
21. Eventos coletados
● Todo evento específico de cada app do New Relic
○ Transaction/TransactionError - APM
○ PageView - Web
22. Eventos coletados
● Todo evento específico de cada app do New Relic
○ Transaction/TransactionError - APM
○ PageView - Web
○ MobileSession - Mobile apps
30. New Relic Query Language
● É parecido com SQL
● Não tem JOIN (API)
31. New Relic Query Language
● É parecido com SQL
● Não tem JOIN (API)
● Não tem subsql (API)
32. New Relic Query Language
● É parecido com SQL
● Não tem JOIN (API)
● Não tem subsql (API)
● Te deixa colocar WHERE em quase qualquer lugar e isto não está errado, supera.
36. SELECT *
FROM Transaction
WHERE appName = 'production.ucs-printer'
AND httpResponseCode IN (400, 500)
WHERE appId = '123123asdasd123'
37. SELECT *
FROM Transaction
WHERE appName = 'production.ucs-printer'
AND httpResponseCode IN (400, 500)
WHERE appId = '123123asdasd123'
SINCE 2 days ago UNTIL now
45. Atributos customizados
● Não utilizar nomes dinâmicos no nome dos atributos
● É aconselhável mapear objetos com ponto
○ request.id
○ request.length
Boas práticas
46. Atributos customizados
● Não utilizar nomes dinâmicos no nome dos atributos
● É aconselhável mapear objetos com ponto
○ request.id
○ request.length
● É aconselhável mapear atributos em camelCase
Boas práticas
47. Atributos customizados
● Não utilizar nomes dinâmicos no nome dos atributos
● É aconselhável mapear objetos com ponto
○ request.id
○ request.length
● É aconselhável mapear atributos em camelCase
● Ligar distributed trace
Boas práticas
49. AddAttribute(key string, value interface{}) error
if tx := newrelic.FromContext(ctx); tx != nil {
tx.AddAttribute(key, value)
}
Exemplo Custom attributes: GO
50. ctx := context.TODO() //the context must have a transaction embedded
telemetry.AddAttributes(ctx, "name", "rage", "version", "1.0.0")
Exemplo Custom attributes: GO
53. ● É um dispositivo físico com várias esteiras
Contexto: sorter
54. ● É um dispositivo físico com várias esteiras
● Recebe um pacote e "chuta" o mesmo para uma rampa pré determinada
Contexto: sorter
55. ● É um dispositivo físico com várias esteiras
● Recebe um pacote e "chuta" o mesmo para uma rampa pré determinada
● Feito para processar grande fluxo de pacotes
Contexto: sorter
56. ● É um dispositivo físico com várias esteiras
● Recebe um pacote e "chuta" o mesmo para uma rampa pré determinada
● Feito para processar grande fluxo de pacotes
● Possui checkpoints para informar eventos
● Etc
Contexto: sorter
57. Diariamente processamos diversos pacotes no sorter, como o New
Relic Insights pode nos ajudar a entender o comportamento
desses pacotes?
Exemplo
58. NR - Funnel
Te permite perguntar: "Dos pacotes que executaram o passo 1,
quantos também executaram o passo 2, e dos pacotes que
concluíram os passos 1 e 2, quantos também concluíram até o
passo 3?
85. Exemplo - Análise
Possível identificar visualmente
● Quanto mais chamadas a função "calcular" mais lento o request
● Caso seja necessário ter várias chamadas a essa função
○ é nesse ponto que devemos aplicar uma melhoria
88. Permite criar alertas
● Em aplicações monitoradas (New Relic APM)
● Utilizando dados client-side (New Relic Browser)
Alertas
89. Permite criar alertas
● Em aplicações monitoradas (New Relic APM)
● Utilizando dados client-side (New Relic Browser)
● Sobre infraestruturas monitoras (New Relic Servers)
Alertas
90. Permite criar alertas
● Em aplicações monitoradas (New Relic APM)
● Utilizando dados client-side (New Relic Browser)
● Sobre infraestruturas monitoras (New Relic Servers)
● Sobre external services (New Relic APM)
Alertas
91. Permite criar alertas
● Em aplicações monitoradas (New Relic APM)
● Utilizando dados client-side (New Relic Browser)
● Sobre infraestruturas monitoras (New Relic Servers)
● Sobre external services (New Relic APM)
● Baseado em queries (New Relic Insights)
Alertas
106. New Relic
● Quanto mais recursos usamos do New Relic, mais aproveitamos suas funcionalidades
● Maior controle sobre métricas de aplicação
○ e de negócio
● Melhoria da sua aplicação
Conclusão