<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


一、             添加Oracle 监控




Oracle监控也参考zabbix wiki上如下的方法(调用zabora工具):



http://www.zabbix.com/wiki/howto/monitor/db/orcale/oracle



1、    下载oracle监控程序zabora到oracle所在的主机上,修改所在host的agentd.conf,添加监控项,按如下格式:



UserParameter=oracle.name,DIR/zabora pattern sid



监控oracle数据库状态:


UserParameter=oracle.checkactive,/usr/local/zabora checkactive OracleSID



监控oralce数据库连接用户总数


UserParameter=oracle.usercount,/usr/local/zabora usercount OracleSID


更多zabora的监控项参考如下:



zabora version: 1.5 
   
 
  
usage: 
   
 
  
   zabora checkactive [SID]     -- Check Intance is active and open. 
   
 
  
   zabora usercount [SID]       -- Count of users connected to Oracle. 
   
 
  
   zabora activeusercount [SID] -- Count of active users. 
   
 
  
   zabora dbsize [SID]          -- Size of user data (without temp). 
   
 
  
   zabora dbfilesize [SID]      -- Size of all datafiles. 
   
 
  
   zabora version [SID]         -- Oracle version (Banner). 
   
 
  
   zabora dsksortratio [SID]    -- Disk sorts ratio. 
   
 
  
   zabora rcachehit [SID]       -- Read Cache hit ratio. 
   
 
  
   zabora uptime [SID]          -- Instance Uptime (seconds). 
   
 
  
   zabora commits [SID]         -- User Commits. 
   
 
  
   zabora rollbacks [SID]       -- User Rollbacks. 
   
 
  
   zabora deadlocks [SID]       -- Deadlocks. 
   
 
  
   zabora redowrites [SID]      -- Redo Writes. 
   
 
  
   zabora tblscans [SID]        -- Table scans (long tables). 
   
 
  
   zabora tblrowsscans [SID]    -- Table scan rows gotten. 
   
 
  
   zabora indexffs [SID]        -- Index fast full scans (full). 
   
 
  
   zabora hparsratio [SID]      -- Hard parse ratio. 
   
 
  
   zabora netsent [SID]         -- Bytes sent via SQL*Net to client. 
   
 
  
   zabora netresv [SID]         -- Bytes received via SQL*Net from client. 
   
 
  
   zabora netroundtrips [SID]   -- SQL*Net roundtrips to/from client. 
   
 
  
   zabora logonscurrent [SID]   -- Logons current. 
   
 
  
   zabora lastarclog [SID]      -- Last archived log sequence. 
   
 
  
   zabora lastapplarclog [SID]  -- Last applied archive log (at standby).Next items requires [timed_statistics = true]. 
   
 
  
   zabora freebufwaits [SID]    -- free buffer waits. 
   
 
  
   zabora bufbusywaits [SID]    -- buffer busy waits. 
   
 
  
   zabora logswcompletion [SID] -- log file switch completion. 
   
 
  
   zabora logfilesync [SID]     -- log file sync. 
   
 
  
   zabora logprllwrite [SID]    -- log file parallel write. 
   
 
  
   zabora enqueue [SID]         -- enqueue waits. 
   
 
  
   zabora dbseqread [SID]       -- db file sequential read waits. 
   
 
  
   zabora dbscattread [SID]     -- db file scattered read. 
   
 
  
   zabora dbsnglwrite [SID]     -- db file single write. 
   
 
  
   zabora dbprllwrite [SID]     -- db file parallel write. 
   
 
  
   zabora directread [SID]      -- direct path read. 
   
 
  
   zabora directwrite [SID]     -- direct path write. 
   
 
  
   zabora latchfree [SID]       -- latch free. 
   
 
  
   zabora zaboraver             -- Version of this script. 
   
 
  
保存配置,重启agentd
 
  
 
   
 
 
  
2、     
   在zabbix web页面上创建对应的items和triggers
 
  
创建监控oracle数据库状态的item,item key不要select,直接在key栏输入在agent上的UserParameter name
 
  
例如监控数据库状态的:oracle.checkactive
 
  
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />



zabbix 数据库导出的数据乱码 zabbix生成报表导出_oracle

 

创建trigger,选择之前创建的item,最后一次采集值不为0,即为状态有问题。


(注:不确定每个zabora方法的返回值时,可直接在agent上运行获取结果)


zabbix 数据库导出的数据乱码 zabbix生成报表导出_oracle_02




二、             添加SNMP 监控


 


三、             添加通用协议监控


 


四、             添加自定义监控


对于zabbix功能上无法实现的监控,我们可以通过自己编写程序或脚本来辅助完成,并将脚本的结果通过agent递交给zabbix server统一管理,一样可以绘制graph 报表等。


具体的方法请参考上述oracle监控。


UserParameters的定义方法,请参考:


http://www.zabbix.com/documentation/1.8/manual/config/user_parameters


 


五、             添加 Templates


如果有大量的同一类设备,需要监控的信息也大致类似,一个个去修改相关参数比较麻烦,我们可以通过创建一个template来简化操作。


Configuration->Host Groups->Template->Create Template


zabbix 数据库导出的数据乱码 zabbix生成报表导出_自定义_03




创建template后,在configuration->host->template下找到刚创建的MyLinuxTemplate,修改相关的items、triggers、graphs等信息,使满足要求后link到相关的host即可。


六、             添加Log File


 


七、             定制报表



八、             添加Macros


Macros指宏变量,定义的宏变量可以在trigger、actions等多种场景中引用。


Macros分系统自带全局宏的及自定义的宏。


系统自带的全局macros列表及解释参考:


http://www.zabbix.com/documentation/1.8/manual/config/macros


引用macros的例子可参考上述action中添加{{Hostname}:{trigger.key}.last(0)}的例子。


Zabbix还支持自定义macros,在添加host或是template时,我们可以在macros项中定义好后续要用到的宏变量,格式为:


{macroname}=macrovalue


自定义的宏变量及系统自带的宏变量都可以在zabbix场景中引用,zabbix在遇到引用的宏变量时,会先查找当前场景中定义的宏,接着查找当前host的自定义宏,接着查找link的template的宏,最后查找zabbix系统自带的全局宏。所以在自定义宏时注意宏引用的顺序。


九、             添加自动发现设备



十、             添加Inventory


Inventory 用来管理设备存档信息的。


在添加host时,勾选右侧的Use profile,我们即可填入该台设备的型号、编码、MAC地址等详细信息,勾选Use extended profile则可以填入更详细的信息。




填写的inventory信息在inventory->hosts下能看到.


zabbix 数据库导出的数据乱码 zabbix生成报表导出_XML_04


 


十一、      Export/Import XML


Zabbix提供将所有配置导出为标准XML格式的文件,同样,也支持导入标准格式的XML配置文件。


通过configuration->Export/Import->Export,勾选要导出的host,Preview可以展示要导出的host的详细配置,选择export即可导出xml文件到本地。


zabbix 数据库导出的数据乱码 zabbix生成报表导出_zabbix 数据库导出的数据乱码_05




Import可导入本地的XML文件,注意格式一定要符合标准要求,如果server上有同名的配置,会被覆盖掉。


如果有大量的配置需要手动新增,譬如新增oralce监控,我们可以手动编写xml,一次导入所有的items和triggers,但要注意格式,可自己导出一个配置后参考。https://blog.51cto.com/zjdick/277992