Database Monitoring with BusyBee Agenda What is BusyBee ? Architecture XML Configuration File ...
-
Upload
juniper-lawson -
Category
Documents
-
view
219 -
download
0
Transcript of Database Monitoring with BusyBee Agenda What is BusyBee ? Architecture XML Configuration File ...
Database Monitoring with BusyBee
Agenda What is BusyBee ?
Architecture
XML Configuration File
Domain Inspectors
Alert Examples
Interface to SystemManagement Platform
OS-/ Databaseserver-Support
Future Plans
BusyBee Links
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 1
What is BusyBee ?
Free of charge Database Monitoring Solution for IBM Informix Dynamic Server and IBM DB2 UDB
Multi-Process-Architecture where each subprocess inspects an individual Database Domain
Easy customization of individual thresholds and time intervals thru an XML configuration file
Early Warning System with 4 escalation levels (Warning, Minor, Critical and Fatal)
Simple integration with existing System Management Platforms thru a userexit mechanism
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 2
Architecture I
BbWatch is the daemon process which runs in the background
According to the XML configuration file BbWatch forks several independent Domain Inspectors
Each Domain Inspector is fully configurable:
Wakeup Interval Threshold Values (Warning, Minor, Critical, Fatal) Include/Exclude Search Patterns External script which should be triggered (userexit)
Signal Handling implemented to re-start (SIGHUP) or shutdown (SIGTERM) these Domain Inspectors
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 3
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.de
Architecture II (BbWatch Daemon)
BbWatchMaster Daemon
<InstallDir>/BusyBee/etc/BbWatchIfxCfg.<instance>.xml
Domain InspectorInspectorDbmStatusCheck
Fork individual Domain Inspectors. Each Inspector observes an individual Database Resource.
Domain InspectorInspectorDbspaceFullCheck
Domain InspectorInspectorOnlineLogCheck
Domain InspectorOther
Parse the XML configuration file.
IDS Utility(onstat)
Observe the IDS Message Logfile
FileParsing(online.log)
Check Databaserver Availability
SQL-Query(DB
sysmaster)
Check filling degree of Dbspaces
Slide 4
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.de
Architecture III (Domain Inspector)
Domain InspectorInspectorDbspaceFullCheck
<Domain Name='DbspaceFullCheck'> <Enabled>1</Enabled> <Interval>10m</Interval> <Group> <Include>%</Include> <Exclude></Exclude> <Warning>60</Warning> <Minor>70</Minor> <Critical>80</Critical> <Fatal>90</Fatal> <ExecuteScript>/bin/alert.ksh</ExecuteScript> </Group></Domain>
<InstallDir>/BusyBee/etc/BbWatchIfxCfg.<instance>.xml
SQL-Query(DB
sysmaster)
Write status information to logfileCheck filling degree of Dbspaces <InstallDir>/BusyBee/log/BbWatch.<dbserver>.log
/bin/alert.sh
Trigger external script if anyone of the configured thresholds is exceeded.Arguments delivered to external script:
(1) Instance Name(2) Domain Name(3) Severity (Warning,
Minor, ...)(4) Messagetext
Get configuration information from XML config file
Slide 5
XML Configuration File I
An individual XML Configuration File has to be created for each
IBM IDS or DB2 UDB instance:
<InstallDir>/BusyBee/etc/BbWatchIfxCfg.<instance>.xml <InstallDir>/BusyBee/etc/BbWatchUdbCfg.<instance>.xml
Each Domain Inspector has a separate section inside this XML
ConfigFile which contains individual settings:
Domain Inspector Enabled/Disabled Time Interval (can be specified in sec, min, hours, days) Threshhold Values (Warning, Minor, Critical, Fatal) External Script to be triggered (Examples included) Individual settings depending on the Domain Inspector
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 6
XML Configuration File II
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.de
<<!-- Filling Degree of individual Dbspaces (Percent) --><Domain Name='DbspaceFullCheck'> <Enabled>1</Enabled> <Interval>10m</Interval> <Group> <Include>%</Include> <Exclude></Exclude> <Warning>60</Warning> <Minor>70</Minor> <Critical>80</Critical> <Fatal>90</Fatal> <ExecuteScript>/bin/alert.ksh</ExecuteScript> </Group></Domain>
<!-- Duration of individual Checkpoints (s=sec, m=min) --><Domain Name='CheckPointCheck'> <Enabled>1</Enabled> <Interval>10m</Interval> <ExecuteScript>/bin/sendMail.ksh</ExecuteScript> <Warning>3s</Warning> <Minor>5s</Minor> <Critical>10s</Critical> <Fatal>20s</Fatal></Domain>
Slide 7
Domain Inspectors for IBM IDS I
For the IBM Informx Dynamic Server the following Domain Inspectors
are currently implemented: DbmStatusCheck (Is the Instance available) ? LongTxCheck (Is there a long transaction ongoing ?) ConnectCheck (Check Connection to databaseserver) DbspaceFullCheck (Check filling degree of dbspaces) CheckpointCheck (Check the duration of checkpoints) OnlineLogCheck (Parse the 'online.log' for configured patterns) LogFullCheck (Are the logical logs filled ?) MaxExtentCheck (Check number of extents per table/fragment) MaxPageCheck (Check the number of allocated pages) SessionLockCheck (Check number of locks per db session)
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 8
Domain Inspectors for IBM IDS II
VirtualSegmentCheck (Check number of alloc. virt. SHM segm.) DbspaceDownCheck (Is any Dbspace in 'down' state ?) ChunkDownCheck (Is any Chunk in 'down' state ?) SessionMemoryCheck (Check allocated memory per db session) ForegroundWriteCheck (Check number of foreground writes) DeadLockCheck (Check number of deadlocks occured) ReadCacheCheck (Check the current read cache rate) WriteCacheCheck (Check the current write cache rate) SequentialScanCheck (Check for sequential scans on tables) ReadyQueueCheck (Check the utilization of the ready queue)
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 9
Domain Inspectors for IBM DB2 UDB
Available in Q3/2003
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 10
Alert Examples
Here is an short excerpt of the BusyBee Logfile:
2003-04-26 15:54:57 iif930 INFO BBWHIFX004
Inspecting Domain [DbmStatusCheck]
2003-04-26 15:55:30 iif930 MINOR BBWHIFX008
Domain [VirtualSegmentCheck], Number of allocated Virtual SHM
Segments is [4]
2003-04-26 15:55:30 iif930 WARNING BBWHIFX025 Domain [WriteCacheCheck],
Current Write Cache Rate is: [80.60] %
2003-04-26 15:55:31 iif930 MINOR BBWHIFX006
Domain [DbspaceFullCheck], Dbspace [idxdbs] is [79]% full
2003-04-26 15:55:31 iif930 CRITICAL BBWHIFX006
Domain [DbspaceFullCheck], Dbspace [datadbs] is [82] % full
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 11
SystemManagement Interface
BusyBee could be easily integrated with existing SystemManagement
Platforms like CA Unicenter, IBM Tivoli, HP/OpenView or BigBrother
thru the 'userexit' mechanism, for example: <ExternalScript>/usr/bin/sendOpenView.ksh</ExternalScript>
This entry in the XML ConfigFile instructs BusyBee to call the script
/usr/bin/sendOpenView.ksh as soon as anyone of the configured
thresholds has been exceeded. Arguments to sendOpenView.ksh are: Domain Name (like 'DbspaceFullCheck' or 'CheckpointCheck') Severity (Warning, Minor, Critical, Fatal) Instance Name (the name of the Informix or DB2 UDB instance) Messagetext (The full text of the BusyBee message)
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 12
OS-/Databaseserver-Support
BusyBee is available on the all UNIX based platforms where
Python could be ported to. For popular platforms like AIX,
HP/UX, Linux and Solaris there exists binary distributions of
Python.
BusyBee supports the following databaseservers on these
platforms: IBM Informix IDS 7.x IBM Informix IDS 9.x IBM DB2 UDB 7.x (available in Q3/2003) IBM DB2 UDB 8.x (available in Q3/2003)
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 13
Future Plans
For future releases of BusyBee the following enhancements are
planned: Add additional Domain Inspectors for IBM Informix Dynamic
Server and IBM DB2 UDB Support the OpenSource databaseserver MySQL Provide a data collector module (BbPerf) which collects
performance and operational data Provide a web based interface for analyzing the data collected
by BbPerf
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 14
BusyBee Links
The following links might be intesting:
http://www.herber-consulting.de/BusyBee
(BusyBee MainPage containing Documentation, FAQ, Release-History and Download Information)
http://www.python.org
(MainPage of the Python Project) http://www.sunfreeware.com
(Precompiled Python Binaries for the Solaris OS) http://www.bullfreeware.com
(Precompiled Python Binaries for the AIX OS) [email protected]
For additional information feel free to contact me via Email
BusyBee OverviewApril 28, 2003
http://www.herber-consulting.deSlide 15