O TFA é uma ferramenta que prove monitoração de healcheck em tempo real, detecção falhas e diagnostico numa unica ferramenta de linha de comando, o TFA pode ser utilizado para monitorar erros em arquivos de log, coletar estatisticas para diagnostico e fazer upload de arquivos de maneira automatica.
Porém o TFA, apesar de em algumas versões já vir instalado ele faz muito menos do que se espera, monitorar a nota Oracle MOS Doc ID 1513912.1 para instalar sempre a versão mais atualizada.
Instalando o TFA
Para obter a versão mais recente do TFA monitorar MOS Doc ID 1513912.1 e realizar o download através do Link, durante esse post a versão atual é a 18.3, e é suportada em diversas plataformas como Redhat, Suse, HPUX, AIX, Windows e Solaris.
As instalação podem ser:
- Como um Daemon, portanto necessário instalar como root;
- Non-Daemon, podendo ser instalado como usuário non-root;
Podendo Estar em
- Local Node - Somente irá coletar no node local
- Cluster, se instalado para um ambiente com cluster, é recomendado que seja feito como user equivalency para o root.
[root@ol7-ora12-srvprd1 sf_hostDownloads]# ./installTFA-LINUX
TFA Installation Log will be written to File : /tmp/tfa_install_4358_2018_08_09-18_45_46.log
Starting TFA installation
TFA Version: 183000 Build Date: 201808081359
Enter a location for installing TFA (/tfa will be appended if not supplied) [/media/sf_hostDownloads/tfa]:
/u01/app/oracle/tfa
Running Auto Setup for TFA as user root...
Would you like to do a [L]ocal only or [C]lusterwide installation ? [L|l|C|c] [C] : L
Installing TFA now...
Discovering Nodes and Oracle resources
Starting Discovery...
Getting list of nodes in cluster . . . . .
....
Installing TFA on ol7-ora12-srvprd1:
HOST: ol7-ora12-srvprd1 TFA_HOME: /u01/app/oracle/tfa/ol7-ora12-srvprd1/tfa_home
.-------------------------------------------------------------------------------------.
| Host | Status of TFA | PID | Port | Version | Build ID |
+-------------------+---------------+------+------+------------+----------------------+
| ol7-ora12-srvprd1 | RUNNING | 4906 | 5000 | 18.3.0.0.0 | 18300020180808135947 |
'-------------------+---------------+------+------+------------+----------------------'
Running Inventory in All Nodes...
Enabling Access for Non-root Users on ol7-ora12-srvprd1...
Adding default users to TFA Access list...
Summary of TFA Installation:
.----------------------------------------------------------------------.
| ol7-ora12-srvprd1 |
+---------------------+------------------------------------------------+
| Parameter | Value |
+---------------------+------------------------------------------------+
| Install location | /u01/app/oracle/tfa/ol7-ora12-srvprd1/tfa_home |
| Repository location | /u01/app/oracle/tfa/repository |
| Repository usage | 0 MB out of 10240 MB |
'---------------------+------------------------------------------------'
TFA is successfully installed...
Usage : /u01/app/12.1.0/grid/bin/tfactl
commands:diagcollect|collection|analyze|ips|run|start|stop|enable|disable|status|print|access|purge|directory|host|receiver|set|toolstatus|uninstall|diagnosetfa|syncnodes|setupmos|upload|availability|rest|events|search|changes|isa
For detailed help on each command use:
/u01/app/12.1.0/grid/bin/tfactl
Usando o TFA
O TFA pode ser utilizado com três tipos de interfaces
- Command line - tfactl command
- Interativo - tfactl
- Menu - tfactl menu
habilitando acesso a usuários
Por padrão os usuários owner do ORACLE_HOME e do GRID_HOME já possuem permissão para utilizar o tfactl, porém para adicionar outros usários basta usar o comando:
tfactl access enable
tfactl access add user username
Exemplo:
[root@ol7-ora12-srvprd1 bin]# ./tfactl access lsusers
.---------------------------------.
| TFA Users in ol7-ora12-srvprd1 |
+-----------+-----------+---------+
| User Name | User Type | Status |
+-----------+-----------+---------+
| oracle | USER | Allowed |
'-----------+-----------+---------'
[root@ol7-ora12-srvprd1 bin]# ./tfactl access enable
TFA has already enabled access for Non-root Users.
[root@ol7-ora12-srvprd1 bin]# ./tfactl access add -user dhnomura -local
Successfully added 'dhnomura' to TFA Access list.
.---------------------------------.
| TFA Users in ol7-ora12-srvprd1 |
+-----------+-----------+---------+
| User Name | User Type | Status |
+-----------+-----------+---------+
| dhnomura | USER | Allowed |
| oracle | USER | Allowed |
'-----------+-----------+---------'
[root@ol7-ora12-srvprd1 bin]#
Administrando o Daemon
É possivel também administrar o daemon como, start, stop, enable ou disable auto-start, para isso:
[root@ol7-ora12-srvprd1 bin]# ./tfactl stop
Stopping TFA from the Command Line
Stopped OSWatcher
TFA-00518 Oracle Trace File Analyzer (TFA) is not running (stopped)
TFA Stopped Successfully
. . .
Successfully stopped TFA..
[root@ol7-ora12-srvprd1 bin]# ./tfactl start
Starting TFA..
. . . . .
Successfully started TFA Process..
. . . . .
TFA Started and listening for commands
[root@ol7-ora12-srvprd1 bin]# ./tfactl status
.--------------------------------------------------------------------------------------------------------.
| Host | Status of TFA | PID | Port | Version | Build ID | Inventory Status |
+-------------------+---------------+------+------+------------+----------------------+------------------+
| ol7-ora12-srvprd1 | RUNNING | 8629 | 5000 | 18.3.0.0.0 | 18300020180808135947 | COMPLETE |
'-------------------+---------------+------+------+------------+----------------------+------------------'
[root@ol7-ora12-srvprd1 bin]# ./tfactl disable
TFA autostart has been disabled ..
[root@ol7-ora12-srvprd1 bin]# ./tfactl enable
TFA autostart has been enabled ..
[root@ol7-ora12-srvprd1 bin]#
Administrando o respositorio
O TFA armazena tudo que é coletado em um repositorio no sistema operacional, esse repositorio pode ser limpo conforme algumas politicas definidas, ou em caso de se chegar ao seu limite, alguns exemplos são:
[root@ol7-ora12-srvprd1 bin]# ./tfactl set repositorydir=/u01/app/oracle/tfa2
Successfully changed repository
.------------------------------------------------------------.
| Repository Parameter | Value |
+---------------------------+--------------------------------+
| Old Location | /u01/app/oracle/tfa/repository |
| New Location | /u01/app/oracle/tfa2 |
| Current Maximum Size (MB) | 10240 |
| Current Size (MB) | 0 |
| Status | OPEN |
'---------------------------+--------------------------------'
[root@ol7-ora12-srvprd1 bin]# ./tfactl set minagetopurge=48
[root@ol7-ora12-srvprd1 bin]# ./tfactl set autopurge=ON
Toda a configuração do TFA pode ser encontrada em:
Managing and Configuring Oracle Trace File Analyzer
Coleta automatica de eventos
O TFA observa erros como ORA-600 e node Eviction, quando isso ocorre ele pode:
- Invocar ferramentas de diagnostico e coleta de logs.
- Reduzir o tamanho dos logs apenas contendo as informações necessárias.
- Consolidar e compactar a coleta de logs entre todos os nodes.
- Armazenar os logs em um repositório.
- Enviar email.
- Fazer upload para Oracle.
Para realizar a coleta automatica basta executar:
[root@ol7-ora12-srvprd1 bin]# ./tfactl set autodiagcollect=ON
Successfully set autodiagcollect=ON
Oracle Trace File Analyzer Workflow |
Coletando Informações de diagnostico manualmente
Há diversas formas de coletas, podemos filtrar por erros especificos, definir uma janela de tempo especifico, filtrar por componente ou em tempo real, a domuentação é enorme, vou colocar alguns exemplos iguais ao site da Oracle, porém quando solicitado por um analista do Suporte esse irá especificar examente o que deve ser coletado e é bom ter, pois não havendo todos os logs o troubleshot pode não ser dos melhores.
Health Check em tempo real
tfactl summary
Todos eventos nas ultimas 18 horas
tfactl analyze –last 18h
Todos os erros ora600 nas ultimas 8 horas
tfactl analyze -search “ora-00600" -last 8h
Tools
Além das ferramentas de coleta e health check que o TFA possui a há outras ferramentas que foram incluidas no TFA e podem ser utilizadas em conjunto, algumas delas são o orachk, oratop e oswbb, todas muito util para diagnostico e troubleshoot, acredito que cada uma mereça um capitulo a parte, fica para um proximo post.
Para validar o status de cada uma delas:
[root@ol7-ora12-srvprd1 bin]# ./tfactl toolstatus
.------------------------------------------------------------------.
| TOOLS STATUS - HOST : ol7-ora12-srvprd1 |
+----------------------+--------------+--------------+-------------+
| Tool Type | Tool | Version | Status |
+----------------------+--------------+--------------+-------------+
| Development Tools | orachk | 12.2.0.1.3 | DEPLOYED |
| | oratop | 14.1.2 | DEPLOYED |
+----------------------+--------------+--------------+-------------+
| Support Tools Bundle | darda | 2.10.0.R6036 | DEPLOYED |
| | oswbb | 8.0.1 | RUNNING |
| | prw | 12.1.13.11.4 | NOT RUNNING |
+----------------------+--------------+--------------+-------------+
| TFA Utilities | alertsummary | 12.2.1.1.0 | DEPLOYED |
| | calog | 12.2.0.1.0 | DEPLOYED |
| | dbcheck | 18.3.0.0.0 | DEPLOYED |
| | dbglevel | 12.2.1.1.0 | DEPLOYED |
| | grep | 12.2.1.1.0 | DEPLOYED |
| | history | 12.2.1.1.0 | DEPLOYED |
| | ls | 12.2.1.1.0 | DEPLOYED |
| | managelogs | 12.2.1.1.0 | DEPLOYED |
| | menu | 12.2.1.1.0 | DEPLOYED |
| | param | 12.2.1.1.0 | DEPLOYED |
| | ps | 12.2.1.1.0 | DEPLOYED |
| | pstack | 12.2.1.1.0 | DEPLOYED |
| | summary | 12.2.1.1.0 | DEPLOYED |
| | tail | 12.2.1.1.0 | DEPLOYED |
| | triage | 12.2.1.1.0 | DEPLOYED |
| | vi | 12.2.1.1.0 | DEPLOYED |
'----------------------+--------------+--------------+-------------'
Note :-
DEPLOYED : Installed and Available - To be configured or run interactively.
NOT RUNNING : Configured and Available - Currently turned off interactively.
RUNNING : Configured and Available.
Referencias
MOS Doc ID 1513912.1
OTN TFA Overview
Oracle Documentation
Nenhum comentário:
Postar um comentário