Go to main content
Oracle® Solaris 11.3 でのシステムサービスの開発

印刷ビューの終了

更新: 2016 年 11 月
 
 

サービス構成リポジトリへの定期的なサービスデータの格納

periodic_method 要素の指定で説明されているように、periodic_method 要素は、定期的なサービスのメソッド情報 (起動メソッドの exec_method プロパティーグループ) およびスケジューリング情報 (periodic プロパティーグループ) の両方を提供します。periodic_method 要素のあるマニフェストをインポートすると、このセクションで説明されているデータは、サービス構成リポジトリに格納されます。

リスタータのプロパティ

サービスのリスタータは svc:/system/svc/periodic-restarter:default に設定されます。管理者は、svcs -l コマンドを使用してリスタータを表示することも、svccfg または svcprop コマンドを使用して general/restarter プロパティーを表示することもできます。

定期的なサービスインスタンスのオンライン状態は起動メソッドの呼び出しと呼び出しの間も維持されるため、インスタンスは、関連付けられた契約済みプロセスがシステムで実行中でなくても online 状態になることができます。オンラインの定期的なサービスインスタンスの場合、メソッドアクションが実行中であるかどうかを区別するために、auxiliary_state プロパティーには次のいずれかの値を指定できます。

running

インスタンスはオンラインで、契約済みのプロセスが関連付けられています。

scheduled

インスタンスはオンラインですが、契約済みのプロセスは関連付けられていません。

この状態を確認するには、管理者は svcs -o astate コマンドを使用して ASTATE 列を表示することも、svccfg または svcprop コマンドを使用して general/auxiliary_state プロパティーを表示することもできます。

periodic プロパティーグループ

periodic_method 要素のスケジューリング属性 (perioddelayjitterpersistent、および recover) は、periodic という名前のプロパティーグループのプロパティーとして格納されます。これらの属性の定義についてはperiodic_method 要素の指定、その使用方法の例については定期的なサービスの起動メソッド実行のスケジュールを参照してください。管理者は、svcprop コマンドと svccfg コマンドを使用して、これらの periodic プロパティーグループのプロパティーを表示および変更できます。

起動メソッドの最後および次の呼び出し

サービス構成リポジトリには、インスタンスの次の 2 つのスケジューリング情報も格納されます。

last_run

このインスタンスの起動メソッドの実行が最後に試行された絶対時間。起動メソッドが実行されたことがない場合、このプロパティーは存在しません。この時間を確認するには、管理者は svcs -o lrun コマンドを使用して、LRUN 列を表示できます。

next_run

このインスタンスの起動メソッドの実行が次に試行される絶対時間。絶対時間が存在しない場合、このプロパティーはないか、このプロパティーに値が指定されていない可能性があります。定期的なサービスの起動メソッド実行のスケジュールで説明されているように、特定の RAND(jitter) 値を含め、次にスケジュールされている起動メソッドの呼び出しの next_run の値は last_run の設定時に計算され、そのような呼び出しとなります。この時間を確認するには、管理者は svcs -o nrun コマンドを使用して、NRUN 列を表示できます。この時間は、それぞれの定期的なサービスインスタンスの periodic-restarter サービスによって管理されます。管理者はこの値を変更できません。

start プロパティーグループ

exec 値と timeout_seconds 値および method_context 情報は、start という名前のプロパティーグループのプロパティーとして格納されます。この start プロパティーグループは、定期的なサービスの起動メソッドを表し、ほかのサービスの起動メソッドと同じ方法で定義されます。