Purge AUDIT LOGS Cloud Control 12c
Depois de alguns anos comecei a ter problemas com o crescimento da TABLESPACE MGMT_TABLESPACE no repositório do CLOUD 12C e antes de migrar para a versão 13 estive a implementar procedimentos para fazer o purge de informações de auditoria.
Estas operações visam liberar espaço na TABLESPACE MGMT_TABLESPACE
1) Alteração do período de retenção de informações de AUDIT no repositório do CLOUD 12C.
select table_name, partitions_retained
from sysman.em_int_partitioned_tables
where table_name in ('EM_METRIC_VALUES','EM_METRIC_VALUES_HOURLY','EM_METRIC_VALUES_DAILY');
/
EM_METRIC_VALUES 7
EM_METRIC_VALUES_HOURLY 32
EM_METRIC_VALUES_DAILY 24
Ao correr o procedimento abaixo alterei o período de retenção do DAILY para 12 meses:
execute gc_interval_partition_mgr.set_retention('SYSMAN','EM_METRIC_VALUES_DAILY',12);
Ontem tínhamos 1566501 linhas para esta métrica. Um job do próprio CLOUD ao correr depois das 23HRS (DEFAULT) , efetua a limpeza.
select count(*) from sysman.EM_METRIC_VALUES_DAILY
where collection_time < add_months(sysdate,-13);
/
1566501
Hoje temos :
select count(*) from sysman.EM_METRIC_VALUES_DAILY
where collection_time < add_months(sysdate,-13);
/
123894
2) Procedimento no OMS(Oracle Management Server) :
Para estabelecer um procedimento permanente de limpeza executei os procedimentos abaixo no OMS.
Neste caso tinha informações de AUDIT desde 2013. Meu objetivo é ter informações de apenas 1 ano.
Primeiro estabelecer sessão com o repositório:
emcli login -username=SYSMAN
Para visualizar o STATUS executei os dois comandos abaixo:
emcli show_operations_list > auditoperation.lst
CHANGE_REPOS_PWD Change Repository Password YES
CHANGE_VIEW_USER_PWD Change MGMT_VIEW User Password YES
CLEAR_MANUAL_VIOLATION Clear Manual Rule Violation NO
CONFIG_CONNECTOR Configure Connector NO
COPY_KEY_TO_REPOS Copy Enterprise Manager Key to Repository YES
CREATE_CCC_RULE Create Real-time Monitoring Rule NO
CREATE_CHANGE_MANAGEMENT_SETTING Create Change Management Setting NO
CREATE_CONNECTOR Create Connector NO
emcli show_audit_settings -view="DETAIL" > auditdetails.lst
SECURITY_AUTH_CONFIG : ENABLED
SECURITY_COMM_CREATE_CA : ENABLED
SECURITY_COMM_SECURE_CONSOLE : ENABLED
SECURITY_COMM_SECURE_LOCK : ENABLED
SECURITY_COMM_SECURE_OMS : ENABLED
SECURITY_COMM_SECURE_WLS : ENABLED
SERVICE_AVAIL_CHANGE_OPERATION : DISABLED
SET_PRIVILEGE_DELEGATION_SETTING : DISABLED
UPDATE_PASSWORD : DISABLED
Externalization Switch : Disabled
Directory : Not configured
File Prefix : em_audit
File Size : 5000000 Bytes
Data Retention Period : 365 Days
*Infrastructure Audit is always enabled
Depois seguindo a nota da Oracle criei uma diretoria na BD chamada EM_DIR ( /u01/dba ).
Executar o comando abaixo:
[oracle12@xxxxxxx ~]$ emcli update_audit_settings -externalization_switch="ENABLE" -directory="EM_DIR" -file_prefix="omsmyomshost" -file_size="10000"
Successfully updated the audit settings.
Agora teremos um JOB que cria arquivos na diretoria EM_DIR com as informações antigas eliminadas das tabelas de AUDIT_LOGS. Implementar um procedimento de limpeza destes arquivos depois de gerados.
Ex: find . -type f -mtime +3 -exec rm {} \;
Parabens pelo post. Ja me registrei no seu blog para acompanhar os proximos