Gerenciando retenção de traces usando o ADRCI – Oracle 11g

É comum nos depararmos com ambientes que possuem uma geração excessiva de traces e consequentemente demandam de intervenção para a limpeza dos mesmos, com intuito de liberar espaço em disco.

Não vou entrar no mérito de identificar o motivo da geração excessiva de traces neste post e sim, em como facilitar a vida do DBA com o processo de limpeza dos mesmos.

Na versão 11g foi introduzido o Automatic Diagnostic Repository (ver post Utilizando o Automatic Diagnostic Repository). Com ele foi introduzido um mecanismo de remoção automática dos arquivos de trace, dump e incidente controlado através do ADRCI (ADR Command Interpreter), um utilitário via linha de comando que permite gerenciar o dados do ADR.

Existem 2 parâmetros que são responsáveis pela retenção dos arquivos de trace e dump:

  • SHORTP_POLICY: Por padrão é definido como 720 horas (30 dias).  Este parâmetro é responsável pela retenção dos arquivos de traces (trc, trm, etc)
  • LONGP_POLICY: Por padrão é definido como 8760 horas (1 ano). Ele é responsável pela retenção dos arquivos de incidentes.

Para alterar a retenção é preciso conectar no adrci e usar o comando set control.

Vou alterar a retenção do SHORTP_POLICY para 7 dias (168 horas) e do LONGP_POLICY para 30 dias (720 horas).:

[oracle@cce alert]$ adrci

ADRCI: Release 11.2.0.4.0 - Production on Thu Nov 21 22:26:22 2013

Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.

ADR base = "/oraprd01/oracle/app"
adrci> show control

ADR Home = /oraprd01/oracle/app/diag/rdbms/dbtrn/dbtrn:
*************************************************************************
ADRID SHORTP_POLICY LONGP_POLICY LAST_MOD_TIME LAST_AUTOPRG_TIME LAST_MANUPRG_TIME ADRDIR_VERSION ADRSCHM_VERSION ADRSCHMV_SUMMARY ADRALERT_VERSION CREATE_TIME
-------------------- -------------------- -------------------- ---------------------------------------- ---------------------------------------- ---------------------------------------- -------------------- -------------------- -------------------- -------------------- ----------------------------------------
1636358367 720 8760 2013-10-08 18:02:12.049001 -03:00 2013-11-19 00:04:32.677483 -02:00 1 2 80 1 2013-10-08 18:02:12.049001 -03:00
1 rows fetched

adrci> set control(SHORTP_POLICY = 168);
adrci> set control (LONGP_POLICY = 720);
adrci> show control

ADR Home = /oraprd01/oracle/app/diag/rdbms/dbtrn/dbtrn:
*************************************************************************
ADRID SHORTP_POLICY LONGP_POLICY LAST_MOD_TIME LAST_AUTOPRG_TIME LAST_MANUPRG_TIME ADRDIR_VERSION ADRSCHM_VERSION ADRSCHMV_SUMMARY ADRALERT_VERSION CREATE_TIME
-------------------- -------------------- -------------------- ---------------------------------------- ---------------------------------------- ---------------------------------------- -------------------- -------------------- -------------------- -------------------- ----------------------------------------
1636358367 168 720 2013-11-21 22:31:02.110317 -02:00 2013-11-19 00:04:32.677483 -02:00 1 2 80 1 2013-10-08 18:02:12.049001 -03:00
1 rows fetched

Também é possível realizar a limpeza pelo adrci sem alterar a retenção, usando o comando:

purge -age <valor_em_minutos> -type <tipo>

adrci> purge -age 2880 -type incident
adrci> purge -age 2880 -type ALERT
adrci> purge -age 2880 -type TRACE
adrci> purge -age 2880 -type CDUMP
adrci> purge -age 2880 -type HM

Vale destacar que após ajustar a retenção é necessário executar o comando purge para ativar o processo de autopurge. Este processo deve ser definido para cada home.

Fonte:http://docs.oracle.com/cd/B28359_01/server.111/b28319/adrci.htm#BGBEGAEB

%name Gerenciando retenção de traces usando o ADRCI   Oracle 11g

Autor: Jhonata Lamim

MBA em Banco de Dados Oracle, formado pelo Centro Universitário de Araraquara (UNIARA), graduado em Sistemas de Informação pelo Centro Universitário de Brusque (UNIFEBE).

Atua com Banco de Dados Oracle desde Junho de 2010. Atualmente é DBA Senior na Exímio Soluções em TI (www.eximioti.com.br)

Principais atividade:

Implementação, migração, gerenciamento e suporte a produtos Oracle (10g, 11g, 12c, RAC), multiplataforma;
Monitoramento de ambientes 24×7;
Backup e Recovery;
Performance e Tuning;
Alta disponibilidade (HA);
EM database/grid/cloud control 12c/13c;
Conversão de databases;
Standby database / Oracle Data Guard;
Migração de dados para Oracle;

Experiência:

DBA Oracle Teiko Soluções em TI – Jun/2010 – Abr/2018
DBA Oracle, Outsourcing – Marfrig Group – Set/2013 – Abr/2018
DBA Oracle, Outsourcing – Grupo Notre Dame – Intermédica – Mar/2017 – Abr/2018
DBA Oralce, Outsourcing – Hospital Beneficiência Portuguesa de São Paulo – Set/2015 – Abr/2018
DBA Oracle, Outsourcing – Fundação São Francisco Xavier –  Set/2015 – Fev/2017
DBA Oracle, Outsourcing – Unimed Grande Florianopolis – Set/2014 – Jul/2016
DBA Oracle, Outsourcing – Hospital Moinhos de Vento – Set/2014 – Set/2015
DBA Oracle, Outsourcing – Santa Casa de Misericórdia de Porto Alegre – 2013

Certificações:

OCS 12C – Oracle Real Application Clusters 12c Certified Implementation Specialist
OCS 12C – Oracle Database 12c Certified Implementation Specialist
OCE 11G – Oracle Database 11g: Performance Tuning
OCA 11G – Oracle Certified Associate Administrator
OCP 11G/12C – Oracle Certified Professional Administrator
OCS 11G – Oracle Certified Specialist
OPNCS 11G – Oracle Partner Network Certified Specialist
OCS – Oracle Linux 6 Implementation Essentials

Linkedin: https://www.linkedin.com/in/jhonata-lamim-dba-oracle-61366484/