プロセスオブジェクト管理

manage.py process 管理コマンドを用いて、Kompira プロセスオブジェクトに対して以下のような操作を行なうことができます。

  • プロセスの一覧表示
  • プロセスの個数表示
  • プロセスの削除
  • プロセスの中止
  • プロセスの停止
  • プロセスの続行

このとき、操作の対象とするプロセスを絞り込む条件を指定することができます。

  • プロセスの状態
  • 実行しているジョブフロー
  • スケジュール起動のプロセスかどうか
  • 起動オブジェクトが指定されたプロセスかどうか
  • 実行したユーザ
  • 開始日時および終了日時
  • 実行時間
  • コンソール出力に含まれる文字列

process 管理コマンドの実行

process 管理コマンドは以下のように kompira コンテナで実行してください。

$ docker exec $(docker ps -q -f name=kompira) manage.py process [options...]

プロセス操作オプション

Kompira プロセスに対して行う操作を指定するオプションを以下に示します。

オプション説明
-L, --listプロセスの一覧を表示します。デフォルトではアクティブ状態のプロセスを表示します。
-C, --countプロセスの個数を表示します。デフォルトでは全ての状態のプロセスの個数を表示します。
-D, --deleteプロセスを削除します。アクティブ状態のプロセスは対象外となります。
-T, --terminateプロセスを中止します。既に終了しているプロセスは対象外となります。
-S, --suspendプロセスを停止します。既に終了しているまたは停止中のプロセスは対象外となります。
-R, --resumeプロセスを続行します。既に終了しているまたは停止中でないプロセスは対象外となります。

操作を指定するオプションはいずれか1つのみ指定可能で、複数指定した場合は最後のオプションが適用されます。 上記のいずれも指定しなかった場合は、プロセスの一覧表示を行ないます。

大量のプロセスが処理対象となるような場合に、メモリや CPU などのリソース負荷が大きくなる場合がありますのでご注意ください。

プロセス情報の変更を伴う操作(削除、中止、停止、続行)が指定された場合は、実際に制御を適用するかの確認(yes/no の入力)が行なわれます。 制御前の確認を行なわずに適用したい場合は -y オプションを指定してください。制御を適用せずに動作を確認したい場合は --dry-run オプションを指定してください。

オプション説明
-y, --noinput確認を行なわずに制御を適用する
--dry-run変更を伴う処理を実際には適用しない

プロセス絞り込みオプション

操作対象とする Kompira プロセスを絞り込む条件を指定するオプションを以下に示します。

オプション説明
-i PID, --pid PIDプロセス ID が PID であるプロセス(複数指定可能)
-a, --all全ての状態のプロセス
--activeアクティブ状態 (NEW, READY, RUNNING, WAITING のいずれか) のプロセス
--finish終了状態 (ABORTED, DONE のいずれか) のプロセス
--status {NEW,READY,RUNNING,WAITING,ABORTED,DONE}指定した状態のプロセス(複数指定可能)
--suspended停止中のプロセス
--not-suspended停止中でないプロセス
--parent PARENT親プロセス ID が PARENT であるプロセス(複数指定可能)
--anyones-child任意の親プロセスを持つプロセス
--min-children MIN_CHILDREN子プロセスの個数が MIN_CHILDREN 以上あるプロセス
--job JOB開始ジョブフローが JOB に正規表現でマッチするプロセス
--current-job CURRENT_JOB実行中ジョブフローが CURRENT_JOB に正規表現でマッチするプロセス
--scheduledスケジューラによって起動されたプロセス
--not-scheduledスケジューラ以外で起動したプロセス
--scheduler-id SCHEDULER_IDID が SCHEDULER_ID のスケジュールによって起動されたプロセス(複数指定可能)
--scheduler-name SCHEDULER_NAME名称が SCHEDULER_NAME に正規表現でマッチするスケジュールによって起動されたプロセス
--invoked起動オブジェクトが記録される方式で実行されたプロセス
--not-invoked起動オブジェクトが記録されない方式で実行されたプロセス
--invoker INVOKER起動オブジェクトが INVOKER (abspath) であるプロセス(複数指定可能)
--invoker-type INVOKER_TYPE起動オブジェクトの型が INVOKER_TYPE (abspath) であるプロセス(複数指定可能)
--user USER実行ユーザの名称が USER に一致するプロセス(複数指定可能)
--started-since STARTED_SINCE開始日時が STARTED_SINCE 以降のプロセス
--started-before STARTED_BEFORE開始日時が STARTED_BEFORE より前のプロセス
--finished-since FINISHED_SINCE終了日時が FINISHED_SINCE 以降のプロセス
--finished-before FINISHED_BEFORE終了日時が FINISHED_BEFORE より前のプロセス
--elapsed-more ELAPSED_MORE経過時間(秒数)が ELAPSED_MORE 以上長いプロセス
--elapsed-less ELAPSED_LESS経過時間(秒数)が ELAPSED_LESS より短いプロセス
--console CONSOLEコンソール出力に CONSOLE を含むプロセス
--head HEAD絞り込み結果の先頭 HEAD 件を処理対象とします
--tail TAIL絞り込み結果の末尾 TAIL 件を処理対象とします
-r, --reverse並び順を逆にします
--order ORDERORDER で指定した順番で並べます
  • 複数指定可能な絞り込みオプションを複数回指定した場合は、それらを OR 条件として絞り込みます。
  • 異なる種類の絞り込みオプションを複数指定した場合は、それらを AND 条件として絞り込みます。
  • オプションの日時はジョブフローの datetime() 組み込み関数が認識できる形式で指定できます。

その他のオプション

オプション説明
--format {table,json,export}プロセスの一覧表示を行なうときの形式
--datetime-format DATETIME_FORMAT日時情報を表示するときの形式