Oracle GI 日志收集工具 - TFA 简介
转载自:https://blogs.oracle.com/Database4CN/entry/tfa_collector_%E4%BB%8B%E7%BB%8D
1.TFA的目的:
TFA是个11.2版本上推出的用来收集Grid Infrastructure/RAC环境下的诊断日志的工具,它可以用非常简单的命令协助用户收集RAC里的日志,以便进一步进行诊断;TFA是类似diagcollection的一个oracle 集群日志收集器,而且TFA比diagcollection集中和自动化的诊断信息收集能力更强大。TFA有以下几个特点:
1. TFA可以在一台机器上执行一条简单的命令把所有节点的日志进行打包,封装;
2. TFA可以在收集的过程中对日志进行”trim”操作,减少数据的收集量;
3. TFA可以收集用来诊断用的“一段时间内”的数据;
4. TFA可以把所有节点的日志收集并封装好放在某一个节点上以便传输阅读;
5. TFA可以指定Cluster中的某一部分组件进行日志收集,如:ASM ,RDBMS,Clusterware
6. TFA可以根据条件配置对告警日志进行实时扫描(DB Alert Logs, ASM Alert Logs, Clusterware Alert Logs, etc);
7. TFA可以根据实时扫描的结果自动的收集诊断日志;
8. TFA可以根据指定的错误进行对告警日志的扫描;
9. TFA可以根据指定的错误扫描后的结果收集诊断日志;
2. TFA的安装要求:
平台:
目前TFA支持以下几种平台:
Intel Linux(Enterprise Linux, RedHat Linux, SUSE Linux)
Linux Itanium
Oracle Solaris SPARC
Oracle Solaris x86-64
AIX (requires bash shell version 3.2 or higher installed)
HPUX Itanium
HPUX PA-RISC
3.支持的数据库版本:
TFA目前的设计是脱离RDBMS和CRS进行设计的,所以设计的初衷是针对所有的版本而设计的,不受RDBMS或者CRS的版本限制;
下载 TFA Collector:
该版本的TFA和相关TFA用户指南可以通过点击下面的相关下载链接。
TFA 收集器:
https://mosemp.us.oracle.com/epmos/main/downloadattachmentprocessor?attachid=1513912.2:TFA_NOJRE&clickstream=no
TFA 用户手册:
https://mosemp.us.oracle.com/epmos/main/downloadattachmentprocessor?attachid=1513912.2:TFA_USER_GUIDE&clickstream=no
4. TFA快速安装指南:
安装:
注意:在安装之前请确保您的环境上已经安装了JRE1.6或者是更高版本的JRE,如果没有,请先安装JRE1.6
1. 请使用root用户登录系统
2. 在所有的节点上为TFA准备一个安装的位置,注意这个位置不要放在Cluster file system中;
3. 在节点1上执行installTFALite.sh来启动安装过程:
---------------------------------
[root@rac1 tmp]# ./installTFALite.sh
Starting TFA installation
---------------------------------
备注: 最新版本的TFA已经把installTFALite.sh修改成了installTFALite,安装的时候可以直接执行installTFALite,并且可以指定TFA BASE和JAVA_HOME
4. 当系统提示安装位置,输入在第2步中选择的位置的TFA安装,:
---------------------------------
Enter a location for installing TFA [/opt/oracle/tfa]:/opt/oracle/tfa
Checking for available space in /opt/oracle/tfa/
---------------------------------
5. 请输入之前安装了JRE1.6的JAVA_HOME,注意这个位置需要在所有的节点上都相同:
---------------------------------
Enter a Java Home that contains Java 1.6 or later : /usr/java/jre1.7.0_11
Running Auto Setup for TFA as user root...
---------------------------------
6. 按照以下说明完成安装:
------------------------------------------------------------------
Would you like to do a [L]ocal only or [C]lusterwide installation ? [L|l|C|c] [C] :
The following installation requires temporary use of SSH.
If SSH is not configured already then we will remove SSH
when complete.
Do you wish to Continue ? [Y|y|N|n] [N] Y
Installing TFA at /opt/oracle/tfa in all hosts
Discovering Nodes and Oracle resources
Checking whether CRS is up and running
Getting list of nodes in cluster
Checking ssh user equivalency settings on all nodes in cluster
Node rac2 is configured for ssh user equivalency for root user
Searching for running databases . . . . .
.
List of running databases registered in OCR
1. ORCL
. .
Checking Status of Oracle Software Stack - Clusterware, ASM, RDBMS
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TFA Will be Installed on the Following Nodes
++++++++++++++++++++++++++++++++++++++++++++
Install Nodes
=============
rac1
rac2
Do you wish to make changes to the Node List ? [Y/y/N/n] [N]
TFA will scan the following Directories
++++++++++++++++++++++++++++++++++++++++++++
.----------------------------------------------------------------.
| rac2 |
+-----------------------------------------------------+----------+
| Trace Directory | Resource |
+-----------------------------------------------------+----------+
| /u01/app/11.2.0/grid/cfgtoollogs | INSTALL |
| /u01/app/11.2.0/grid/crs/log | CRS |
| /u01/app/11.2.0/grid/css/log | CRS |
| /u01/app/11.2.0/grid/cv/log | CRS |
| /u01/app/11.2.0/grid/evm/admin/log | CRS |
| /u01/app/11.2.0/grid/evm/admin/logger | CRS |
| /u01/app/11.2.0/grid/evm/log | CRS |
| /u01/app/11.2.0/grid/install | INSTALL |
| /u01/app/11.2.0/grid/log/ | CRS |
| /u01/app/11.2.0/grid/network/log | CRS |
| /u01/app/11.2.0/grid/oc4j/j2ee/home/log | CRSOC4J |
| /u01/app/11.2.0/grid/opmn/logs | CRS |
| /u01/app/11.2.0/grid/racg/log | CRS |
| /u01/app/11.2.0/grid/rdbms/log | ASM |
| /u01/app/11.2.0/grid/scheduler/log | CRS |
| /u01/app/11.2.0/grid/srvm/log | CRS |
| /u01/app/oraInventory/ContentsXML | INSTALL |
| /u01/app/oraInventory/logs | INSTALL |
| /u01/app/oracle/cfgtoollogs | CFGTOOLS |
| /u01/app/oracle/diag/asm/+asm/+ASM2/trace | ASM |
| /u01/app/oracle/diag/rdbms/orcl/ORCL2/trace | RDBMS |
| /u01/app/oracle/diag/tnslsnr | TNS |
| /u01/app/oracle/diag/tnslsnr/rac2/listener/trace | TNS |
| /u01/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs | INSTALL |
| /u01/app/oracle/product/11.2.0/dbhome_1/install | INSTALL |
'-----------------------------------------------------+----------'
.----------------------------------------------------------------.
| rac1 |
+-----------------------------------------------------+----------+
| Trace Directory | Resource |
+-----------------------------------------------------+----------+
| /u01/app/11.2.0/grid/cfgtoollogs | INSTALL |
| /u01/app/11.2.0/grid/crs/log | CRS |
| /u01/app/11.2.0/grid/css/log | CRS |
| /u01/app/11.2.0/grid/cv/log | CRS |
| /u01/app/11.2.0/grid/evm/admin/log | CRS |
| /u01/app/11.2.0/grid/evm/admin/logger | CRS |
| /u01/app/11.2.0/grid/evm/log | CRS |
| /u01/app/11.2.0/grid/install | INSTALL |
| /u01/app/11.2.0/grid/log/ | CRS |
| /u01/app/11.2.0/grid/network/log | CRS |
| /u01/app/11.2.0/grid/oc4j/j2ee/home/log | CRSOC4J |
| /u01/app/11.2.0/grid/opmn/logs | CRS |
| /u01/app/11.2.0/grid/racg/log | CRS |
| /u01/app/11.2.0/grid/rdbms/log | ASM |
| /u01/app/11.2.0/grid/scheduler/log | CRS |
| /u01/app/11.2.0/grid/srvm/log | CRS |
| /u01/app/oraInventory/ContentsXML | INSTALL |
| /u01/app/oraInventory/logs | INSTALL |
| /u01/app/oracle/cfgtoollogs | CFGTOOLS |
| /u01/app/oracle/diag/asm/+asm/+ASM1/trace | ASM |
| /u01/app/oracle/diag/rdbms/orcl/ORCL1/trace | RDBMS |
| /u01/app/oracle/diag/tnslsnr | TNS |
| /u01/app/oracle/diag/tnslsnr/rac1/listener/trace | TNS |
| /u01/app/oracle/product/11.2.0/dbhome_1/cfgtoollogs | INSTALL |
| /u01/app/oracle/product/11.2.0/dbhome_1/install | INSTALL |
'-----------------------------------------------------+----------'
Do you wish to change the Trace Directory List ? [Y/y/N/n] [N]
Installing TFA on rac1
Installing TFA on rac2
TFA is running
Successfully added host: rac2
.--------------------------------.
| Host | Status of TFA | PID |
+--------+---------------+-------+
| rac1 | RUNNING | 11685 |
| rac2 | RUNNING | 5081 |
'--------+---------------+-------'
Setting TFA cookie in all nodes
Successfully set cookie=77411b8fff446d2954d5c080225052ac
TFA Cookie: 77411b8fff446d2954d5c080225052ac
Summary of TFA Installation
.-----------------------------------------------------------.
| rac1 |
+---------------------+-------------------------------------+
| Parameter | Value |
+---------------------+-------------------------------------+
| Install location | /opt/oracle/tfa/tfa_home |
| Repository location | /opt/oracle/tfa/tfa_home/repository |
| Repository usage | 0 MB out of 10240 MB |
'---------------------+-------------------------------------'
.-----------------------------------------------------------.
| rac2 |
+---------------------+-------------------------------------+
| Parameter | Value |
+---------------------+-------------------------------------+
| Install location | /opt/oracle/tfa/tfa_home |
| Repository location | /opt/oracle/tfa/tfa_home/repository |
| Repository usage | 0 MB out of 10240 MB |
'---------------------+-------------------------------------'
TFA is successfully installed..
------------------------------------------------------------------
4.TFA启动和停止:
TFA运行在Linux和Unix平台上的init,所以,这将是在服务器启动时自动启动。
默认的情况我们把这个脚本命名为init.tfa;
所在位置取决于不同平台,如:
Linux and Solaris: /etc/init.d/init.tfa
Aix: /etc/init.tfa
HP-UX: /sbin/init.d/init.tfa
以下命令式在Linux平台下作为例子:
启动:
# /etc/init.d/init.tfa start
停止:
# /etc/init.d/init.tfa stop
重启:
# /etc/init.d/init.tfa restart
5.手动收集诊断信息:
我们通过调用tfactl的命令和诊断动词diagnostic来控制TFA收集我们期望的诊断信息。Tfactl 提供给用户多种可选择的模式进行收集,如 ,收集一个时间段内的日志信息来减少我们收集日志的量;
具体操作的命令您可以通过以下方式看到:
--------------------------------------------------------------
#$TFA_HOME/bin/tfactl diagcollect -h
Usage: /u01/app/tfa/tfa_home/bin/tfactl diagcollect [-all | -database | -asm | -crs | -os | -install | -node | -tag ]
[-since <n><h|d>| -from <time> -to <time> | -for <time>]
[-copy | -nocopy] [-symlink][-notrim]
Options:
-all Collect logs of all types
-crs Collect only CRS logs
-asm Collect only ASM logs
-database Collect only database logs from databases specified
-os Collect only OS files
-install Collect only INSTALL files
-node Specify comma separated list of host names for collection.
-copy Copy back the zip files to master node from all nodes
-nocopy Does not copy back the zip files to master node from all nodes
-notrim Does not trim the files collected
-symlink This option should be used with -for.
Creates symlinks for files which are updated during the input time.
-since <n><h|d> Files from past 'n' [d]ays or 'n' [h]ours
-from <time> From time
-to <time> To time
-for <time> Specify a incident time.
-z <file> Output file name
-tag <description> Enter a tag for the zip(s) created
--------------------------------------------------------------
在下面的例子中,我们使用了 -all,并���诉TFA收集诊断所有类型的日志,从午夜1月21日至1月21日13:00 进行收集。该命令将启动指定的诊断在后台收集所有群集节点上,压缩成zip文件放置在每个节点的TFA_HOME中:
--------------------------------------------------------------
# $TFA_HOME/bin/tfactl diagcollect -all -from "Jan/21/2013" -to "Jan/21/2013 13:00:00"
time: Jan/21/2013
Valid pattern
Month : 1
time: Jan/21/2013 13:00:00
Valid pattern
Month : 1
rac1:startdiagcollection: -database -asm -crs -os -install -from Jan/21/2013 -to Jan/21/2013 13:00:00 -z Mon_Jan_21_11_52_20_EST_2013 -node all -copy
Logs are collected to:
/opt/oracle/tfa/tfa_home/repository/rac1.Mon_Jan_21_11_52_20_EST_2013.zip
/opt/oracle/tfa/tfa_home/repository/rac2.Mon_Jan_21_11_52_20_EST_2013.zip
--------------------------------------------------------------
6.诊断问题or上传诊断信息给Oracle Support工程师:
无论我们用哪种方法对诊断信息进行收集,日志信息都会被打包好放置在$TFA_HOME/repository的目录下,以便您上传该文件给Oracle的support工程师
7.推荐参考文档:
TFA Collector- The Preferred Tool for Automatic or ADHOC Diagnostic Gathering Across All Cluster Nodes [ID 1513912.2]
便捷的日志收集和分析工具TFA
Oracle GI 日志收集工具 - TFA 简介的更多相关文章
- Oracle GI 日志收集工具 - TFA
1.TFA的目的: TFA是个11.2版本上推出的用来收集Grid Infrastructure/RAC环境下的诊断日志的工具,它可以用非常简单的命令协助用户收集RAC里的日志,以便进一步进行诊断:T ...
- Hadoop生态圈-flume日志收集工具完全分布式部署
Hadoop生态圈-flume日志收集工具完全分布式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 目前为止,Hadoop的一个主流应用就是对于大规模web日志的分析和处理 ...
- Scribe日志收集工具
Scribe日志收集工具 概述 Scribe是facebook开源的日志收集系统,在facebook内部已经得到大量的应用.它能够从各种日志源上收集日志,存储到一个中央存储系统(可以是NFS,分布式文 ...
- 使用 EFKLK 搭建 Kubernetes 日志收集工具栈
转载自:https://mp.weixin.qq.com/s?__biz=MzU4MjQ0MTU4Ng==&mid=2247491992&idx=1&sn=a770252759 ...
- Docker处理日志的方法&日志收集工具比较
测试logstash:docker run -it mylogstash:0.1.0 logstash -e 'input{stdin{}}output{stdout{codec=>rubyde ...
- 日志收集工具 Fluentd 使用教程
转载自:https://mp.weixin.qq.com/s?__biz=MzU4MjQ0MTU4Ng==&mid=2247499829&idx=1&sn=1f92daa88d ...
- 关于K8s集群器日志收集的总结
本文介绍了kubernetes官方提供的日志收集方法,并介绍了Fluentd日志收集器并与其他产品做了比较.最后介绍了好雨云帮如何对k8s进行改造并使用ZeroMQ以消息的形式将日志传输到统一的日志处 ...
- kubernets轻量 contain log 日志收集技巧
首先这里要收集的日志是容器的日志,而不是集群状态的日志 要完成的三个点,收集,监控,报警,收集是基础,监控和报警可以基于收集的日志来作,这篇主要实现收集 不想看字的可以直接看代码,一共没几行,尽量用调 ...
- 轻量级日志收集方案Loki
先看看结果有多轻量吧 官方文档:https://grafana.com/docs/loki/latest/ 简介 Grafana Loki 是一个日志聚合工具,它是功能齐全的日志堆栈的核心. Loki ...
随机推荐
- thinkphp3.2分页
在ThinkPHP 3.1及之前,分页功能可能是放在/Lib/Org/Util中的,到了ThinkPHP 3.2后,分页功能已经整合到了Library/Think中了.而且ThinkPHP 3.2已经 ...
- ubuntu软件(查看文件差异)
你可以在ubuntu系统自带的软件--->ubuntu软件中心输入:meld diff 就可以安装.
- OC Foundation框架—结构体
一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框架中的数据类型,那么包含它的主头文 ...
- Win10 dell驱动触摸板安装
Win10 dell驱动触摸板安装 在此之前安装驱动后要重启
- webservice-jdk客户端代码
使用wsimport.exe 生成客户端代码 使用JDK的bin文件夹中,有一个wsimport.exe,这个工具依据wsdl文件生成相应的类文件,然后用这些文件就可以像调用本地类一样调用本地的类一样 ...
- 如何获取显示器的EDID信息
Q1: 为什么要写这篇文章? A1:在最近的工作中遇到了不少问题,其中很多都是和EDID相关的.可以说,作为一家以“显示”为生的企业,我们时时刻刻在与EDID打交道.EDID这东西很简单,但是如果不了 ...
- SGU 124. Broken line 射线法 eps的精准运用,计算几何 难度:3
124. Broken line time limit per test: 0.25 sec. memory limit per test: 4096 KB There is a closed bro ...
- MySQL5.7 主从复制配置
一.主从复制原理 MySQL 主从复制是一个异步的复制过程,主库发送更新事件到从库,从库读取更新记录,并执行更新记录,使得从库的内容与主库保持一致.每一个主从复制的连接,都有三个线程.拥有多个从库的主 ...
- Axure使用笔记1:如何去除IE中每次“已限制网页运行脚本或ActiveX控件”
每次在Axure中画原型预览的时候,IE每次都有 这个比较烦,在Internent做如下设置,即可不再烦恼 看到没,给允许活动内容在我的计算机上的文件中运行打上勾
- 在Emacs中使用GNU Global
背景 在我平时用Emacs编写C代码时,经常需要进行代码的跳转,主要需求为函数定义的跳转,某个具体函数的调用查找,某个结构体的定义跳转以及结构体中具体某一项的跳转等,GNU Global就能完全满足我 ...