mkresponse 命令

用途

创建新的响应定义。

语法

要创建无操作的响应:

mkresponse [ -b ] [-p node_name] [-h] [-TV] 响应

要创建有一个操作的响应:

mkresponse-n action[-d days_of_week[,days_of_week... ] ] [ -t time_of_day[time_of_day...] ] -s action_script [ - 返回码 ] [ -b | [ -e a | A. | B | E | R ] ] [ -o ] [ -E 环境变量=[,环境变量=... ] ] [] [ -p 节点名 ] [-] [-电视] 响应

要复制一个响应:

mkresponse -c 现有响应 [:节点名 ] [-p 节点名称 ] [-h][-TV] 响应

描述

mkresponse 命令使用 response 参数指定的名称创建新的响应定义。 当定义了该响应,也可以指定一个操作。 操作定义了当响应使用的条件满足时运行该命令。 操作定义了当使用该操作时的每周几天、每周这些天当天时间、要运行的脚本或命令、哪种时间类型导致命令运行、脚本或命令的预期返回码和是否保持标准输出。 天和时间是成对的以便可以为不同的天指定不同的时间。 没有操作的响应仅记录事件。

使用 -b 标志来指定响应以及要在此响应中定义的所有操作都支持事件批处理。 对于事件批处理,多个事件可以一起进行批处理或分组并传递至响应。 响应的操作会定向至包含批处理事件的详细信息的文件。 支持事件批处理的响应只能用于那些指定要进行批处理的事件的条件。 -b 标志不能与 -e 标志一起指定。

在集群环境中,使用 -p 标志指定域中要包含响应定义的节点。 如果您在管理服务器上使用 mkresponse ,并且希望在管理服务器上定义响应,请 不要 指定 -p 标志。 如果未指定 -p 标志,那么将在本地节点上定义响应。

使用 chresponse 命令将操作添加至响应或将操作从响应中除去。 使用 startcondresp 命令来启动监视。 如果条件未链接,startcondresp 命令将响应链接到条件。

要锁定响应以使其无法修改或除去,请使用带有 -L 标志的 chresponse 命令。

标志

-b
指定响应以及要在此响应中定义的所有操作都支持事件批处理。 对于事件批处理,多个事件可以一起进行批处理或分组并传递至响应。 响应的操作会定向至包含批处理事件的详细信息的文件。 支持事件批处理的响应只能用于那些指定要进行批处理的事件的条件。

可以在不使用操作脚本的情况下为批处理事件条件创建事件响应。

-b 标志不能与 -e 标志一起指定。

-c 现有响应[:节点名]
复制一个现有的响应。 不复制与条件链接的响应。 现有的响应定义在集群中称为 node_name 的节点上。 如果未指定 node_name,那么使用本地节点。 node_name 是由 CT_MANAGEMENT_SCOPE 环境变量所确定的作用域内的节点。 如果指定了任何其他的标志,那么请按标志的指示来更新新的响应。
--d 每周天数

指定在每周的哪些天可以运行定义的操作。 当操作能运行时,days_of_weektime_of_day 共同定义间隔。

输入以加号 (+) 分隔的天数或以连字符 (-) 分隔的天数范围。 可以指定多个 days_of_week 参数,但这些参数必须以逗号 (,) 分隔。 指定的 days_of_week 参数的数目必须与指定的 time_of_day 参数的数目相匹配。 缺省为所有天。 如果不指定值而输入一个逗号,使用缺省值。 每天的值如下:
1
星期日
2
星期一
3
星期二
4
星期三
5
星期四
6
星期五
7
星期六
-e a | A | b | e | r
指定使正定义的操作运行的事件的类型:
a
指定事件。 这是缺省情况。
A
指定任何类型的事件(事件、错误事件或重整事件)。
b
指定事件和重整事件。
e
指定错误事件。
r
指定重整事件。
可以指定多种事件类型,例如:-e ae-e 标志不能与 -b 标志一起指定。
-E env_var=价值[,env_var=价值...]
指定运行操作前设置所有环境变量。 如果指定了多个 env_var=value 变量,那么这些变量必须以逗号分隔。
--n 行动
指定正在定义的操作的名称。 当已创建了响应,仅能定义一个操作。 使用 chresponse 命令向响应添加更多操作。
-o
将标准输出从 action_script 指向审计日志。 缺省为不保留标准输出。 总是将标准错误指向审计日志。
--p 节点名称
指定响应定义所在节点的名称。 它在集群环境中使用并且节点名是域中识别该节点的名称。 缺省 node_name 是运行该命令的本地节点。 node_name 是由 CT_MANAGEMENT_SCOPE 环境变量所确定的作用域内的节点。

如果您正在管理服务器上使用 mkresponse ,并且希望在管理服务器上定义响应,请 不要 指定 -p 标志。

--r 返回代码
指定 action_script 的预期返回值。 如果指定了预期返回值,将 action_script 的实际返回码与预期返回码相比较。 向审计日志中写入一条消息,该审计日志表示它们是否匹配。 如果未指定 -r 标志,那么会将实际返回码写入审计日志,并且不会执行比较。
--s action_script
指定脚本或命令的全限定路径,该脚本或命令用来运行正定义的操作。 请参阅 logevent notifyeventwallevent 命令,以获取应用程序随附的预定义响应脚本的描述。
--t 一天的时间
指定运行操作的时间范围,组成为启动时间后紧跟结束时间,用连字符分开。 当操作能运行时,days_of_weektime_of_day 共同定义间隔。

时间为 24- 小时制(HHMM),其中头两位 表示小时,后两位表示分钟。 由于时间由星期几指定,因此启动时间必须小于结束时间、 可以指定多个 time_of_day 参数,但这些参数必须以逗号 (,) 分隔。 指定的 days_of_week 参数的数目必须与指定的 time_of_day 参数的数目相匹配。 缺省值为0000-2400。 如果不指定值而输入一个逗号,使用缺省值。

-u
指定当受监控的资源成为未定义时运行该操作。
-h
将命令的用法语句写到标准输出。
-T
将命令的跟踪消息写到标准错误。 仅供您的软件服务组织使用。
-V
将命令的详细消息写到标准输出。

参数

响应
响应名为一个标识该响应的字符串。 如果名称中包含空格,那么必须用引号将其括起。 名称不能全部由空格组成,不能为空或包含嵌入式的双引号。

安全性

用户需要 IBM.EventResponse 资源类的写许可权才能运行 mkresponse。 许可权在联系系统的访问控制表 (ACL) 文件中指定。 有关 ACL 文件以及如何修改该文件的详细信息,请参阅 管理 RSCT 指南。

退出状态

0
命令成功运行。
1
RMC 发生错误。
2
命令行界面脚本发生错误。
3
命令行中输入错误标志。
4
命令行中输入错误参数。
5
不正确的命令行输入导致出错。

环境变量

CT_CONTACT
确定与资源监视和控制 (RMC) 守护程序发生会话的系统。 当 CT_CONTACT 设置为主机名或 IP 地址时,该命令会与指定主机上的 RMC 守护程序联系。 如果未设置 CT_CONTACT,那么该命令会与运行它的本地系统的 RMC 守护程序联系。 RMC 守护程序会话的目标和管理作用域确定了处理的资源类或资源。
CT_IP_AUTHENT
如果存在 CT_IP_AUTHENT 环境变量,那么 RMC 守护程序将使用基于 IP 的网络认证,与 CT_CONTACT 环境变量中的 IP 地址所指定系统上的 RMC 守护程序联系。 仅当 CT_CONTACT 设为 IP 地址时,CT_IP_AUTHENT 才有意义;它不依赖于域名系统(DNS)服务。
CT_MANAGEMENT_SCOPE
确定处理事件响应资源管理器(ERRM)的资源时用于与 RMC 守护程序的会话的管理作用域。 管理作用域确定可以处理资源的可能目标节点集。 有效值为:
0
指定本地作用域。
1
指定本地作用域。
2
指定对等域作用域。
3
指定管理域作用域。

如果此环境变量设置,那么使用本地作用域。

实现细节

该命令是AIX®Reliable Scalable Cluster Technology(RSCT)文件集的一部分。

标准输出

当指定 -h 标志时,此命令的用法语句将写入标准输出。 所有详细消息都写到标准输出。

标准错误

所有跟踪消息都写到标准错误。

示例

这些示例适用于单机系统:
  1. 要定义一个名为“Log event in audit log”的响应,运行该 命令:
    mkresponse "Log event in audit log"
  2. 要定义一个名为“E-mail root anytime”的响应,它有一个名为“E-mail root”的操作,它将在星期六和星期日的任何时候使用,并且对事件和重整事件两者使用命令 /opt/rsct/bin/notifyevent root,请运行以下命令:
     mkresponse -n "E-mail root" -d 1+7  \                          
    -s "/opt/rsct/bin/notifyevent root" -e b   \          
    "E-mail root anytime"
  3. 要定义一个名为“E-mail root anytime”的响应,它有一个名为“E-mail root”的操作,它将在星期六和星期日的任何时候但仅在星期一至星期五的上午 8 点到下午 5 点使用,并且对事件使用命令 /opt/rsct/bin/notifyevent root,请运行以下命令:
    mkresponse -n "E-mail root"     \                              
    -d 1+7,2-6  -t 0000-2400,0800-1700  \                          
    -s "/opt/rsct/bin/notifyevent root" -e a  \           
    "E-mail root anytime"
  4. 要定义一个名为“E-mail root anytime”的响应,它有一个名为“E-mail root”的操作,它将在星期六和星期日的任何时候使用,并且对事件和重整事件两者使用命令 /opt/rsct/bin/notifyevent root,并将环境变量 LANG 设置成 en_US,请运行以下命令:
    mkresponse -n "E-mail root" -d 1+7  \           
    -s "/opt/rsct/bin/notifyevent root" -e b \        
    -E LANG="en_US"  "E-mail root anytime"
  5. 要定义一个名为“E-mail root first shift”的响应, 它有一个名为“E-mail root”的操作,在星期一到星期五的 8 am 到 6 pm 使用该响应,对重整事件使用 /opt/rsct/bin/notifyevent root 命令,将标准输出存储在审计日志中,并预期返回码为5,请运行以下命令:
    mkresponse -n "E-mail root" -d 2-6  -t 0800-1800  \           
    -s "/opt/rsct/bin/notifyevent root" -e r  -o   \        
    -r 5  "E-mail root first shift"
  6. 要定义一个名为“Critical notifications”的响应,作为“Warning notifications”的副本,请输入:
    mkresponse -c "Warning notifications" "Critical notifications"
  7. 要在不使用操作脚本的情况下定义名为“Batched Event Response”的支持批处理的响应,请输入:
    mkresponse -b "Batched Event Response"
这些示例适用于管理域:
  1. 要在管理服务器上定义一个名为“E-mail root anytime”的响应,它有一个名为“E-mail root”的操作,它将在星期六和星期日的任何时候使用,并且对事件和重整事件两者使用命令 /opt/rsct/bin/notifyevent root,请在管理服务器上运行以下命令:
     mkresponse -n "E-mail root" -d 1+7  \                          
    -s "/opt/rsct/bin/notifyevent root" -e b   \          
    "E-mail root anytime"
  2. 要在受管节点 nodeB 上定义名为 "E-mail root anytime" 的响应,该响应具有名为 "E-mail root" 的操作,将在任何时间星期六和星期日使用,并对事件和重整事件使用命令 /opt/rsct/bin/notifyevent root ,请在管理服务器上运行以下命令:
     mkresponse -n "E-mail root" -d 1+7  \                          
    -s "/opt/rsct/bin/notifyevent root" -e b   \          
    -p nodeB "E-mail root anytime"
  3. 要在受管节点 "nodeB上定义名称为"nodeB警告通知 "的响应,作为受管节点 "nodeA"上 ""nodeA警告通知 "的副本,请在管理服务器上运行此命令:
    mkresponse -c "nodeA Warning notifications":nodeA \
    -p nodeB "nodeB Warning notifications"  
这些示例适用于对等域:
  1. 要在当前节点上定义一个名为“E-mail root anytime”的响应(它有一个名为“E-mail root”的操作,它将在星期六和星期日的任何时候使用,并且对事件和重整事件两者使用命令 /opt/rsct/bin/notifyevent root),请从域中的任何节点运行以下命令:
     
    mkresponse -n "E-mail root" -d 1+7  \                          
    -s "/opt/rsct/bin/notifyevent root" -e b   \          
    "E-mail root anytime"
  2. 要在域中名为 "E-mail root anytime" 的节点 nodeB 上定义一个响应,该节点具有名为 "E-mail root" 的操作,该操作将在星期六和星期日的任何时候使用,该命令对事件和重整事件使用 /opt/rsct/bin/notifyevent root 命令,并设置两个环境变量 (PAGE ALL 和 TIMER SET) ,请从域中的任何节点运行此命令:
     mkresponse -n "E-mail root" -d 1+7  \                          
    -s "/opt/rsct/bin/notifyevent root" -e b   \          
    -p nodeB -E 'ENV1="PAGE ALL", ENV2="TIMER SET"' \  
    "E-mail root anytime"
  3. 要将域中节点 "nodeB上名称为"nodeB警告通知 "的响应定义为域中节点 "nodeA上 ""nodeA警告通知 "的副本,请从域中任意节点运行此命令:
    mkresponse -c "nodeA Warning notifications":nodeA \
    -p nodeB "nodeB Warning notifications"  

位置

/opt/rsct/bin/mkresponse