介绍下Oracle Database gR中的日志和日志的收集
为什么要收集Oracle日志?
很多时候遇到问题联系Oracle support或者提交SR的时候support总是会要求你收集好日志有时候日志收集不齐全来来回回几次时间都浪费在沟通上了另外即使自己在测试环境进行实验的时候也会遇到一些问题在论坛提问或者招人帮忙的时候为了把问题描述清楚必要的日志也是十分有帮助的
有哪些日志需要收集?
随着Oracle Database gR的发布大量的feature引入日志的种类和范畴也有了很大的增加安装出错了rootsh出错了建库失败了asmca失败了最大的改变是在gR中引入了各种各样的agent资源的管理全部集成到了统一的agent framework中进行这些包括启动停止检查清除等等agent因为资源的范畴和权限不同分为了crsd agent crsd root agent ohasd agent ohasd root agent详细不多说可以参考前面讲过的gR的后台进程 具体的这些agent如何控制和管理这些资源以后在专题介绍
日志多不要紧而且目录结构也比较分散crs 的日志文件dbca/dbua/netca/asmca这些文件rootsh日志文件install的日志文件都是分部在不同地方的所以就迫切需要一个好用的工具进行收集
日志收集工具diagcollectionpl
既然日志收集这么迫切又这么麻烦那么有没有一款方便好用的收集工具呢? 答案是肯定的在GI HOME/bin/目录下就有这么一个好用的脚本 diagcollectionpl脚本是用perl写成的所以天生可移植支持各种平台的日志收集(包括Windows)工具的使用也相当的简单如下是一个简单的帮助信息
sh# /diagcollectionpl
Production Copyright Oracle All rights reserved
Cluster Ready Services (CRS) diagnostic collection tool
diagcollection
–collect
[–crs] For collecting crs diag information
[–adr] For collecting diag information for ADR; specify ADR location
[–chmos] For collecting Cluster Health Monitor (OS) data
[–all] DefaultFor collecting all diag information
[–core] UNIX only Package core files with CRS data
[–afterdate] UNIX only Collects archives from the specified date Specify in mm/dd/yyyy format
[–aftertime] Supported with adr option Collects archives after the specified time Specify in YYYYMMDDHHMISS format
[–beforetime] Supported with adr option Collects archives before the specified date Specify in YYYYMMDDHHMISS format
[–crshome] Argument that specifies the CRS Home location
[–incidenttime] Collects Cluster Health Monitor (OS) data from the specified time Specify in MM/DD/YYYYHH:MM:SS format
If not specified Cluster Health Monitor (OS) data generated in the past hours are collected
[–incidentduration] Collects Cluster Health Monitor (OS) data for the duration after the specified time Specify in HH:MM format
If not specified all Cluster Health Monitor (OS) data after incidenttime are collected
NOTE:
You can also do the following
/diagcollectionpl –collect –crs –crshome <crs Home>
–clean cleans up the diagnosability
information gathered by this script
–coreanalyze UNIX only Extracts information from core files
and stores it in a text file
sh#
</crs>
不要被大量的选项吓坏其实主要的选项就是一个 –collect 另外清除收集的日志就是–clean
这实在是一款居家旅行老少皆宜的工具欢迎大家使用
为什么要介绍这个工具?
为什么想到突然要介绍这个工具呢那是在目前版本中这个工具收集的日志范围有限而我因为目前正在着手对这个工具进行改进使之功能更加强大收集的日志种类更多也欢迎大家对这个工具提出更多建议并关注后续消息
还有别的工具可以收集日志吗?
有的除了diagcollectionpl 脚本之外其实Oracle提供了很多其他的工具比如OSWatcher还有gR新引入的CHM工具 (Cluster Healthy Monitor)等等下篇我们介绍CHM