trabalhando com logs no postgresql

16
Trabalhando com logs no PostgreSQL abio Telles Rodriguez Timbira - A empresa brasileira de PostgreSQL 09 de julho de 2015 FISL16

Upload: fabio-telles-rodriguez

Post on 18-Aug-2015

182 views

Category:

Technology


65 download

TRANSCRIPT

Page 1: Trabalhando com Logs no PostgreSQL

Trabalhando com logs no PostgreSQL

Fabio Telles Rodriguez

Timbira - A empresa brasileira de PostgreSQL

09 de julho de 2015

FISL16

Page 2: Trabalhando com Logs no PostgreSQL

Apresentacao

Fabio Telles Rodrigues

I DBA Oracle e PostgreSQL +10 anos

I Colaborador Comunidade Brasileira de PostgreSQL

I Blog: http://savepoint.blog.br

I @telles

Page 3: Trabalhando com Logs no PostgreSQL

Timbira

I http://www.timbira.com.br

I A empresa Brasileira de PostgreSQL

I Consultoria / Desenvolvimento

I Planos de Suporte

I Parcerias com Empresas Desenvolvedoras de Software

I Treinamentos In-Company e On-Line

I Correcao de bugs no PostgreSQL garantida em contrato

Page 4: Trabalhando com Logs no PostgreSQL

Sobre esta apresentacao

I esta apresentacao esta disponıvel em:http://www.timbira.com.br/material

I esta apresentacao esta sob licenca Creative CommonsAtribuicao 3.0 Brasil :http://creativecommons.org/licenses/by/3.0/br

Page 5: Trabalhando com Logs no PostgreSQL

Sobre o que estamos falando?

Page 6: Trabalhando com Logs no PostgreSQL

Sobre o que estamos falando?

Visao sobre o passado:

I Erros de configuracao;

I Erros na aplicacao;

I Volume de conexoes;

I Tempos de execucao;

I Locks, deadlocks, temp buffers

Page 7: Trabalhando com Logs no PostgreSQL

Mantra

O que os olhos nao veem o DBA naosente

Page 8: Trabalhando com Logs no PostgreSQL

Onde logar

I log destination: (stderr, csvlog, syslog e se estiver utilizandoo Windows, eventlog)

I logging collector: Ligue e seja feliz

I log directory: pg log (voce pode utilizar um ponto demontagem so para os logs tambem)

I log filename: use’postgresql-%Y-%m-%d%H%M%S .log ′ou′postgresql − %d .log ′

Page 9: Trabalhando com Logs no PostgreSQL

Onde logar

I log file mode: Tire a mao daı.

I log rotation age: ’1d’

I log rotation size: 10MB a 1GB

I log truncate on rotation: use em sistemas embarcados pararotacionar os logs.

Page 10: Trabalhando com Logs no PostgreSQL

Quando logar

I client min messages, log min messages elog min error statement: DEBUG5, DEBUG4, DEBUG3,DEBUG2, DEBUG1, INFO, NOTICE, WARNING, ERROR,LOG, FATAL e PANIC

I log min duration statement: gatilho para logar comandos comvalores maiores sejam logados (em ms)

Page 11: Trabalhando com Logs no PostgreSQL

O que logar

I application name: Nao mexa, mas saiba usar na sua aplicacao(SET application name = ’meu app’;)

I debug print parse, debug print rewritten, debug print plan,debug pretty print: nao mexa.

I log checkpoints: ligue (porque eu estou mandando! Serio, naocusta nada)

I log connections e log disconnections: use com parcimonia

I log duration: ha quem use. Casos bem especıficos. Naosubstitui o log min duration

Page 12: Trabalhando com Logs no PostgreSQL

O que logar

I log error verbosity: Em geral, nao mexa.

I log hostname: So ative se confiar muito no seu DNS. Podegerar um pouco de overhead.

I log line prefix: ”%t [%p]: [%l] db=%d,user=%u ‘. Muitasopcoes legais. Vale a pena conhecer.

I log lock waits: Ligue e entenda.

I log statement: DDL, MOD (DDL + DML), ALL (tudo) ounone (nada).

I log temp files: Util para ajustar parametros de memoria.Coloque em zero para ver o que acontece de verdade.

I log timezone: Espero que voce nao tenha que mexer nisso...

Page 13: Trabalhando com Logs no PostgreSQL

GUCs ou Grand Unified Configuration

I Alguns parametros podem ser alterados em diferentescontextos, como INTERNAL, POSTMASTER, SIGHUP,BACKEND, SUPERUSER e USER

I Verificar no catalogo em pg settings;

I Utilizar o pg reload conf() para parametros alterados nopostgresql.conf

I Utilizar o pg rotate logfile() para rotacionar os logs

Page 14: Trabalhando com Logs no PostgreSQL

Ferramentas externas

I grep, regex, sed, awk, etc;

I pgBadger;

I pgFouine (descontinuado);

I auto explain;

I Elasticsearch

Page 15: Trabalhando com Logs no PostgreSQL

Para os DBAs...

I Durma bem antes de um novo deploy. Tire uns dias de folga;

I Nao deixe de tomar cerveja com os amigos...

I Pratique exercıcios fısicos regularmente!!!

Page 16: Trabalhando com Logs no PostgreSQL

Perguntas

?Fabio Telles Rodriguez([email protected])

http://www.timbira.com.br

http://www.postgresql.org/docs/current/static/runtime-config-logging.html

http://savepoint.blog.br/trabalhando-com-logs-no-postgresql

http://savepoint.blog.br/aprenda-a-trabalhar-com-as-configuracoes-do-postgresql