Banco temporal Influxdb + Grafana: Operando sua Plataforma

Post on 16-Apr-2017

192 views 3 download

Transcript of Banco temporal Influxdb + Grafana: Operando sua Plataforma

InfluxDB + GrafanaTelemetria 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ê?

Appinfluxdb-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!

@celsocrivelarohttp://crivelaro.me