cc [flags…] –I /usr/cluster/include file –L /usr/cluster/lib –l dsdev#include <rgm/libdsdev.h> scha_err_t scds_initialize(scds_handle_t *handleint argc, char *argv[]);
scds_initialize() 関数は、DSDL 環境を初期化します。個々のプログラムまたは DSDL 関数を使用する障害モニターの開始時に、必ずこの関数を呼び出します。
scds_initialize() 関数は次のとおりです。
フレームワークが呼び出し元プログラムに渡すコマンド行引数 (argc および argv[]) で、scds_initialize() にも渡す必要があるコマンド行引数のチェックと処理。呼び出し元プログラムは、コマンド行引数の処理以外を行う必要はありません。例 を参照してください。
DSDL 内のほかの関数に必要な情報を使って、内部データ構造の初期設定を行います。リソース、リソースタイプ、リソースグループのプロパティー値を取得し、これらのデータ構造に格納します。argv[] 引数を使用してコマンド行で指定するプロパティーの値は、RGM から取得される値より優先されます。つまり、コマンド行引数 (argv[]) で指定したプロパティーの新しい値がデータサービスメソッドに渡されると、この関数が該当するプロパティー値を取得し、この新しい値を返します。それ以外の場合は、RGM から取得した既存の値を返します。
データサービス障害モニタリング情報を初期化します。
ロギング環境を初期化します。すべての syslog メッセージには、次の接頭辞がつきます。SC[<resourceTypeName>,< resourceGroupName>,<resourceName>,< methodName>
syslog にメッセージを送信する関数は、scha_cluster_getlogfacility() から返されるデータを使用します。これらのメッセージは、適切なログファイルとユーザーに転送することができます。詳細は、syslog.conf(4) を参照してください。
障害モニターの検証設定の妥当性を検査します。Retry_interval が Thorough_probe_interval * Retry_count 以上かどうかを確認し、そうでない場合は syslog に適切なメッセージを送信します。Retry_interval が Thorough_probe_interval * Retry_count 以上でない場合は、syslog に適切なメッセージを送信します。この障害モニタープローブ設定の妥当性検査で、VALIDATE メソッド内で scds_initialize() および scds_close() を呼び出すことができます。VALIDATE メソッド内でその他の DSDL 関数を呼び出す必要はありません。
scds_initialize() の実行に成功した場合、呼び出し元プログラムを終了する前に scds_close() を呼び出す必要があります。
scds_initialize() の実行に失敗した場合、クリーンアップを行うために scds_close() を呼び出すことはできません。また、scds_initialize() の実行に失敗した場合、その他の DSDL 関数を呼び出してはいけません。それ以外の場合、SCHA_ERR_INVAL または NULL 値を返します。その代わりに、非ゼロの引数を指定して exit() を呼び出してください。
次のパラメータがサポートされます。
scds_initialize() によって初期化され、その他の DSDL 関数によって使用されるハンドルです。
呼び出し元プログラムに渡される引数の数です。
呼び出し元プログラムに渡される引数配列へのポインタです。
関数の実行に成功。
その他のエラーコードについては、scha_calls(3HA) を参照してください。
int main(int argc, char *argv[]){ scds_handle_t handle; if (scds_initialize(&handle, argc, argv) != SCHA_ERR_NOERR) exit(1); ... /* data service code */ ... scds_close(&handle); }
インクルードファイル
ライブラリ
次の属性については、attributes(5) を参照してください。
|
scds_close(3HA), scds_property_functions(3HA), scha_calls(3HA), scha_cluster_getlogfacility(3HA ), syslog.conf(4), r_properties(5)