oracleTraceFileAnalyzer(TFA)使用方法(含BUG解決)一

分類:編程 時間:2017-03-30

OracleTraceFileAnalyzer(TFA)使用方法(含BUG解決)一。12C自帶了一個很好用的日誌分析工具,TFA可以幫您快速分析當前數據庫日誌。迅速定位和分析日誌,是DBA很好的幫手。

一、安裝

在安裝12C的程序的最後一步執行root腳本的時候,會有如下提示

Entries will be added to the /etc/oratab file as needed by
database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Do you want to setup Oracle Trace File Analyzer (TFA) now ? yes|[no] : 


Oracle Trace File Analyzer (TFA - User Mode) is available at :
    /u01/app/oracle/product/12.2.0/dbhome_1/suptools/tfa/release/tfa_home/bin/tfactl
OR
Oracle Trace File Analyzer (TFA - Daemon Mode) can be installed by running this script :
    /u01/app/oracle/product/12.2.0/dbhome_1/suptools/tfa/release/tfa_home/install/roottfa.sh

如果選擇no,那就不會安裝該工具,默認是no,如果未在安裝時選擇安裝該工具,也可以用,文中提示的兩種方式啟動TFA,一種是直接到

/u01/app/oracle/product/12.2.0/dbhome_1/suptools/tfa/release/tfa_home/bin/tfactl目錄下執行命令操作,另一種方式是安裝到系統

使用root執行該腳本,將可以直接使用tfa命令讀取日誌內容

/u01/app/oracle/product/12.2.0/dbhome_1/suptools/tfa/release/tfa_home/install/roottfa.sh,執行完畢會有如下提示

    /u01/app/oracle/product/12.2.0/dbhome_1/suptools/tfa/release/tfa_home/install/roottfa.sh
Installing Oracle Trace File Analyzer (TFA).
Log File: /u01/app/oracle/product/12.2.0/dbhome_1/install/root_12cr2.yudean.com_2017-03-14_15-53-55.log
Finished installing Oracle Trace File Analyzer (TFA)

二、使用

安裝好tfa後設置好環境變量,我們看下tfa支持哪些命令,首先是tfactl 我們用help看下有哪些我們可以使用。

[oracle@12cr2 ~]$ . oraenv
ORACLE_SID = [PROD] ? PROD1
The Oracle base has been changed from /home/oracle to /u01/app/oracle
[oracle@12cr2 ~]$ tfactl
tfactl> help                                                                  

Usage : /u01/app/oracle/tfa/bin/tfactl  
[options] commands:diagcollect|collection|analyze|ips|run|start|stop|print|directory|toolstatus For detailed help on each command use: /u01/app/oracle/tfa/bin/tfactl
 
-help

1、啟動和關閉

命令tfactl start 和tfactl stop

2、查看當前哪些用戶可以使用tfactl

該命令一般使用TFA admin權限的用戶,使用安裝TFA的用戶執行,這裏是root用戶

tfactl> access lsusers

.---------------------------------.
|        TFA Users in 12cr2       |
+-----------+-----------+---------+
| User Name | User Type | Status  |
+-----------+-----------+---------+
| oracle    | USER      | Allowed |
'-----------+-----------+---------'

3、查看當前TFA主機的狀態

當前我們只有一個節點,相關節點的信息如下

tfactl> print status                                                          

.--------------------------------------------------------------------------------------------.
| Host  | Status of TFA | PID | Port  | version    | Build ID             | Inventory Status |
+-------+---------------+-----+-------+------------+----------------------+------------------+
| 12cr2 | RUNNING       | 912 | 48978 | 12.2.1.0.0 | 12210020161122170355 | COMPLETE         |
'-------+---------------+-----+-------+------------+----------------------+------------------'

4、列出當前TFA的配置信息

tfactl> print config                                                          
.------------------------------------------------------------------------------------.
|                                        12cr2                                       |
+-----------------------------------------------------------------------+------------+
| Configuration Parameter                                               | Value      |
+-----------------------------------------------------------------------+------------+
| TFA Version                                                           | 12.2.1.0.0 |
| Java Version                                                          | 1.8        |
| Public IP Network                                                     | false      |
| Automatic Diagnostic Collection                                       | true       |
| Alert Log Scan                                                        | true       |
| Disk Usage Monitor                                                    | true       |
| Managelogs Auto Purge                                                 | false      |
| Trimming of files during diagcollection                               | true       |
| Inventory Trace level                                                 | 1          |
| Collection Trace level                                                | 1          |
| Scan Trace level                                                      | 1          |
| Other Trace level                                                     | 1          |
| Repository current size (MB)                                          | 19         |
| Repository maximum size (MB)                                          | 10240      |
| Max Size of TFA Log (MB)                                              | 50         |
| Max Number of TFA Logs                                                | 10         |
| Max Size of Core File (MB)                                            | 20         |
| Max Collection Size of Core Files (MB)                                | 200        |
| Minimum Free Space to enable Alert Log Scan (MB)                      | 500        |
| Time interval between consecutive Disk Usage Snapshot(minutes)        | 60         |
| Time interval between consecutive Managelogs Auto Purge(minutes)      | 60         |
| Logs older than the time period will be auto purged(days[d]|hours[h]) | 30d        |
| Automatic Purging                                                     | true       |
| Age of Purging Collections (Hours)                                    | 12         |
| TFA IPS Pool Size                                                     | 5          |
'-----------------------------------------------------------------------+------------'
我們可以用tfactl host add /remove host 增加或者刪除grid節點,也就是可以同時收集多個數據庫的tfa信息。

5、列出對哪些目錄進行了統計

可以看到不僅收集數據庫、監聽還有安裝和操作系統的相關日誌,看來功能很強大。

tfactl> print directories                                                                      
.------------------------------------------------------------------------------------------------------------------.
|                                                       12cr2                                                      |
+------------------------------------+-----------------------------------------------------+------------+----------+
| Trace Directory                    | Component                                           | Permission | Added By |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oraInventory/ContentsXML  | [INSTALL]                                           | public     | root     |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oraInventory/logs         | [INSTALL]                                           | public     | root     |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/cfgtoollogs        | [CFGTOOLS]                                          | public     | root     |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/diag               | [RDBMS]                                             | public     | root     |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/diag/rdbms/orcl/or | [RDBMS]{RDBMS|database=orcl, RDBMS|instance=orcl}   | public     | root     |
| cl/cdump                           |                                                     |            |          |
| Collection policy : No Exclusions  |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/diag/rdbms/orcl/or | [RDBMS]{RDBMS|database=orcl, RDBMS|instance=orcl}   | public     | root     |
| cl/trace                           |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/diag/rdbms/prod1/P | [RDBMS]{RDBMS|database=prod1, RDBMS|instance=PROD1} | public     | root     |
| ROD1/cdump                         |                                                     |            |          |
| Collection policy : No Exclusions  |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/diag/rdbms/prod1/P | [RDBMS]{RDBMS|database=prod1, RDBMS|instance=PROD1} | public     | root     |
| ROD1/trace                         |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/diag/tnslsnr/12cr2 | [TNS]                                               | public     | root     |
| /listener/cdump                    |                                                     |            |          |
| Collection policy : No Exclusions  |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/diag/tnslsnr/12cr2 | [TNS]                                               | public     | root     |
| /listener/trace                    |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/product/12.2.0/dbh | [CFGTOOLS]                                          | public     | root     |
| ome_1/cfgtoollogs                  |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/product/12.2.0/dbh | [INSTALL]                                           | public     | root     |
| ome_1/install                      |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/product/12.2.0/dbh | [RDBMS]                                             | public     | root     |
| ome_1/rdbms/log                    |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/tfa/repository/sup | [RDBMS]{RDBMS|database=orcl, RDBMS|instance=orcl}   | public     | root     |
| tools/ips/user_oracle/201703151143 |                                                     |            |          |
| 09ipscoll_12cr2/diag/rdbms/orcl/or |                                                     |            |          |
| cl/trace                           |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/tfa/repository/sup | [RDBMS]{RDBMS|database=prod1, RDBMS|instance=PROD1} | public     | root     |
| tools/ips/user_oracle/201703151143 |                                                     |            |          |
| 09ipscoll_12cr2/diag/rdbms/prod1/P |                                                     |            |          |
| ROD1/trace                         |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/tfa/repository/sup | [RDBMS]{RDBMS|database=orcl, RDBMS|instance=orcl}   | public     | root     |
| tools/ips/user_oracle/201703151144 |                                                     |            |          |
| 52ipscoll_12cr2/diag/rdbms/orcl/or |                                                     |            |          |
| cl/trace                           |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/tfa/repository/sup | [RDBMS]{RDBMS|database=prod1, RDBMS|instance=PROD1} | public     | root     |
| tools/ips/user_oracle/201703151144 |                                                     |            |          |
| 52ipscoll_12cr2/diag/rdbms/prod1/P |                                                     |            |          |
| ROD1/trace                         |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/tfa/repository/sup | [RDBMS]{RDBMS|database=orcl, RDBMS|instance=orcl}   | public     | root     |
| tools/ips/user_oracle/201703201505 |                                                     |            |          |
| 49ipscoll_12cr2/diag/rdbms/orcl/or |                                                     |            |          |
| cl/trace                           |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/tfa/repository/sup | [RDBMS]{RDBMS|database=prod1, RDBMS|instance=PROD1} | public     | root     |
| tools/ips/user_oracle/201703201505 |                                                     |            |          |
| 49ipscoll_12cr2/diag/rdbms/prod1/P |                                                     |            |          |
| ROD1/trace                         |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/tfa/repository/sup | [RDBMS]{RDBMS|database=orcl, RDBMS|instance=orcl}   | public     | root     |
| tools/ips/user_oracle/201703201519 |                                                     |            |          |
| 20ipscoll_12cr2/diag/rdbms/orcl/or |                                                     |            |          |
| cl/trace                           |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/tfa/repository/sup | [RDBMS]{RDBMS|database=prod1, RDBMS|instance=PROD1} | public     | root     |
| tools/ips/user_oracle/201703201519 |                                                     |            |          |
| 20ipscoll_12cr2/diag/rdbms/prod1/P |                                                     |            |          |
| ROD1/trace                         |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/tfa/repository/sup | [RDBMS]{RDBMS|database=orcl, RDBMS|instance=orcl}   | public     | root     |
| tools/ips/user_root/20170320155302 |                                                     |            |          |
| ipscoll_12cr2/user_root/diag/rdbms |                                                     |            |          |
| /orcl/orcl/trace                   |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /u01/app/oracle/tfa/repository/sup | [RDBMS]{RDBMS|database=prod1, RDBMS|instance=PROD1} | public     | root     |
| tools/ips/user_root/20170320155302 |                                                     |            |          |
| ipscoll_12cr2/user_root/diag/rdbms |                                                     |            |          |
| /prod1/PROD1/trace                 |                                                     |            |          |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /var/adm                           | [OS]                                                | public     | root     |
| Collection policy : Exclusions     |                                                     |            |          |
+------------------------------------+-----------------------------------------------------+------------+----------+
| /var/log                           | [OS:RACDBCLOUD]                                     | public     | root     |
| Collection policy : Exclusions     |                                                     |            |          |
'------------------------------------+-----------------------------------------------------+------------+----------'
當讓您也可以增加或者刪除目錄,命令如下

增加目錄

tfactl directory add dir [ -public ]
[ -exclusions | -noexclusions | -collectall ]
[ -node all | n1,n2,... ]

刪除目錄 tfactl directory remove dir [ -node all | n1,n2,... ]

6、收集日誌信息

如果您使用了中文字符集也就是LANG=zh_CN.UTF-8的話接下來就會出現BUG ,Illegal parameter passed to diagcollection -z

[root@12cr2 ~]# echo $LANG
zh_CN.UTF-8
[root@12cr2 ~]# tfactl diagcollect -database PROD1

Collecting data for the last 12 hours for this component ...
Collecting data for all nodes

Collection Id : 2017032116573212cr2

Detailed Logging at : /u01/app/oracle/tfa/repository/collection_二_3月_21_16_57_32_CST_2017_node_all/diagcollect_20170321165732_12cr2.log
Illegal parameter passed to diagcollection -z

FAILED
這個錯誤原因找了很久,找不到這個logging 的日誌,度娘是找不到相關信息的,最終猜想應該是文件中包含了中文名稱導致收集失敗,試著將字符集換成英文,結果成功了
[root@12cr2 ~]# export LANG=en_US
[root@12cr2 ~]# echo $LANG
en_US
[root@12cr2 ~]# tfactl diagcollect -database PROD1

Collecting data for the last 12 hours for this component ...
Collecting data for all nodes

Collection Id : 2017032117030312cr2

Detailed Logging at : /u01/app/oracle/tfa/repository/collection_Tue_Mar_21_17_03_03_CST_2017_node_all/diagcollect_20170321170303_12cr2.log
2017/03/21 17:03:07 CST : Collection Name : tfa_Tue_Mar_21_17_03_03_CST_2017.zip
2017/03/21 17:03:07 CST : Collecting diagnostics from hosts : [12cr2]
2017/03/21 17:03:07 CST : Scanning of files for Collection in progress...
2017/03/21 17:03:07 CST : Collecting additional diagnostic information...
2017/03/21 17:03:12 CST : Getting list of files satisfying time range [03/21/2017 05:03:07 CST, 03/21/2017 17:03:12 CST]
2017/03/21 17:03:13 CST : Collecting ADR incident files...
2017/03/21 17:03:29 CST : Completed collection of additional diagnostic information...
2017/03/21 17:03:33 CST : Completed Local Collection
.---------------------------------.
|        Collection Summary       |
+-------+-----------+------+------+
| Host  | Status    | Size | Time |
+-------+-----------+------+------+
| 12cr2 | Completed | 63kB |  26s |
'-------+-----------+------+------'

Logs are being collected to: /u01/app/oracle/tfa/repository/collection_Tue_Mar_21_17_03_03_CST_2017_node_all
/u01/app/oracle/tfa/repository/collection_Tue_Mar_21_17_03_03_CST_2017_node_all/12cr2.tfa_Tue_Mar_21_17_03_03_CST_2017.zip
順利收集成功,TFA作為新出來的工具,在一些細節方面可能支持不太好,本章先到收集,下一章講演示,查詢剪切後日誌信息。
Tags: available database running product release

文章來源:


ads
ads

相關文章
ads

相關文章

ad