天天看點

zabbix監控AIX DB2資料庫

記一次工作中使用zabbix監控aix db2資料庫的經曆。

記憶要點:

  1.使用自定義perl腳本;

  2.由于zabbix使用者權限的原因,無法調用db2使用者擷取資料庫的資料,是以在zabbix配置檔案中設定已root使用者啟動

  1. 首先,建立腳本,我這裡的名稱為db2stat.pl,腳本權限為755,確定有可執行權限
#!/usr/bin/perl -wT

use File::Spec;

# Set this to path of db2 executable
$ENV{'PATH'} = "/opt/IBM/db2/V9.7/bin";  #db2可執行檔案的路徑
$dbuser = 'db2inst';              #定義db2資料庫的使用者 
# Directory where snapshots are cached.
my $SNAPSHOT_DIR = File::Spec->tmpdir();

# Get database name and timeout args
my $timeout = shift @ARGV;
my $dbname = shift @ARGV;

# Untaint
if ($dbname =~ /^([-\w.]+)$/) {
  $dbname = $1;
} else {
  die "Bad dbname argument";
}

if ($timeout =~ /^(\d+)$/) {
  $timeout = $1;
} else {
  die "Bad timeout value";
}

# Generate stat file name
my $statfile = "$SNAPSHOT_DIR/$dbname.txt";
my $tmpstatfile = "$SNAPSHOT_DIR/$dbname.txt.tmp";

# Regenerate stats if file too old
if (! -f $statfile or (time - (stat($statfile))[10]) > $timeout) {
  # first touch file to prevent another perform in next moment
  system("/usr/bin/touch $statfile");
  system("/usr/bin/su - $dbuser -c 'db2 update monitor switches using bufferpool ON lock ON sort ON statement ON table ON uow ON' >/dev/null 2>$1"); # 開啟db2快照開關
  #then generate tmp data
  system("/usr/bin/su - $dbuser -c 'db2 get snapshot for database on $dbname' >$tmpstatfile"); # 将擷取的快照資料儲存到本地
  #finally swap files
  system("/usr/bin/cp -p $tmpstatfile $statfile");
}

# Generate regular expressions to match from args
while (@ARGV) {
  my $key = shift(@ARGV);
  my $value = shift(@ARGV);
  if (defined $value) {
    # Add preceding line match
    push(@RE, qr/\s*\Q$key\E\s*=\s*\Q$value\E\s*/);
  } else {
    # Add stat line match
    push(@RE, qr/\s*\Q$key\E\s*=\s*(.+)\s*/);
  }
}

# Try to find value with preceding line matches and stat line match
my $idx = 0;
open(DATA, "<$statfile");

while (<DATA>) {

  my $line = $_;
  if ($line =~ $RE[$idx]) {
    my $match = $1;
    # Return the match if all expressions have been matched
    $idx++;
    if ($idx == scalar @RE) {
      print "$match\n";
      exit 0;
    }
  }

  # Reset matches if empty line
  if ($line eq "") {
    $idx = 0;
  }
}      

   2.然後根據快照中的資料按照zabbix的格式定義鍵值,資料格式,以下面為例 

# User parameters for DB2 snapshot statistics

# Simple statistics
UserParameter=db2stat.database_status[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Database status"
UserParameter=db2stat.apps_connected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Applications connected currently"
UserParameter=db2stat.apps_executing[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Appls. executing in db manager currently"
UserParameter=db2stat.locks_held[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Locks held currently"
UserParameter=db2stat.deadlocks_detected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Deadlocks detected"
UserParameter=db2stat.lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock escalations"
UserParameter=db2stat.excl_lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Exclusive lock escalations"
UserParameter=db2stat.agts_waiting_on_locks[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Agents currently waiting on locks"
UserParameter=db2stat.lock_timeouts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock Timeouts"
UserParameter=db2stat.log_space_used[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Log space used by the database (Bytes)"
UserParameter=db2stat.package_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache inserts"
UserParameter=db2stat.package_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache overflows"
UserParameter=db2stat.catalog_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache inserts"
UserParameter=db2stat.catalog_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache overflows"
UserParameter=db2stat.commit_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Commit statements attempted"
UserParameter=db2stat.rollback_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rollback statements attempted"
UserParameter=db2stat.dynamic_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Dynamic statements attempted"
UserParameter=db2stat.static_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Static statements attempted"
UserParameter=db2stat.failed_statement_operations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Failed statement operations"
UserParameter=db2stat.select_sql_statements_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Select SQL statements executed"
UserParameter=db2stat.xquery_statements_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Xquery statements executed"
UserParameter=db2stat.updates_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Update/Insert/Delete statements executed"
"db2stat.conf" 56 lines, 5523 characters
# User parameters for DB2 snapshot statistics

# Simple statistics
UserParameter=db2stat.database_status[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Database status"
UserParameter=db2stat.apps_connected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Applications connected currently"
UserParameter=db2stat.apps_executing[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Appls. executing in db manager currently"
UserParameter=db2stat.locks_held[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Locks held currently"
UserParameter=db2stat.deadlocks_detected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Deadlocks detected"
UserParameter=db2stat.lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock escalations"
UserParameter=db2stat.excl_lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Exclusive lock escalations"
UserParameter=db2stat.agts_waiting_on_locks[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Agents currently waiting on locks"
UserParameter=db2stat.lock_timeouts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock Timeouts"
UserParameter=db2stat.log_space_used[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Log space used by the database (Bytes)"
UserParameter=db2stat.package_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache inserts"
UserParameter=db2stat.package_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache overflows"
UserParameter=db2stat.catalog_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache inserts"
UserParameter=db2stat.catalog_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache overflows"
UserParameter=db2stat.commit_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Commit statements attempted"
UserParameter=db2stat.rollback_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rollback statements attempted"
UserParameter=db2stat.dynamic_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Dynamic statements attempted"
UserParameter=db2stat.static_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Static statements attempted"
UserParameter=db2stat.failed_statement_operations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Failed statement operations"
# User parameters for DB2 snapshot statistics

# Simple statistics
UserParameter=db2stat.database_status[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Database status"
UserParameter=db2stat.apps_connected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Applications connected currently"
UserParameter=db2stat.apps_executing[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Appls. executing in db manager currently"
UserParameter=db2stat.locks_held[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Locks held currently"
UserParameter=db2stat.deadlocks_detected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Deadlocks detected"
UserParameter=db2stat.lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock escalations"
UserParameter=db2stat.excl_lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Exclusive lock escalations"
UserParameter=db2stat.agts_waiting_on_locks[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Agents currently waiting on locks"
UserParameter=db2stat.lock_timeouts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock Timeouts"
UserParameter=db2stat.log_space_used[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Log space used by the database (Bytes)"
UserParameter=db2stat.package_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache inserts"
UserParameter=db2stat.package_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache overflows"
UserParameter=db2stat.catalog_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache inserts"
UserParameter=db2stat.catalog_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache overflows"
UserParameter=db2stat.commit_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Commit statements attempted"
UserParameter=db2stat.rollback_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rollback statements attempted"
UserParameter=db2stat.dynamic_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Dynamic statements attempted"
UserParameter=db2stat.static_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Static statements attempted"
UserParameter=db2stat.failed_statement_operations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Failed statement operations"
UserParameter=db2stat.select_sql_statements_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Select SQL statements executed"
UserParameter=db2stat.xquery_statements_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Xquery statements executed"
UserParameter=db2stat.updates_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Update/Insert/Delete statements executed"
UserParameter=db2stat.rows_deleted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rows deleted"
UserParameter=db2stat.rows_inserted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rows inserted"
UserParameter=db2stat.rows_updated[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rows updated"
UserParameter=db2stat.rows_selected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rows selected"
UserParameter=db2stat.rows_read[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rows read"
UserParameter=db2stat.direct_reads[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Direct reads"
UserParameter=db2stat.direct_writes[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Direct writes"
UserParameter=db2stat.direct_reads_time[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Direct reads elapsed time (ms)"
UserParameter=db2stat.direct_writes_time[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Direct write elapsed time (ms)"
UserParameter=db2stat.log_space_available[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Log space available to the database (Bytes)"
UserParameter=db2stat.lock_wait[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock waits"
UserParameter=db2stat.total_sort[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Total sorts"
UserParameter=db2stat.sort_overfows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Sort overflows"

# File System statistics
UserParameter=db2stat.storage_path_free_space[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Storage path free space (bytes)"
UserParameter=db2stat.file_system_used_space[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "File system used space (bytes)"
UserParameter=db2stat.file_system_total_space[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "File system total space (bytes)"

# Memory heap statistics
UserParameter=db2stat.package_cache_heap_size[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Node number" "$3" "Memory Pool Type" "Package Cache Heap" "Current size (bytes)"
UserParameter=db2stat.catalog_cache_heap_size[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Node number" "$3" "Memory Pool Type" "Catalog Cache Heap" "Current size (bytes)"

# Buffer Poll statistics
UserParameter=db2stat.buffer_pool_data_logical_reads[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Buffer pool data logical reads"
UserParameter=db2stat.buffer_pool_index_logical_reads[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Buffer pool index logical reads"
UserParameter=db2stat.buffer_pool_index_physical_reads[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Buffer pool index physical reads"
UserParameter=db2stat.buffer_pool_data_physical_reads[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Buffer pool data physical reads"      

db2監控樣式

# User parameters for DB2 snapshot statistics

# Simple statistics
UserParameter=db2stat.database_status[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Database status"
UserParameter=db2stat.apps_connected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Applications connected currently"
UserParameter=db2stat.apps_executing[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Appls. executing in db manager currently"
UserParameter=db2stat.locks_held[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Locks held currently"
UserParameter=db2stat.deadlocks_detected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Deadlocks detected"
UserParameter=db2stat.lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock escalations"
UserParameter=db2stat.excl_lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Exclusive lock escalations"
UserParameter=db2stat.agts_waiting_on_locks[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Agents currently waiting on locks"
UserParameter=db2stat.lock_timeouts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock Timeouts"
UserParameter=db2stat.log_space_used[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Log space used by the database (Bytes)"
UserParameter=db2stat.package_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache inserts"
UserParameter=db2stat.package_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache overflows"
UserParameter=db2stat.catalog_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache inserts"
UserParameter=db2stat.catalog_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache overflows"
UserParameter=db2stat.commit_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Commit statements attempted"
UserParameter=db2stat.rollback_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rollback statements attempted"
UserParameter=db2stat.dynamic_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Dynamic statements attempted"
UserParameter=db2stat.static_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Static statements attempted"
UserParameter=db2stat.failed_statement_operations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Failed statement operations"
UserParameter=db2stat.select_sql_statements_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Select SQL statements executed"
UserParameter=db2stat.xquery_statements_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Xquery statements executed"
UserParameter=db2stat.updates_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Update/Insert/Delete statements executed"
"db2stat.conf" 56 lines, 5523 characters
# User parameters for DB2 snapshot statistics

# Simple statistics
UserParameter=db2stat.database_status[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Database status"
UserParameter=db2stat.apps_connected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Applications connected currently"
UserParameter=db2stat.apps_executing[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Appls. executing in db manager currently"
UserParameter=db2stat.locks_held[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Locks held currently"
UserParameter=db2stat.deadlocks_detected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Deadlocks detected"
UserParameter=db2stat.lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock escalations"
UserParameter=db2stat.excl_lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Exclusive lock escalations"
UserParameter=db2stat.agts_waiting_on_locks[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Agents currently waiting on locks"
UserParameter=db2stat.lock_timeouts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock Timeouts"
UserParameter=db2stat.log_space_used[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Log space used by the database (Bytes)"
UserParameter=db2stat.package_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache inserts"
UserParameter=db2stat.package_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache overflows"
UserParameter=db2stat.catalog_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache inserts"
UserParameter=db2stat.catalog_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache overflows"
UserParameter=db2stat.commit_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Commit statements attempted"
UserParameter=db2stat.rollback_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rollback statements attempted"
UserParameter=db2stat.dynamic_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Dynamic statements attempted"
UserParameter=db2stat.static_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Static statements attempted"
UserParameter=db2stat.failed_statement_operations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Failed statement operations"
# User parameters for DB2 snapshot statistics

# Simple statistics
UserParameter=db2stat.database_status[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Database status"
UserParameter=db2stat.apps_connected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Applications connected currently"
UserParameter=db2stat.apps_executing[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Appls. executing in db manager currently"
UserParameter=db2stat.locks_held[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Locks held currently"
UserParameter=db2stat.deadlocks_detected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Deadlocks detected"
UserParameter=db2stat.lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock escalations"
UserParameter=db2stat.excl_lock_escalations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Exclusive lock escalations"
UserParameter=db2stat.agts_waiting_on_locks[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Agents currently waiting on locks"
UserParameter=db2stat.lock_timeouts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock Timeouts"
UserParameter=db2stat.log_space_used[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Log space used by the database (Bytes)"
UserParameter=db2stat.package_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache inserts"
UserParameter=db2stat.package_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Package cache overflows"
UserParameter=db2stat.catalog_cache_inserts[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache inserts"
UserParameter=db2stat.catalog_cache_overflows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Catalog cache overflows"
UserParameter=db2stat.commit_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Commit statements attempted"
UserParameter=db2stat.rollback_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rollback statements attempted"
UserParameter=db2stat.dynamic_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Dynamic statements attempted"
UserParameter=db2stat.static_statements_attempted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Static statements attempted"
UserParameter=db2stat.failed_statement_operations[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Failed statement operations"
UserParameter=db2stat.select_sql_statements_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Select SQL statements executed"
UserParameter=db2stat.xquery_statements_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Xquery statements executed"
UserParameter=db2stat.updates_executed[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Update/Insert/Delete statements executed"
UserParameter=db2stat.rows_deleted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rows deleted"
UserParameter=db2stat.rows_inserted[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rows inserted"
UserParameter=db2stat.rows_updated[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rows updated"
UserParameter=db2stat.rows_selected[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rows selected"
UserParameter=db2stat.rows_read[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Rows read"
UserParameter=db2stat.direct_reads[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Direct reads"
UserParameter=db2stat.direct_writes[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Direct writes"
UserParameter=db2stat.direct_reads_time[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Direct reads elapsed time (ms)"
UserParameter=db2stat.direct_writes_time[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Direct write elapsed time (ms)"
UserParameter=db2stat.log_space_available[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Log space available to the database (Bytes)"
UserParameter=db2stat.lock_wait[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Lock waits"
UserParameter=db2stat.total_sort[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Total sorts"
UserParameter=db2stat.sort_overfows[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Sort overflows"

# File System statistics
UserParameter=db2stat.storage_path_free_space[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Storage path free space (bytes)"
UserParameter=db2stat.file_system_used_space[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "File system used space (bytes)"
UserParameter=db2stat.file_system_total_space[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "File system total space (bytes)"

# Memory heap statistics
UserParameter=db2stat.package_cache_heap_size[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Node number" "$3" "Memory Pool Type" "Package Cache Heap" "Current size (bytes)"
UserParameter=db2stat.catalog_cache_heap_size[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Node number" "$3" "Memory Pool Type" "Catalog Cache Heap" "Current size (bytes)"

# Buffer Poll statistics
UserParameter=db2stat.buffer_pool_data_logical_reads[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Buffer pool data logical reads"
UserParameter=db2stat.buffer_pool_index_logical_reads[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Buffer pool index logical reads"
UserParameter=db2stat.buffer_pool_index_physical_reads[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Buffer pool index physical reads"
UserParameter=db2stat.buffer_pool_data_physical_reads[*],/usr/local/zabbix/scripts/db2stat.pl "$1" "$2" "Buffer pool data physical reads"      

  3.在zabbix web端添加監控項,由于工作環境加密的原因,無法添加圖檔,以下面鍵值為例

  db2stat.rows_updated[{$REFRESH_INTERVAL},{$DATABASE_NAME}]

  在主機宏中添加對應的資料庫的名字,指定資料的重新整理間隔時間,

  等待幾分鐘,檢視有無監控資料

  

  如果有不對的地方,請幫忙指點一下

 

轉載于:https://www.cnblogs.com/czmd/p/10278193.html