- 论坛徽章:
- 0
|
################################################################################\r\n# Reponse test for Oracle Listener\r\n#\r\n# Description: Response test for Oracle Listener\r\n#\r\n# Dependendcies:\r\n# ORACLE_SID env var\r\n# ORACLE_HOME env var\r\n################################################################################\r\n$ORACLE_HOME = $ENV{ORACLE_HOME};\r\n$ORACLE_SID = $ENV{ORACLE_SID};\r\n$tnsping = \"$ORACLE_HOME/bin/tnsping\";\r\n\r\n# ensure that the Oracle Env vars are set. If not, post an event message\r\n# but pass the test.\r\nif (! $ORACLE_HOME)\r\n{\r\n $mesg = \"Env var ORACLE_HOME not set. Check the listener\'s process config.\";\r\n &PostError($mesg);\r\n exit 0;\r\n}\r\nif (! $ORACLE_SID)\r\n{\r\n $mesg = \"Env var ORACLE_SID not set. Check the listener\'s process config.\";\r\n &PostError($mesg);\r\n exit 0;\r\n}\r\n\r\n# check to see that tnsping exists. If not, go NO RESPONSE.\r\nif (! (-e $tnsping))\r\n{\r\n $mesg = \"$tnsping not found.\";\r\n &PostError($mesg);\r\n exit 1;\r\n}\r\n\r\n# Run the tnsping test. If the listener isn\'t running the test will cause the \r\n# LCE listener process to transition to the NO RESPONSE state. \r\n$command = \"$tnsping $ORACLE_SID\";\r\nsystem($command);\r\n$ret = $? / 256;\r\nif ($ret != 0)\r\n{\r\n $mesg = \"$tnsping returned an error: $ret\";\r\n &PostError($mesg);\r\n exit($ret);\r\n}\r\n\r\nexit(0);\r\n\r\n################################################################################\r\n#\r\n# SUBROUTINE: PostError()\r\n#\r\n################################################################################\r\n\r\nsub PostError \r\n{\r\n local($errMesg) = @_;\r\n\r\n push(@INC, \"$ENV{FT_DIR}/bin\");\r\n require \"ft.pl\";\r\n\r\n &ft\'PostEvent($FT\'SEV_ERROR,\"Listener Response Test Error: $errMesg\");\r\n\r\n return;\r\n}\r\n\r\n\r\n################################################################################\r\n# Reponse test for Oracle Listener\r\n#\r\n# Description: Response test for Oracle Listener\r\n#\r\n# Dependendcies:\r\n# ORACLE_SID env var\r\n# ORACLE_HOME env var\r\n################################################################################\r\n$ORACLE_HOME = $ENV{ORACLE_HOME};\r\n$ORACLE_SID = $ENV{ORACLE_SID};\r\n$tnsping = \"$ORACLE_HOME/bin/tnsping\";\r\n\r\n# ensure that the Oracle Env vars are set. If not, post an event message\r\n# but pass the test.\r\nif (! $ORACLE_HOME)\r\n{\r\n $mesg = \"Env var ORACLE_HOME not set. Check the listener\'s process config.\";\r\n &PostError($mesg);\r\n exit 0;\r\n}\r\nif (! $ORACLE_SID)\r\n{\r\n $mesg = \"Env var ORACLE_SID not set. Check the listener\'s process config.\";\r\n &PostError($mesg);\r\n exit 0;\r\n}\r\n\r\n# check to see that tnsping exists. If not, go NO RESPONSE.\r\nif (! (-e $tnsping))\r\n{\r\n $mesg = \"$tnsping not found.\";\r\n &PostError($mesg);\r\n exit 1;\r\n}\r\n\r\n# Run the tnsping test. If the listener isn\'t running the test will cause the \r\n# LCE listener process to transition to the NO RESPONSE state. \r\n$command = \"$tnsping $ORACLE_SID\";\r\nsystem($command);\r\n$ret = $? / 256;\r\nif ($ret != 0)\r\n{\r\n $mesg = \"$tnsping returned an error: $ret\";\r\n &PostError($mesg);\r\n exit($ret);\r\n}\r\n\r\nexit(0);\r\n\r\n###################################################\r\n\r\n\r\n标准的 |
|