Please enter search query.
Search <book_title>...
InfoScale™ 9.0 Cluster Server Agent Developer's Guide - AIX, Linux, Solaris, Windows
Last Published:
2025-04-13
Product(s):
InfoScale & Storage Foundation (9.0)
Platform: AIX,Linux,Solaris,Windows
- Introduction
- Agent entry point overview
- About agent entry points
- Agent entry points described
- About the action entry point
- About the info entry point
- Considerations for using C++ or script entry points
- About the agent information file
- About the ArgList and ArgListValues attributes
- Creating entry points in C++
- About creating entry points in C++
- Syntax for C++ entry points
- Agent framework primitives
- Agent Framework primitives for container support
- Creating entry points in scripts
- About creating entry points in scripts
- Syntax for script entry points
- Agent framework primitives
- VCSAG_GET_ATTR_VALUE
- Agent Framework primitives with container support
- Example script entry points
- Logging agent messages
- Building a custom agent
- Building a script based IMF-aware custom agent
- Creating XML file required for AMF plugins to do resource registration for online and offline state monitoring
- Testing agents
- Static type attributes
- About static attributes
- Static type attribute definitions
- AdvDbg
- ArgList
- State transition diagram
- Internationalized messages
- Troubleshooting VCS resource's unexpected behavior using First Failure Data Capture (FFDC)
- Appendix A. Using pre-5.0 VCS agents
VCSAgRegister
void VCSAgRegister(const char *notify_res_name, const char *res_name, const char *attr_name);
This primitive requests that the agent framework notify the resource notify_res_name when the value of the attribute attr_name of the resource res_name is modified. The notification is made by calling the attr_changed entry point for notify_res_name.
Note that notify_res_name can be the same as res_name.
This primitive can be called from any entry point, but it is useful only when the attr_changed entry point is implemented. For example:
#include "VCSAgApi.h" ... void res_open(const char *res_name, void **attr_val) { // Register to get notified when the // "CriticalAttr" of this resource is modified. VCSAgRegister(res_name, res_name, "CriticalAttr"); // Register to get notified when the "CriticalAttr" // of current resource is modified. It is assumed // that the name of the current resource is given // as the first ArgList attribute. VCSAgRegister((const char *) attr_val[0], (const char *) attr_val[0], "CriticalAttr"); // Register to get notified when the // "CriticalAttr" of "CentralRes" is modified. VCSAgRegister(res_name, "CentralRes", "CriticalAttr"); // Register to get notified when the // "CriticalAttr" of another resource is modified. // It is assumed that the name of the other resource // is given as the first ArgList attribute. VCSAgRegister(res_name, (const char *)attr_val[0], "CriticalAttr"); }