CQELSVR 実行リストガイド
特定の論理サーバー(LSSN)に登録された CQE(Custom Query Engine)スクリプトのスケジュールを照会し、強制実行・有効化切替・削除・スクリプト確認までを行う方法を説明します。
📋 概要
CQELSVR 実行リストは、1つの論理サーバー(LSSN)に登録された CQE スクリプトのスケジュール(tMgmtScriptList)を照会し、直接制御する画面です。サーバーを選択すると登録済みスケジュール一覧が表示され、各行から強制実行・有効化切替・削除・スクリプト本文確認をその場で実行できます。
🔄 全体フロー (CQE Flow)
flowchart TD
A[管理者: CQERepoPut<br/>スクリプトをrepoに登録] --> B[tMgmtScript<br/>スクリプトリポジトリ]
B --> C[管理者: CQEQueuePut<br/>対象サーバーにスケジュール割り当て]
C --> D[tMgmtScriptList<br/>LSSN別スケジュール]
D --> E[エージェント: CQEQueueGet<br/>定期ポーリング]
E --> F[tMgmtQue<br/>実行キューからms_bodyを受信]
F --> G[エージェント: ローカルで<br/>スクリプト実行]
G --> H[KVSPut<br/>結果を報告]
style A fill:#e1f5fe
style B fill:#b3e5fc
style C fill:#e1f5fe
style D fill:#b3e5fc
style E fill:#e8f5e9
style F fill:#c8e6c9
style G fill:#fff9c4
style H fill:#ffccbc
🔍 画面構成
1. サーバー選択
- LSSN入力: 上部の入力欄に論理サーバーID(LSSN)を直接入力します。
- サーバー選択ボタン: クリックすると、現在のプロジェクト(csn)に登録されたサーバー一覧がポップアップで表示されます。選択するとLSSN欄に自動入力されます。
- セッション記憶: 一度選択したLSSNはブラウザのsessionStorageに保存され、再読み込み後も維持されます。
2. 実行リストの照会
- Runボタン: LSSNを入力または選択後にクリックすると、そのサーバーのスケジュール一覧が下部に表示されます。
- ページ移動: Prev / Next ボタンでページ単位に移動します。Offset入力欄に数値を直接入力し Run を押すことで、特定のオフセットへ移動することもできます(サーバーは1回あたり最大25件を返します)。
3. 行ごとの操作
一覧の各行(スケジュール=mslsn 1件)で以下を実行できます。
- 強制実行: スケジュールの周期に関係なく、即座に1回限りの実行キューに追加します。すでに待機中のキューがある場合は失敗します。
- この操作の実体は
tMgmtQueテーブルに実行1件を投入することです。エージェントはこのキューをポーリングして取得します。 - 1回限り(
repeat=1)のスケジュールの場合、強制実行時にactiveが 0 に下がります。これは「次の周期でこのスケジュールを自動再登録しない」という意味にすぎず、すでにキューに入った実行はそのまま正常に実行されます。active=0を見て実行が取り消されたと誤解しないでください。
- この操作の実体は
- 有効化切替: そのスケジュールのActive状態をon/offで切り替えます。
- 削除: そのスケジュール(
mslsn)を一覧から完全に削除します(単純な取り消しではなく、再度必要な場合は再登録が必要です)。 - スクリプト表示: 行の実行ID(mssn)をクリックすると、そのスクリプトの本文が下部(またはポップアップ)パネルに表示されます。
4. 詳細ページへの遷移
- Machine Detail ボタン: 選択中のLSSNの詳細ページ(
/lsvrdetail)へ移動します。 - Add Queue ボタン:
/ja/cqeQueuePutページへ移動し、このサーバーに新しいスケジュールを登録できます。開始日時のタイムゾーン規約は CQE キュー登録ガイド を参照してください。
📊 列の説明
| 列 | 説明 |
|---|---|
| msName | 登録されたスクリプト名 |
| mssn | スクリプト固有ID。クリックするとスクリプト本文が表示されます。 |
| mslsn | このスケジュール(サーバー-スクリプト割り当て)固有ID。強制実行/有効化切替/削除の対象です。 |
| lssn | このスケジュールが登録されている論理サーバーID |
| active | 周期スケジュールを自動再登録するかどうか(1=オン/0=オフ)。この値が 0 でも、すでにキューに入った実行の可否とは無関係です。1回限り(repeat=1)のスケジュールは、強制実行時にこの値が 0 に下がるのが正常です。 |
| repeat | 繰り返し実行の有無・方式(1=1回限り) |
| interval | 繰り返し周期(分) |
| q_flag | 実行キュー待機中の表示(1=tMgmtQue に待機中)。エージェントがキューを取得すると 0 に戻ります。 つまり q_flag=1 は「まだ取得されていない」、0 は「取得済み、または待機なし」を意味します。 |
| lastdate | 最終実行(キュー投入)日時。UTC 基準で保存・表示されます(ローカル時刻とは時差の分だけずれて見えるのが正常です)。 |
| regdate | このスケジュールが登録された日時 |
実行後の状態遷移
強制実行または周期実行でエージェントがキューを取得すると、値は次のように変化します。
| 対象 | 変化 |
|---|---|
tMgmtQue.send_flag | 1 に変更(エージェントが受領) |
q_flag | 1 → 0 に復帰(待機解消) |
lastdate | 実行(キュー投入)日時に更新 |
active | 自動では復元されません。 |
⚠️ 1回限りのスケジュールを強制実行したあとも周期的な繰り返しを続けたい場合は、実行完了後に[有効化切替]で
activeを再度オンにする必要があります。 システムが自動で戻すことはありません。
⚙️ 要件
- **ログインセッション(CSN)**が必要です。セッションがないとサーバー一覧を取得できません。
- 照会対象のLSSNが現在のプロジェクトに登録されている必要があります。
- スケジュールの強制実行/有効化切替には、そのスケジュールの所有者であるか、別途権限(マーケットプレイス購入など)が必要です。
API 参照
この機能の API 詳細仕様は別ガイドを参照してください。
トラブルシューティング
| 症状 | 原因 | 解決 |
|---|---|---|
| サーバー選択ポップアップの一覧が空 | 現在のプロジェクト(csn)に登録されたサーバーがない | 上部で正しいプロジェクトを選択しているか確認します。 |
| 強制実行が反応なく失敗する | すでに待機中のキューがある(重複実行防止)、またはこのスケジュールへの権限がない | しばらくしてから再試行するか、スケジュールの所有者に確認します。 |
| 削除後も一覧に残っているように見える | 削除自体は成功しているが、画面がまだ再読み込みされていない | Run を再度押して最新の一覧を再取得します。 |
| 削除ボタンを押しても反応がない、または静かに失敗する(他人が登録したスケジュールなど) | このスケジュールの所有者でないため削除権限がない(RstVal=403) | 画面にエラーアラートが表示されます(giip 3042 で改善)。アラートのメッセージを確認し、必要であればスケジュールの所有者または上位権限のアカウントに削除を依頼してください。 |
| 有効化をオンにしても実行されない | 有効化はスケジュール実行を再開させるだけで、即座の実行ではない | 今すぐ実行したい場合は 強制実行 を使用します。 |
| 強制実行後に q_flag=1 だが active=0 で、実行されないように見える | 1回限りのスケジュールは、強制実行時に active が 0 に下がるのが正常 | そのままにしておけば次のエージェントのポーリングで実行されます。その後も周期的な繰り返しを望む場合は[有効化切替]で再度オンにします。 |
| キューが待機中(q_flag=1)なのに、数分経ってもエージェントが取得しない | スケジュールの lastdate/開始日時が未来の時刻として保存されていると、取得候補の並び順で永久に後回しにされます(ローカル時刻を UTC の DB にそのまま保存した場合に発生) | 該当スケジュールの開始日時を確認し、未来になっていれば登録し直します。再発する場合は giip イシューとして報告してください。 |
🔌 CQE API(自動化向け)
上記のUI操作は次のCQE APIバーブ(byAK/bySkディスパッチャ)に対応します。リクエストは text(バーブ+パラメータ名)、jsondata(値)、token を送信します。ただし一覧照会(CQELsvrRunList)のみ例外で、パラメータを text 文字列に直接含めて送信します(jsondata は使用しません)。
- CQELsvrRunList
lssn <lssn> <offset>— そのLSSNに登録されたスケジュール一覧を照会。サーバー側でオフセット基準に最大25件を返します(固定、リクエストでは調整不可)。応答カラムは上記「列の説明」表と同じです。 - LSVRList
csn— そのcsn(プロジェクト)に登録された論理サーバー一覧を照会(サーバー選択ポップアップで使用)。 - CQERunForce
mslsn— スケジュールに関係なく即座に1回限りの実行キュー(tMgmtQue)へ投入。1回限り(repeat=1)のスケジュールはこのときactiveが 0 に下がりますが、投入された実行はそのまま実行されます。応答RstVal:200=成功,300=権限なし,302=すでに待機中(競合),610=権限不足またはガス残高不足。 - CQERunActvate
mslsn— そのスケジュールのactive値を1↔0で切り替え。応答RstValはCQERunForceと同じ体系(200/300/302/610)。 - CQEQueueDel
mslsn— そのスケジュールを完全削除(単純な取り消しではなく再登録が必要)。応答RstVal:200=成功,403=権限なし,404=対象なし。 - CQERepoScript
mssn— そのスクリプト(mssn)の本文(msBody)を取得。
認証モデル: このページのAPIは giip-issue スキルの x-api-key(SK)方式ではなく、ログインセッションの user_id + token を送信するセッショントークン方式です。
隣接機能(スクリプト登録・サーバー一括配布)の全体仕様: CQE リポジトリ スクリプト管理ガイドの「🔌 CQE API(自動化向け)」節、giipdb
docs/30_Specs/CQE_SPECIFICATION.md。
バージョン: 1.3
最終更新: 2026-09-25
ソースファイル: giipv3/public/help/cqelsvrRunList.ja.md