SlideShare uma empresa Scribd logo
1 de 40
Baixar para ler offline
InfluxDB + Grafana
Telemetria na sua plataforma
Celso Crivelaro
@celsocrivelaro
DEVELOPER @
Por quê?
Crise da
Plataforma
"O software está
lento..."
Healthcheck OK!
Logs OK!
Testes manuais OK!
Corrigimos o problema,
mas ainda ficou a falta
de visibilidade…
Healthcheck: OK / NOK
Não tínhamos números dos tempos da plataforma
Era muito difícil perceber tendências e casos
estranhos
Logs apenas mostram operações
Clientes percebiam problemas antes da gente
1a IDEIA
Fazer um teste de carga
Dev / QA / Produção Diferentes
Não dá para quebrar Produção
Iria querer muito tempo de dev/ops
O número iria mostrar apenas o teto da plataforma
2a IDEIA
Monitorações das máquinas
Monitoramento de memória / carga / disco / filas
As máquinas estavam OK, a app não
Qualquer variação da métrica causava alvoroço
3a IDEIA
Telemetria
Inspirações
https://www.youtube.com/watch?v=czes-oa0yik
Com o quê?
App
influxdb-ruby
influxdb-python
Série Temporal
SQL Like / Schemaless
Boa documentação
Funções nativas com tempo
Estrutura do dado
Equivale a uma tabela SQL
Chave primáriaTime
Measurement
Values
Tags
Chaves-valor da medida,
não indexados
Metadados indexados,
sempre strings
cpu_load
load=30,temperature=50
server=name1,region=EMEA
POINT
> SELECT * FROM policy_entry
name: policy_entry
------------------
time cache_hit host success time
1464013724 1 saasauth0005 1 0.35
Fetching data
> SELECT * FROM policy_entry
name: policy_entry
------------------
time cache_hit host success time
1464013724 1 saasauth0005 1 0.35
Fetching data
Funções
count percentil
sum
mean
top
max
derivative
difference
moving_average
Aggregations Selectors Transformations
Funções de tempo
> SELECT * FROM messages where time < now() - 1h
Várias bases
Gráficos + Plugins
Como
representar os
dados?
Série Temporal
Padrões
Média de 1 min
Valores Absolutos
Valores Absolutos
Série Temporal
Percentil -> Para tempo e medidas
Percentil 95%
Percentil 95%
Média (1 min)
Percentil x Média
Obrigado!
@celsocrivelaro
http://crivelaro.me

Mais conteúdo relacionado

Mais procurados

How To Achieve Single Pane of Glass Performance Management: A Road Map to Uni...
How To Achieve Single Pane of Glass Performance Management: A Road Map to Uni...How To Achieve Single Pane of Glass Performance Management: A Road Map to Uni...
How To Achieve Single Pane of Glass Performance Management: A Road Map to Uni...
eG Innovations
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
Eric D. Schabell
 
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Ana Medina
 
Monitoring_with_Prometheus_Grafana_Tutorial
Monitoring_with_Prometheus_Grafana_TutorialMonitoring_with_Prometheus_Grafana_Tutorial
Monitoring_with_Prometheus_Grafana_Tutorial
Tim Vaillancourt
 

Mais procurados (20)

How To Achieve Single Pane of Glass Performance Management: A Road Map to Uni...
How To Achieve Single Pane of Glass Performance Management: A Road Map to Uni...How To Achieve Single Pane of Glass Performance Management: A Road Map to Uni...
How To Achieve Single Pane of Glass Performance Management: A Road Map to Uni...
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
 
Google Kubernetes Engine (GKE) deep dive
Google Kubernetes Engine (GKE) deep diveGoogle Kubernetes Engine (GKE) deep dive
Google Kubernetes Engine (GKE) deep dive
 
Monitoring Workshop Kiel 2016 - Performancedaten Visualisierung mit Grafana /...
Monitoring Workshop Kiel 2016 - Performancedaten Visualisierung mit Grafana /...Monitoring Workshop Kiel 2016 - Performancedaten Visualisierung mit Grafana /...
Monitoring Workshop Kiel 2016 - Performancedaten Visualisierung mit Grafana /...
 
Prometheus and Grafana
Prometheus and GrafanaPrometheus and Grafana
Prometheus and Grafana
 
Grafana introduction
Grafana introductionGrafana introduction
Grafana introduction
 
Google cloud functions
Google cloud functionsGoogle cloud functions
Google cloud functions
 
50.000 orange stickies later
50.000 orange stickies later50.000 orange stickies later
50.000 orange stickies later
 
Reconstructing the SRE
Reconstructing the SREReconstructing the SRE
Reconstructing the SRE
 
Kubernetes Failure Stories, or: How to Crash Your Cluster - ContainerDays EU ...
Kubernetes Failure Stories, or: How to Crash Your Cluster - ContainerDays EU ...Kubernetes Failure Stories, or: How to Crash Your Cluster - ContainerDays EU ...
Kubernetes Failure Stories, or: How to Crash Your Cluster - ContainerDays EU ...
 
Monitoring and alerting as code with Terraform and New Relic
Monitoring and alerting as code with Terraform and New RelicMonitoring and alerting as code with Terraform and New Relic
Monitoring and alerting as code with Terraform and New Relic
 
What HPC can learn from DevOps?
What HPC can learn from DevOps?What HPC can learn from DevOps?
What HPC can learn from DevOps?
 
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
Chaos Engineering with Kubernetes - Berlin / Hamburg Chaos Engineering Meetup...
 
Deep Dive into Durable Functions
Deep Dive into Durable FunctionsDeep Dive into Durable Functions
Deep Dive into Durable Functions
 
SpringBoot 3 Observability
SpringBoot 3 ObservabilitySpringBoot 3 Observability
SpringBoot 3 Observability
 
apidays Paris 2022 - Event-Driven API Management – why REST isn't enough, Ben...
apidays Paris 2022 - Event-Driven API Management – why REST isn't enough, Ben...apidays Paris 2022 - Event-Driven API Management – why REST isn't enough, Ben...
apidays Paris 2022 - Event-Driven API Management – why REST isn't enough, Ben...
 
Orquestando Pipelines de Datosen AWS con Step Function y AWS Glue
Orquestando Pipelines de Datosen AWS con Step Function y AWS GlueOrquestando Pipelines de Datosen AWS con Step Function y AWS Glue
Orquestando Pipelines de Datosen AWS con Step Function y AWS Glue
 
Cloud Monitoring tool Grafana
Cloud Monitoring  tool Grafana Cloud Monitoring  tool Grafana
Cloud Monitoring tool Grafana
 
Monitoring_with_Prometheus_Grafana_Tutorial
Monitoring_with_Prometheus_Grafana_TutorialMonitoring_with_Prometheus_Grafana_Tutorial
Monitoring_with_Prometheus_Grafana_Tutorial
 
The 12 Factor App
The 12 Factor AppThe 12 Factor App
The 12 Factor App
 

Semelhante a Banco temporal Influxdb + Grafana: Operando sua Plataforma

Guião demotécnica
Guião demotécnicaGuião demotécnica
Guião demotécnica
Silvio Dias
 
Guiao demotecnica
Guiao demotecnicaGuiao demotecnica
Guiao demotecnica
Silvio Dias
 

Semelhante a Banco temporal Influxdb + Grafana: Operando sua Plataforma (20)

Vivenciando dev ops para além da automação de infraestrutura 2.0
Vivenciando dev ops para além da automação de infraestrutura 2.0Vivenciando dev ops para além da automação de infraestrutura 2.0
Vivenciando dev ops para além da automação de infraestrutura 2.0
 
QConSP: Vivenciando dev ops para além da automação de infraestrutura
QConSP: Vivenciando dev ops para além da automação de infraestruturaQConSP: Vivenciando dev ops para além da automação de infraestrutura
QConSP: Vivenciando dev ops para além da automação de infraestrutura
 
pentester 2.pdf
pentester 2.pdfpentester 2.pdf
pentester 2.pdf
 
2o ProdConf - Escalando Ágil em Projetos com Múltiplos Times
2o ProdConf - Escalando Ágil em Projetos com Múltiplos Times2o ProdConf - Escalando Ágil em Projetos com Múltiplos Times
2o ProdConf - Escalando Ágil em Projetos com Múltiplos Times
 
Qualidade - Porque testar seu software?
Qualidade - Porque testar seu software?Qualidade - Porque testar seu software?
Qualidade - Porque testar seu software?
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
 
Gerenciamento ágil e o aprendizado a partir de indicadores ágeis project lab
Gerenciamento ágil e o aprendizado a partir de indicadores ágeis   project labGerenciamento ágil e o aprendizado a partir de indicadores ágeis   project lab
Gerenciamento ágil e o aprendizado a partir de indicadores ágeis project lab
 
Matando web forms e modernizando um grande varejista
Matando web forms e modernizando um grande varejistaMatando web forms e modernizando um grande varejista
Matando web forms e modernizando um grande varejista
 
Live DIO - CI / CD
Live DIO - CI / CDLive DIO - CI / CD
Live DIO - CI / CD
 
Performance e disponibilidade ‐ Um estudo de caso: website dos Correios
Performance e disponibilidade ‐ Um estudo de caso: website dos CorreiosPerformance e disponibilidade ‐ Um estudo de caso: website dos Correios
Performance e disponibilidade ‐ Um estudo de caso: website dos Correios
 
Contr avali engenharia de software-introdução
Contr avali   engenharia de software-introduçãoContr avali   engenharia de software-introdução
Contr avali engenharia de software-introdução
 
Como automatizar Sistemas Legados utilizando ferramentas de DevOps
Como automatizar Sistemas Legados utilizando ferramentas de DevOpsComo automatizar Sistemas Legados utilizando ferramentas de DevOps
Como automatizar Sistemas Legados utilizando ferramentas de DevOps
 
Meetup Stoodi Data & Tech #3 - Data Pipelines na AWS
Meetup Stoodi Data & Tech #3 - Data Pipelines na AWSMeetup Stoodi Data & Tech #3 - Data Pipelines na AWS
Meetup Stoodi Data & Tech #3 - Data Pipelines na AWS
 
Guião demotécnica
Guião demotécnicaGuião demotécnica
Guião demotécnica
 
Guiao demotecnica
Guiao demotecnicaGuiao demotecnica
Guiao demotecnica
 
Webinar: Introdução à Distribuição Contínua na AWS
Webinar: Introdução à Distribuição Contínua na AWSWebinar: Introdução à Distribuição Contínua na AWS
Webinar: Introdução à Distribuição Contínua na AWS
 
Qualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual StudioQualidade de Software com Microsoft Visual Studio
Qualidade de Software com Microsoft Visual Studio
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis Paulino
 
#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
#noOps?? Transcendendo o DevOps pelo caminho de tijolos (não muito) amarelos
 
1 engenharia de software
1   engenharia de software1   engenharia de software
1 engenharia de software
 

Mais de Celso Crivelaro

Treinamento apresentação
Treinamento apresentaçãoTreinamento apresentação
Treinamento apresentação
Celso Crivelaro
 
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
Celso Crivelaro
 

Mais de Celso Crivelaro (16)

Testing Network Conditions with ToxiProxy
Testing Network Conditions with ToxiProxyTesting Network Conditions with ToxiProxy
Testing Network Conditions with ToxiProxy
 
Actor model in Ruby
Actor model in RubyActor model in Ruby
Actor model in Ruby
 
Separando a regra de negócios do Rails
Separando a regra de negócios do RailsSeparando a regra de negócios do Rails
Separando a regra de negócios do Rails
 
What devs should know about email
What devs should know about emailWhat devs should know about email
What devs should know about email
 
High Performance Architecture Patterns
High Performance Architecture PatternsHigh Performance Architecture Patterns
High Performance Architecture Patterns
 
O que devs precisam saber sobre email
O que devs precisam saber sobre emailO que devs precisam saber sobre email
O que devs precisam saber sobre email
 
Escalando uma plataforma de e-mail transacional- aprendizado das trincheiras
Escalando uma plataforma de e-mail transacional- aprendizado das trincheirasEscalando uma plataforma de e-mail transacional- aprendizado das trincheiras
Escalando uma plataforma de e-mail transacional- aprendizado das trincheiras
 
High Performance Architecture Patterns
High Performance Architecture PatternsHigh Performance Architecture Patterns
High Performance Architecture Patterns
 
Apresentação GOLD
Apresentação GOLDApresentação GOLD
Apresentação GOLD
 
Treinamento apresentação
Treinamento apresentaçãoTreinamento apresentação
Treinamento apresentação
 
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
 
WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...
WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...
WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...
 
Primeiro step
Primeiro stepPrimeiro step
Primeiro step
 
Cv
CvCv
Cv
 
Formas decontratação
Formas decontrataçãoFormas decontratação
Formas decontratação
 
Negociação
NegociaçãoNegociação
Negociação
 

Último

Último (6)

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 

Banco temporal Influxdb + Grafana: Operando sua Plataforma