SlideShare uma empresa Scribd logo
Trabalhando com logs no PostgreSQL
F´abio Telles Rodriguez
Timbira - A empresa brasileira de PostgreSQL
18 de setembro de 2015
FTSL2015
Apresenta¸c˜ao
F´abio Telles Rodrigues
DBA Oracle e PostgreSQL +10 anos
Colaborador Comunidade Brasileira de PostgreSQL
Blog: http://savepoint.blog.br
@telles
Timbira
http://www.timbira.com.br
A empresa Brasileira de PostgreSQL
Consultoria / Desenvolvimento
Planos de Suporte
Parcerias com Empresas Desenvolvedoras de Software
Treinamentos In-Company e On-Line
Corre¸c˜ao de bugs no PostgreSQL garantida em contrato
Sobre esta apresenta¸c˜ao
esta apresenta¸c˜ao est´a dispon´ıvel em:
http://www.timbira.com.br/material
esta apresenta¸c˜ao est´a sob licen¸ca Creative Commons
Atribui¸c˜ao 3.0 Brasil:
http://creativecommons.org/licenses/by/3.0/br
Sobre o que estamos falando?
Sobre o que estamos falando?
Vis˜ao sobre o passado:
Erros de configura¸c˜ao;
Erros na aplica¸c˜ao;
Volume de conex˜oes;
Tempos de execu¸c˜ao;
Locks, deadlocks, temp buffers
Mantra
O que os olhos n˜ao vˆeem o DBA n˜ao
sente
Onde logar
log destination: (stderr, csvlog, syslog e se estiver utilizando
o Windows, eventlog)
logging collector: Ligue e seja feliz
log directory: pg log (vocˆe pode utilizar um ponto de
montagem s´o para os logs tamb´em)
log filename: use
’postgresql-%Y-%m-%d%H%M%S.log ou postgresql − %d.log
Onde logar
log file mode: Tire a m˜ao da´ı.
log rotation age: ’1d’
log rotation size: 10MB a 1GB
log truncate on rotation: use em sistemas embarcados para
rotacionar os logs.
Quando logar
client min messages, log min messages e
log min error statement: DEBUG5, DEBUG4, DEBUG3,
DEBUG2, DEBUG1, INFO, NOTICE, WARNING, ERROR,
LOG, FATAL e PANIC
log min duration statement: gatilho para logar comandos com
valores maiores sejam logados (em ms)
O que logar
application name: N˜ao mexa, mas saiba usar na sua aplica¸c˜ao
(SET application name = ’meu app’;)
debug print parse, debug print rewritten, debug print plan,
debug pretty print: n˜ao mexa.
log checkpoints: ligue (porque eu estou mandando! S´erio, n˜ao
custa nada)
log connections e log disconnections: use com parcimˆonia
log duration: h´a quem use. Casos bem espec´ıficos. N˜ao
substitui o log min duration
O que logar
log error verbosity: Em geral, n˜ao mexa.
log hostname: S´o ative se confiar muito no seu DNS. Pode
gerar um pouco de overhead.
log line prefix: ”%t [%p]: [%l] db=%d,user=%u ‘. Muitas
op¸c˜oes legais. Vale `a pena conhecer.
log lock waits: Ligue e entenda.
log statement: DDL, MOD (DDL + DML), ALL (tudo) ou
none (nada).
log temp files: ´Util para ajustar parˆametros de mem´oria.
Coloque em zero para ver o que acontece de verdade.
log timezone: Espero que vocˆe n˜ao tenha que mexer nisso...
GUCs ou Grand Unified Configuration
Alguns parˆametros podem ser alterados em diferentes
contextos, como INTERNAL, POSTMASTER, SIGHUP,
BACKEND, SUPERUSER e USER
Verificar no cat´alogo em pg settings;
Utilizar o pg reload conf() para parˆametros alterados no
postgresql.conf
Utilizar o pg rotate logfile() para rotacionar os logs
GUCs ou Grand Unified Configuration
SELECT pg rotate logfile(), pg reload conf();
ALTER SYSTEM SET log min messages = ’INFO’;
ALTER DATABASE teste SET log min messages =
’NOTICE’;
ALTER ROLE abizi SET log min messages = ’DEBUG1’;
SET log min messages = ’PANIC’;
Usando o application name
SET application name = ’financeiro’;
SET application name = ’APP=financeiro — SCR=cadastro’;
SET application name = ’APP=financeiro — SCR=cadastro
— USER=telles’;
SET application name = ’APP=financeiro — SCR=cadastro
— USER=telles — HOST=m129’;
Ferramentas externas
grep, regex, sed, awk, etc;
pgBadger;
pgFouine (descontinuado);
auto explain;
Elasticsearch
Para os DBAs...
Durma bem antes de um novo deploy. Tire uns dias de folga;
N˜ao deixe de tomar cerveja com os amigos...
Pratique exerc´ıcios f´ısicos regularmente!!!
Perguntas
?
F´abio Telles Rodriguez
(telles@timbira.com.br)
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

Mais conteúdo relacionado

Mais procurados

Segurança da informação
Segurança da informaçãoSegurança da informação
Segurança da informação
imsp2000
 
Trabalho sobre a linguagem Python
Trabalho sobre a linguagem PythonTrabalho sobre a linguagem Python
Trabalho sobre a linguagem Python
Ricardo Zalla
 
Linux - Um estudo de caso
Linux - Um estudo de casoLinux - Um estudo de caso
Linux - Um estudo de caso
Tiago R. Sampaio
 
Montagem manutenção de computadores
Montagem manutenção de computadoresMontagem manutenção de computadores
Montagem manutenção de computadores
setilsonadobmov
 
Processadores
Processadores Processadores
Processadores
Alceu Bernardino
 
Introdução Ao Web Design
Introdução Ao Web DesignIntrodução Ao Web Design
Introdução Ao Web Design
Sandra Oliveira
 
Testes de Caixa Branca e Métricas de Código
Testes de Caixa Branca e Métricas de CódigoTestes de Caixa Branca e Métricas de Código
Testes de Caixa Branca e Métricas de Código
Aricelio Souza
 
Curso MySQL #03 - Criando um Banco de Dados MySQL
Curso MySQL #03 - Criando um Banco de Dados MySQLCurso MySQL #03 - Criando um Banco de Dados MySQL
Curso MySQL #03 - Criando um Banco de Dados MySQL
Curso em Vídeo - Cursos Grátis com Certificado
 
Personas e Cenários
Personas e CenáriosPersonas e Cenários
Personas e Cenários
Luiz Agner
 
Aula 4 - Teste de mesa
Aula 4 - Teste de mesaAula 4 - Teste de mesa
Aula 4 - Teste de mesa
Pacc UAB
 
Criação de Sites web Tutorial
Criação de Sites web TutorialCriação de Sites web Tutorial
Criação de Sites web Tutorial
Jose De Almeida Batista
 
Componentes de Hardware e Servidores
Componentes de Hardware e ServidoresComponentes de Hardware e Servidores
Componentes de Hardware e Servidores
tiredes
 
Questionário de Informática básica
Questionário de Informática básicaQuestionário de Informática básica
Questionário de Informática básica
Nome Sobrenome
 
Processos e threads cap 02 (i unidade)
Processos e threads   cap 02 (i unidade)Processos e threads   cap 02 (i unidade)
Processos e threads cap 02 (i unidade)
Faculdade Mater Christi
 
Ética e Informática
Ética e InformáticaÉtica e Informática
Ética e Informática
Marcos Ramon
 
Livro ITIl Melhoria Continua de serviço
Livro ITIl Melhoria Continua de serviçoLivro ITIl Melhoria Continua de serviço
Livro ITIl Melhoria Continua de serviço
Marcos Rodrigues Dos Santos
 
tmn - Introdução ao JavaScript
tmn - Introdução ao JavaScripttmn - Introdução ao JavaScript
tmn - Introdução ao JavaScript
Claudio Gamboa
 
13 Java Script - Validação de formulário
13 Java Script  - Validação de formulário13 Java Script  - Validação de formulário
13 Java Script - Validação de formulário
Centro Paula Souza
 
Introdução à política de segurança da Informação com exemplos
Introdução à política de segurança da Informação com exemplosIntrodução à política de segurança da Informação com exemplos
Introdução à política de segurança da Informação com exemplos
Aldson Diego
 
Auditoria em tecnologia da informação
Auditoria em tecnologia da informaçãoAuditoria em tecnologia da informação
Auditoria em tecnologia da informação
Fernando Palma
 

Mais procurados (20)

Segurança da informação
Segurança da informaçãoSegurança da informação
Segurança da informação
 
Trabalho sobre a linguagem Python
Trabalho sobre a linguagem PythonTrabalho sobre a linguagem Python
Trabalho sobre a linguagem Python
 
Linux - Um estudo de caso
Linux - Um estudo de casoLinux - Um estudo de caso
Linux - Um estudo de caso
 
Montagem manutenção de computadores
Montagem manutenção de computadoresMontagem manutenção de computadores
Montagem manutenção de computadores
 
Processadores
Processadores Processadores
Processadores
 
Introdução Ao Web Design
Introdução Ao Web DesignIntrodução Ao Web Design
Introdução Ao Web Design
 
Testes de Caixa Branca e Métricas de Código
Testes de Caixa Branca e Métricas de CódigoTestes de Caixa Branca e Métricas de Código
Testes de Caixa Branca e Métricas de Código
 
Curso MySQL #03 - Criando um Banco de Dados MySQL
Curso MySQL #03 - Criando um Banco de Dados MySQLCurso MySQL #03 - Criando um Banco de Dados MySQL
Curso MySQL #03 - Criando um Banco de Dados MySQL
 
Personas e Cenários
Personas e CenáriosPersonas e Cenários
Personas e Cenários
 
Aula 4 - Teste de mesa
Aula 4 - Teste de mesaAula 4 - Teste de mesa
Aula 4 - Teste de mesa
 
Criação de Sites web Tutorial
Criação de Sites web TutorialCriação de Sites web Tutorial
Criação de Sites web Tutorial
 
Componentes de Hardware e Servidores
Componentes de Hardware e ServidoresComponentes de Hardware e Servidores
Componentes de Hardware e Servidores
 
Questionário de Informática básica
Questionário de Informática básicaQuestionário de Informática básica
Questionário de Informática básica
 
Processos e threads cap 02 (i unidade)
Processos e threads   cap 02 (i unidade)Processos e threads   cap 02 (i unidade)
Processos e threads cap 02 (i unidade)
 
Ética e Informática
Ética e InformáticaÉtica e Informática
Ética e Informática
 
Livro ITIl Melhoria Continua de serviço
Livro ITIl Melhoria Continua de serviçoLivro ITIl Melhoria Continua de serviço
Livro ITIl Melhoria Continua de serviço
 
tmn - Introdução ao JavaScript
tmn - Introdução ao JavaScripttmn - Introdução ao JavaScript
tmn - Introdução ao JavaScript
 
13 Java Script - Validação de formulário
13 Java Script  - Validação de formulário13 Java Script  - Validação de formulário
13 Java Script - Validação de formulário
 
Introdução à política de segurança da Informação com exemplos
Introdução à política de segurança da Informação com exemplosIntrodução à política de segurança da Informação com exemplos
Introdução à política de segurança da Informação com exemplos
 
Auditoria em tecnologia da informação
Auditoria em tecnologia da informaçãoAuditoria em tecnologia da informação
Auditoria em tecnologia da informação
 

Semelhante a Trabalhando com Logs no PostgreSQL

Trabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQLTrabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQL
Fabio Telles Rodriguez
 
Postgres Big data
Postgres Big dataPostgres Big data
Postgres Big data
Fabio Telles Rodriguez
 
Oracle x PostgreSQL
Oracle x PostgreSQLOracle x PostgreSQL
Oracle x PostgreSQL
Fabio Telles Rodriguez
 
PostgreSQL Rock Star
PostgreSQL Rock StarPostgreSQL Rock Star
PostgreSQL Rock Star
Fabio Telles Rodriguez
 
Postgres Chainsaw Massacre
Postgres Chainsaw MassacrePostgres Chainsaw Massacre
Postgres Chainsaw Massacre
Fabio Telles Rodriguez
 
Administradores e suas gambiarras
Administradores e suas gambiarrasAdministradores e suas gambiarras
Administradores e suas gambiarras
debian-rs
 
Tunning PostgreSQL em modo OGRO - 13º Latinoware
Tunning PostgreSQL em modo OGRO - 13º LatinowareTunning PostgreSQL em modo OGRO - 13º Latinoware
Tunning PostgreSQL em modo OGRO - 13º Latinoware
Gerdan Santos
 
Desmistificando web2py - #TDC2011
Desmistificando web2py - #TDC2011Desmistificando web2py - #TDC2011
Desmistificando web2py - #TDC2011
Bruno Rocha
 
Os pecados mortais de escalabilidade em Drupal e seus efeitos nos negócios - ...
Os pecados mortais de escalabilidade em Drupal e seus efeitos nos negócios - ...Os pecados mortais de escalabilidade em Drupal e seus efeitos nos negócios - ...
Os pecados mortais de escalabilidade em Drupal e seus efeitos nos negócios - ...
Taller Negócio Digitais
 
Dojo plpgsql
Dojo plpgsqlDojo plpgsql
Dojo plpgsql
Fabrízio Mello
 
Alta Concorrência com Postgres
Alta Concorrência com PostgresAlta Concorrência com Postgres
Alta Concorrência com Postgres
Fabio Telles Rodriguez
 
Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013
Leandro Silva
 
Software Livre em pequenas empresas
Software Livre em pequenas empresasSoftware Livre em pequenas empresas
Software Livre em pequenas empresas
Paulo Henrique
 
Codigo limpo
Codigo limpoCodigo limpo
Codigo limpo
diegomcunha
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
Igor Sobreira
 
Receitas XE
Receitas XEReceitas XE
Receitas XE
Dennes Torres
 
Apresentacao redis
Apresentacao redisApresentacao redis
Apresentacao redis
dmazui
 
Acelerando o caminho para nuvem com serverless e java
Acelerando o caminho para nuvem com serverless e javaAcelerando o caminho para nuvem com serverless e java
Acelerando o caminho para nuvem com serverless e java
Evandro Pires da Silva
 
Joomla Day Brasil 2010: Customizações para grandes portais
Joomla Day Brasil 2010: Customizações para grandes portaisJoomla Day Brasil 2010: Customizações para grandes portais
Joomla Day Brasil 2010: Customizações para grandes portais
rafaelberlanda
 
TDD: A Essência do Mantra
TDD: A Essência do MantraTDD: A Essência do Mantra
TDD: A Essência do Mantra
Dionatan default
 

Semelhante a Trabalhando com Logs no PostgreSQL (20)

Trabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQLTrabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQL
 
Postgres Big data
Postgres Big dataPostgres Big data
Postgres Big data
 
Oracle x PostgreSQL
Oracle x PostgreSQLOracle x PostgreSQL
Oracle x PostgreSQL
 
PostgreSQL Rock Star
PostgreSQL Rock StarPostgreSQL Rock Star
PostgreSQL Rock Star
 
Postgres Chainsaw Massacre
Postgres Chainsaw MassacrePostgres Chainsaw Massacre
Postgres Chainsaw Massacre
 
Administradores e suas gambiarras
Administradores e suas gambiarrasAdministradores e suas gambiarras
Administradores e suas gambiarras
 
Tunning PostgreSQL em modo OGRO - 13º Latinoware
Tunning PostgreSQL em modo OGRO - 13º LatinowareTunning PostgreSQL em modo OGRO - 13º Latinoware
Tunning PostgreSQL em modo OGRO - 13º Latinoware
 
Desmistificando web2py - #TDC2011
Desmistificando web2py - #TDC2011Desmistificando web2py - #TDC2011
Desmistificando web2py - #TDC2011
 
Os pecados mortais de escalabilidade em Drupal e seus efeitos nos negócios - ...
Os pecados mortais de escalabilidade em Drupal e seus efeitos nos negócios - ...Os pecados mortais de escalabilidade em Drupal e seus efeitos nos negócios - ...
Os pecados mortais de escalabilidade em Drupal e seus efeitos nos negócios - ...
 
Dojo plpgsql
Dojo plpgsqlDojo plpgsql
Dojo plpgsql
 
Alta Concorrência com Postgres
Alta Concorrência com PostgresAlta Concorrência com Postgres
Alta Concorrência com Postgres
 
Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013Composição e Integração de Sistemas em 2013
Composição e Integração de Sistemas em 2013
 
Software Livre em pequenas empresas
Software Livre em pequenas empresasSoftware Livre em pequenas empresas
Software Livre em pequenas empresas
 
Codigo limpo
Codigo limpoCodigo limpo
Codigo limpo
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
 
Receitas XE
Receitas XEReceitas XE
Receitas XE
 
Apresentacao redis
Apresentacao redisApresentacao redis
Apresentacao redis
 
Acelerando o caminho para nuvem com serverless e java
Acelerando o caminho para nuvem com serverless e javaAcelerando o caminho para nuvem com serverless e java
Acelerando o caminho para nuvem com serverless e java
 
Joomla Day Brasil 2010: Customizações para grandes portais
Joomla Day Brasil 2010: Customizações para grandes portaisJoomla Day Brasil 2010: Customizações para grandes portais
Joomla Day Brasil 2010: Customizações para grandes portais
 
TDD: A Essência do Mantra
TDD: A Essência do MantraTDD: A Essência do Mantra
TDD: A Essência do Mantra
 

Mais de Fabio Telles Rodriguez

Data Hero: Sua carreira na área de dados
Data Hero: Sua carreira na área de dadosData Hero: Sua carreira na área de dados
Data Hero: Sua carreira na área de dados
Fabio Telles Rodriguez
 
Postgres level up
Postgres level upPostgres level up
Postgres level up
Fabio Telles Rodriguez
 
Explain this!
Explain this!Explain this!
Explain this!
Fabio Telles Rodriguez
 
High concurrency with Postgres
High concurrency with PostgresHigh concurrency with Postgres
High concurrency with Postgres
Fabio Telles Rodriguez
 
Aplicações 10x a 100x mais rápida com o postgre sql
Aplicações 10x a 100x mais rápida com o postgre sqlAplicações 10x a 100x mais rápida com o postgre sql
Aplicações 10x a 100x mais rápida com o postgre sql
Fabio Telles Rodriguez
 
Novidades do PostgreSQL 10
Novidades do  PostgreSQL 10Novidades do  PostgreSQL 10
Novidades do PostgreSQL 10
Fabio Telles Rodriguez
 
Migre seu banco de dados para a nuvem. Pergunte-me como!
Migre seu banco de dados para a nuvem. Pergunte-me como!Migre seu banco de dados para a nuvem. Pergunte-me como!
Migre seu banco de dados para a nuvem. Pergunte-me como!
Fabio Telles Rodriguez
 
PostgreSQL Wonderland TDC-SP 2015
PostgreSQL Wonderland TDC-SP 2015PostgreSQL Wonderland TDC-SP 2015
PostgreSQL Wonderland TDC-SP 2015
Fabio Telles Rodriguez
 
Postgres Tuning
Postgres TuningPostgres Tuning
Postgres Tuning
Fabio Telles Rodriguez
 
Postgres Wonderland - PGDay CE2013
Postgres  Wonderland - PGDay CE2013Postgres  Wonderland - PGDay CE2013
Postgres Wonderland - PGDay CE2013
Fabio Telles Rodriguez
 
Postgres Wonderland - Campus Party 2013
Postgres Wonderland - Campus Party 2013Postgres Wonderland - Campus Party 2013
Postgres Wonderland - Campus Party 2013
Fabio Telles Rodriguez
 
Alta Concorrência com Postgres
Alta Concorrência com PostgresAlta Concorrência com Postgres
Alta Concorrência com Postgres
Fabio Telles Rodriguez
 
Postgres, a "Metamorfose Ambulante"
Postgres, a "Metamorfose Ambulante"Postgres, a "Metamorfose Ambulante"
Postgres, a "Metamorfose Ambulante"
Fabio Telles Rodriguez
 
Postgres Wonderland - PGDay Cascavél 2013
Postgres Wonderland - PGDay Cascavél 2013Postgres Wonderland - PGDay Cascavél 2013
Postgres Wonderland - PGDay Cascavél 2013
Fabio Telles Rodriguez
 
Fazendo uma manada de elefantes passar por baixo da porta
Fazendo uma manada de elefantes passar por baixo da portaFazendo uma manada de elefantes passar por baixo da porta
Fazendo uma manada de elefantes passar por baixo da porta
Fabio Telles Rodriguez
 
Discos & Cia em PostgreSQL
Discos & Cia em PostgreSQLDiscos & Cia em PostgreSQL
Discos & Cia em PostgreSQL
Fabio Telles Rodriguez
 
Conceitos E Aplicações
Conceitos E AplicaçõesConceitos E Aplicações
Conceitos E Aplicações
Fabio Telles Rodriguez
 
PostgreSQL, o Elefante Encouraçado
PostgreSQL, o Elefante EncouraçadoPostgreSQL, o Elefante Encouraçado
PostgreSQL, o Elefante Encouraçado
Fabio Telles Rodriguez
 
Tutorial para criação de módulo no Xoops 2.4
Tutorial para criação de módulo no Xoops 2.4Tutorial para criação de módulo no Xoops 2.4
Tutorial para criação de módulo no Xoops 2.4
Fabio Telles Rodriguez
 
Revisão do postgresql.conf
Revisão do postgresql.confRevisão do postgresql.conf
Revisão do postgresql.conf
Fabio Telles Rodriguez
 

Mais de Fabio Telles Rodriguez (20)

Data Hero: Sua carreira na área de dados
Data Hero: Sua carreira na área de dadosData Hero: Sua carreira na área de dados
Data Hero: Sua carreira na área de dados
 
Postgres level up
Postgres level upPostgres level up
Postgres level up
 
Explain this!
Explain this!Explain this!
Explain this!
 
High concurrency with Postgres
High concurrency with PostgresHigh concurrency with Postgres
High concurrency with Postgres
 
Aplicações 10x a 100x mais rápida com o postgre sql
Aplicações 10x a 100x mais rápida com o postgre sqlAplicações 10x a 100x mais rápida com o postgre sql
Aplicações 10x a 100x mais rápida com o postgre sql
 
Novidades do PostgreSQL 10
Novidades do  PostgreSQL 10Novidades do  PostgreSQL 10
Novidades do PostgreSQL 10
 
Migre seu banco de dados para a nuvem. Pergunte-me como!
Migre seu banco de dados para a nuvem. Pergunte-me como!Migre seu banco de dados para a nuvem. Pergunte-me como!
Migre seu banco de dados para a nuvem. Pergunte-me como!
 
PostgreSQL Wonderland TDC-SP 2015
PostgreSQL Wonderland TDC-SP 2015PostgreSQL Wonderland TDC-SP 2015
PostgreSQL Wonderland TDC-SP 2015
 
Postgres Tuning
Postgres TuningPostgres Tuning
Postgres Tuning
 
Postgres Wonderland - PGDay CE2013
Postgres  Wonderland - PGDay CE2013Postgres  Wonderland - PGDay CE2013
Postgres Wonderland - PGDay CE2013
 
Postgres Wonderland - Campus Party 2013
Postgres Wonderland - Campus Party 2013Postgres Wonderland - Campus Party 2013
Postgres Wonderland - Campus Party 2013
 
Alta Concorrência com Postgres
Alta Concorrência com PostgresAlta Concorrência com Postgres
Alta Concorrência com Postgres
 
Postgres, a "Metamorfose Ambulante"
Postgres, a "Metamorfose Ambulante"Postgres, a "Metamorfose Ambulante"
Postgres, a "Metamorfose Ambulante"
 
Postgres Wonderland - PGDay Cascavél 2013
Postgres Wonderland - PGDay Cascavél 2013Postgres Wonderland - PGDay Cascavél 2013
Postgres Wonderland - PGDay Cascavél 2013
 
Fazendo uma manada de elefantes passar por baixo da porta
Fazendo uma manada de elefantes passar por baixo da portaFazendo uma manada de elefantes passar por baixo da porta
Fazendo uma manada de elefantes passar por baixo da porta
 
Discos & Cia em PostgreSQL
Discos & Cia em PostgreSQLDiscos & Cia em PostgreSQL
Discos & Cia em PostgreSQL
 
Conceitos E Aplicações
Conceitos E AplicaçõesConceitos E Aplicações
Conceitos E Aplicações
 
PostgreSQL, o Elefante Encouraçado
PostgreSQL, o Elefante EncouraçadoPostgreSQL, o Elefante Encouraçado
PostgreSQL, o Elefante Encouraçado
 
Tutorial para criação de módulo no Xoops 2.4
Tutorial para criação de módulo no Xoops 2.4Tutorial para criação de módulo no Xoops 2.4
Tutorial para criação de módulo no Xoops 2.4
 
Revisão do postgresql.conf
Revisão do postgresql.confRevisão do postgresql.conf
Revisão do postgresql.conf
 

Último

Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Annelise Gripp
 
Orientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço BrasilOrientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço Brasil
EliakimArajo2
 
PRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product ownerPRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product owner
anpproferick
 
Gestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefíciosGestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefícios
Rafael Santos
 
Por que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdfPor que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdf
Ian Oliveira
 
Teoria de redes de computadores redes .doc
Teoria de redes de computadores redes .docTeoria de redes de computadores redes .doc
Teoria de redes de computadores redes .doc
anpproferick
 
Como fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptxComo fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptx
tnrlucas
 

Último (7)

Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
 
Orientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço BrasilOrientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço Brasil
 
PRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product ownerPRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product owner
 
Gestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefíciosGestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefícios
 
Por que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdfPor que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdf
 
Teoria de redes de computadores redes .doc
Teoria de redes de computadores redes .docTeoria de redes de computadores redes .doc
Teoria de redes de computadores redes .doc
 
Como fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptxComo fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptx
 

Trabalhando com Logs no PostgreSQL

  • 1. Trabalhando com logs no PostgreSQL F´abio Telles Rodriguez Timbira - A empresa brasileira de PostgreSQL 18 de setembro de 2015 FTSL2015
  • 2. Apresenta¸c˜ao F´abio Telles Rodrigues DBA Oracle e PostgreSQL +10 anos Colaborador Comunidade Brasileira de PostgreSQL Blog: http://savepoint.blog.br @telles
  • 3. Timbira http://www.timbira.com.br A empresa Brasileira de PostgreSQL Consultoria / Desenvolvimento Planos de Suporte Parcerias com Empresas Desenvolvedoras de Software Treinamentos In-Company e On-Line Corre¸c˜ao de bugs no PostgreSQL garantida em contrato
  • 4. Sobre esta apresenta¸c˜ao esta apresenta¸c˜ao est´a dispon´ıvel em: http://www.timbira.com.br/material esta apresenta¸c˜ao est´a sob licen¸ca Creative Commons Atribui¸c˜ao 3.0 Brasil: http://creativecommons.org/licenses/by/3.0/br
  • 5. Sobre o que estamos falando?
  • 6. Sobre o que estamos falando? Vis˜ao sobre o passado: Erros de configura¸c˜ao; Erros na aplica¸c˜ao; Volume de conex˜oes; Tempos de execu¸c˜ao; Locks, deadlocks, temp buffers
  • 7. Mantra O que os olhos n˜ao vˆeem o DBA n˜ao sente
  • 8. Onde logar log destination: (stderr, csvlog, syslog e se estiver utilizando o Windows, eventlog) logging collector: Ligue e seja feliz log directory: pg log (vocˆe pode utilizar um ponto de montagem s´o para os logs tamb´em) log filename: use ’postgresql-%Y-%m-%d%H%M%S.log ou postgresql − %d.log
  • 9. Onde logar log file mode: Tire a m˜ao da´ı. log rotation age: ’1d’ log rotation size: 10MB a 1GB log truncate on rotation: use em sistemas embarcados para rotacionar os logs.
  • 10. Quando logar client min messages, log min messages e log min error statement: DEBUG5, DEBUG4, DEBUG3, DEBUG2, DEBUG1, INFO, NOTICE, WARNING, ERROR, LOG, FATAL e PANIC log min duration statement: gatilho para logar comandos com valores maiores sejam logados (em ms)
  • 11. O que logar application name: N˜ao mexa, mas saiba usar na sua aplica¸c˜ao (SET application name = ’meu app’;) debug print parse, debug print rewritten, debug print plan, debug pretty print: n˜ao mexa. log checkpoints: ligue (porque eu estou mandando! S´erio, n˜ao custa nada) log connections e log disconnections: use com parcimˆonia log duration: h´a quem use. Casos bem espec´ıficos. N˜ao substitui o log min duration
  • 12. O que logar log error verbosity: Em geral, n˜ao mexa. log hostname: S´o ative se confiar muito no seu DNS. Pode gerar um pouco de overhead. log line prefix: ”%t [%p]: [%l] db=%d,user=%u ‘. Muitas op¸c˜oes legais. Vale `a pena conhecer. log lock waits: Ligue e entenda. log statement: DDL, MOD (DDL + DML), ALL (tudo) ou none (nada). log temp files: ´Util para ajustar parˆametros de mem´oria. Coloque em zero para ver o que acontece de verdade. log timezone: Espero que vocˆe n˜ao tenha que mexer nisso...
  • 13. GUCs ou Grand Unified Configuration Alguns parˆametros podem ser alterados em diferentes contextos, como INTERNAL, POSTMASTER, SIGHUP, BACKEND, SUPERUSER e USER Verificar no cat´alogo em pg settings; Utilizar o pg reload conf() para parˆametros alterados no postgresql.conf Utilizar o pg rotate logfile() para rotacionar os logs
  • 14. GUCs ou Grand Unified Configuration SELECT pg rotate logfile(), pg reload conf(); ALTER SYSTEM SET log min messages = ’INFO’; ALTER DATABASE teste SET log min messages = ’NOTICE’; ALTER ROLE abizi SET log min messages = ’DEBUG1’; SET log min messages = ’PANIC’;
  • 15. Usando o application name SET application name = ’financeiro’; SET application name = ’APP=financeiro — SCR=cadastro’; SET application name = ’APP=financeiro — SCR=cadastro — USER=telles’; SET application name = ’APP=financeiro — SCR=cadastro — USER=telles — HOST=m129’;
  • 16. Ferramentas externas grep, regex, sed, awk, etc; pgBadger; pgFouine (descontinuado); auto explain; Elasticsearch
  • 17. Para os DBAs... Durma bem antes de um novo deploy. Tire uns dias de folga; N˜ao deixe de tomar cerveja com os amigos... Pratique exerc´ıcios f´ısicos regularmente!!!