スマートルール(新規)プラグイン

スマートルール(新規)プラグインの利用開始

smart rules(NEW)プラグインとは

smart rules プラグインは、ストリーミング分析内の分析ビルダー機能を拡張し、デバイス管理、コックピット、デジタルツインマネージャーなどのアプリケーション内のデバイスおよびグループのコンテキストから、分析ビルダーのモデルインスタンスを直接作成・管理できるようにします。

分析ビルダーの詳細については、分析ビルダー を参照してください。

前提条件

smart rules(NEW)プラグインを使用する前に、以下の要件が満たされていることを確認してください:

  • テナントが、分析ビルダー機能をサポートするストリーミング分析マイクロサービスにサブスクライブしていること。
  • smart rules プラグインが目的のアプリケーションにインストールされており、プレビュー機能Smart rules(NEW)プラグイン が有効になっていること。
  • ユーザーが、分析ビルダーのモデルにアクセスし、分析ビルダーのテンプレート化モデルの新しいインスタンスを作成するために必要な権限を持っていること。権限 を参照してください。

smart rules(NEW)インスタンスへの権限の管理

グローバルロール 配下の Smart rule instances 権限により、smart rules(NEW)インスタンスへのアクセスに必要な権限を管理できます。

権限 説明
READ smart rule インスタンスへの読み取り専用アクセスを付与します。この権限を持つユーザーは既存インスタンスを表示できますが、作成、更新、削除はできません。
ADMIN smart rule インスタンスを作成、読み取り、更新、削除(CRUD)する権限を付与します。

これらの権限により、きめ細かなアクセス制御が可能になり、管理者は運用要件に基づいてユーザー権限を管理できます。

上記で説明した権限は、基盤となる分析ビルダーのモデルへの読み取り専用アクセスを付与します。分析ビルダーのモデルに対する管理アクション(作成、編集、削除など)には、CEP管理 権限が必要です。権限 を参照してください。

最初の smart rule を作成する

このトピックでは、デバイス管理などのアプリケーションからプラグインを使用して、最初の smart rules を作成するための基本的なワークフローを説明します。温度が指定した閾値を超えたときにアラームを作成する、シンプルなテンプレート化分析モデルを作成します。以下の手順では、少なくとも1つのデバイスが Things Cloud にすでに登録されている必要があります。できれば、このデバイスはすでにメジャーメント値を Things Cloud に送信していることが望ましいです。

追加するモデルには、次の3つのブロックが含まれます:

  • デバイス、グループ、またはアセットからメジャーメントを受信する入力ブロック。
  • メジャーメントが閾値を超えたことを検証する閾値ブロック。
  • 指定したデバイス、グループ、またはアセットに対してアラームオブジェクトを作成するアラーム出力ブロック。

ステップ 1: 分析モデルを作成する

このセクションでは、シンプルな温度監視モデルの作成手順を説明します。分析ビルダーの詳細については、モデルの理解 を参照してください。

  1. ストリーミング分析アプリケーションを開き、分析ビルダー > モデル に移動します。
  2. トップバーで 新しいモデル をクリックし、モデル名(例: “Create alarm on threshold”)を入力して OK をクリックします。
  3. 左側のパレットで 入力 を展開し、Measurement Input ブロックをキャンバスにドラッグします。ブロックのパラメータエディタで:
    • Input Source で、ドロップダウン Option for selecting a template parameter から “Template parameter” を選択し、名前を指定します。例: “Measurement Source”。 Template parameter with From Context

    • Fragment and Series で、ドロップダウンから “Template parameter” を選択し、名前を指定します。例: “Input Fragment and Series”。

  4. 計算 を展開し、Threshold ブロックをキャンバスにドラッグします。ブロックのパラメータエディタで:
    • Threshold Value で、ドロップダウンから “Template parameter” を選択し、名前を指定します。例: “Threshold Value”。
  5. 出力 を展開し、Alarm Output ブロックをキャンバスにドラッグします。ブロックのパラメータエディタで:
    • Output Destination で、ドロップダウンから “Template parameter” を選択し、Measurement Input ブロックの Input Source に指定したのと同じテンプレートパラメータを使用します。例: “Measurement Source”。
    • Alarm Type で、ドロップダウンから “Template parameter” を選択し、名前を指定します。例: “Alarm Type”。
    • Message で、ドロップダウンから “Template parameter” を選択し、名前を指定します。例: “Alarm Text”。
    • Severity で、ドロップダウンから “Template parameter” を選択し、名前を指定します。例: “Alarm Severity”。
  6. ブロック間をポート(ブロック側面の小さな円)でクリック&ドラッグして接続します:
    • Measurement InputValue 出力を ThresholdValue 入力に接続します。
    • ThresholdBreached 出力を Alarm OutputCreate Alarm 入力に接続します。
  7. モデルエディタのツールバーで、テンプレートパラメータアイコン をクリックしてテンプレートパラメータダイアログを開きます。Measurement Input ブロックの Input Source に指定したテンプレートパラメータ(例: “Measurement Source”)について、「Source or Destination」が Restrict to ドロップダウン(例: “Device”)から1つ以上の値を含むように更新されていること、かつ Value Selection が “From Context” に設定されていることを確認します。OK をクリックして変更を保存します。

“From Context” および Restrict to の詳細については、テンプレートパラメータの定義 を参照してください。

Template parameter with From Context

分析ビルダーでテンプレートパラメータを作成および管理する詳細については、テンプレートパラメータの管理 を参照してください。

  1. モデルエディタのツールバーで、保存アイコン をクリックしてモデルを保存します。

完了すると、モデルは次のようになります:

Create model for alarms

ステップ 2: smart rules プラグインを使用してモデルインスタンスを作成する

  1. デバイス管理アプリケーションに移動します。
  2. デバイス > すべてのデバイス に移動し、デバイスを選択します。
  3. Smart rules(NEW) タブ(デバイス詳細タブの1つとして埋め込まれています)をクリックします。 前提条件 セクションを参照して、すべての要件が満たされていることを確認してください。 Smart rules tab
  4. ルールを追加 をクリックして ルールを追加 ダイアログを開きます。現在 デバイス コンテキストにいるため、From Context テンプレートパラメータが デバイス に制限されるよう設定されているモデルのみがここに表示されます。設定したモデルを選択し、OK をクリックします。 Add rule for the selected model
  5. ルールパラメータを設定します:
    • 必要に応じて名前を更新するか、注記を追加します。
    • テンプレートパラメータの値を入力します。From Context を設定したテンプレートパラメータ(例: “Measurement Source”)の値は、現在のデバイスまたはグループのコンテキストから自動的に導出されます。
    • 保存 をクリックしてルールを保存するか、アクティブ に切り替えて保存と同時に即時デプロイします。
  6. ルールが smart rules リストに表示され、ステータス(アクティブ/非アクティブ)が示されます。 Smart rules list

おめでとうございます! smart rules プラグインを使用して、最初の smart rule を正常に作成しデプロイしました。

既存の分析ビルダーサンプルから smart rules を作成する

分析ビルダーの事前構築サンプルモデルを使用して smart rules を作成することもできます。プロセスは一から作成する場合と似ていますが、モデルロジックがすでに定義されているため、より迅速です。

ステップ 1: サンプルからモデルを作成する

  1. 分析ビルダー > サンプル に移動します。
  2. 対象のサンプル(例: “On alarm execute operation”)のアクションメニュー をクリックし、サンプルからモデルを作成 を選択します。 Create model from sample
  3. モデルエディタが開き、サンプルモデルが使用可能な状態になります。

ステップ 2: テンプレートパラメータを設定する

  1. ツールバーのテンプレートパラメータアイコン をクリックします。
  2. Alarm Input ブロックの Input Source に指定したテンプレートパラメータ(例: “Device or group of devices”)について、「Source or Destination」が Restrict to ドロップダウン(例: “Device”)から1つ以上の値を含むように更新されていること、かつ Value Selection が “From Context” に設定されていることを確認します。OK をクリックして変更を保存します。
  3. モデルエディタのツールバーで、保存アイコン をクリックしてモデルを保存します。

ステップ 3: デバイス管理アプリケーションからルールを作成する

上記の ステップ 2: smart rules プラグインを使用してモデルインスタンスを作成する と同じ手順に従ってください。

トラブルシューティング

  1. ルールを追加ダイアログにモデルが表示されない
    • 分析ビルダーのモデルに、“From Context” 値で設定されたテンプレートパラメータがあることを確認してください。
    • 現在のコンテキストが、モデルの「Source or Destination」タイプ制限と一致していることを確認してください。例えば、モデルの Restrict to ドロップダウンが “Groups” のみに設定されているデバイスコンテキストでは、そのモデルは利用できません。デバイスコンテキストで表示するには、Restrict to ドロップダウンで “Device” を選択する必要があります。
  2. 以前に作成したルールが smart rules リストに表示されない
    • 分析ビルダーのインスタンスエディタで、分析インスタンスが Production mode に設定されていることを確認してください。
    • 分析ビルダーのインスタンスエディタで、分析インスタンス名が設定されているか確認してください。
    • 正しいデバイスまたはグループのコンテキストを表示していることを確認してください。
  3. smart rule のデプロイでエラーが発生する
    • 実行時エラーアイコン Error icon をクリックして、エラーに関する情報を表示します。

スマートルール(NEW)プラグインの理解

分析ビルダーのワークフローとスマートルールプラグインの比較

標準の分析ビルダーのワークフロー

標準の分析ビルダーのワークフローでは、分析インスタンスをデプロイするために、ユーザーは主なワークフローから分析ビルダーに切り替える必要があります。

  1. ストリーミング分析アプリケーションに移動します。
  2. 分析ビルダー に移動します。
  3. モデルを選択し、インスタンス ページに移動します。
  4. インスタンスエディタで、そのモデルのインスタンス/ルールを作成します。
  5. インスタンスエディタからルールを設定してデプロイします。

このプロセスではアプリケーション間の切り替えが必要であり、複数のデバイスまたはグループのルールを管理する場合に時間がかかることがあります。

インスタンスエディタのワークフローの詳細については、インスタンスエディタ を参照してください。

スマートルールプラグインを使用する場合

スマートルールプラグインは、デバイスおよびグループのコンテキストから直接、分析ビルダーモデルのインスタンスの作成とデプロイを可能にすることでこのプロセスを効率化し、別のアプリケーションへ切り替える必要をなくします。

スマートルールインターフェースについて

ルールには次のフィールドとプロパティがあります。

フィールド 説明
名前 モデル名で自動的に入力されますが、より説明的な名前にカスタマイズできます。
同じモデルから複数のルールを作成する際にルール名を変更しない場合、プラグインはインスタンスを区別するために自動的に #1、#2、#3 などを付加します。ルールはインスタンス名でソートされます。
注記 ルールに注記を追加できます。
作成日時 ルールが作成されたタイムスタンプを表示します。
最終更新日時 ルールが最後に更新されたタイムスタンプを表示します。
モデル名 ルールに関連付けられたモデルの名前を表示します。このフィールドは読み取り専用です。
テンプレートパラメータ 「From Context」として設定されたテンプレートパラメータは、現在のデバイス/グループのコンテキストに基づいて自動的に入力されます。
コンテキストベースのパラメータは現在のコンテキストから値を継承するため読み取り専用です。
非コンテキストのテンプレートパラメータは、ユーザー設定のため編集可能のままです。
アクティブ/非アクティブ 非アクティブからアクティブ状態に切り替えることでルールをデプロイします。
ルールがデプロイされると、デプロイ解除しない限り、すべてのフィールドとプロパティは読み取り専用になります。

分析ビルダーのインスタンスエディタとの統合

スマートルールプラグインは、分析ビルダーのインスタンスエディタとシームレスな双方向統合を維持します。

分析ビルダーのインスタンスエディタで作成されたルールは、モードが Production に設定されている場合にのみスマートルールプラグインに表示されます。Production以外のモードは、ルールが開発中またはテスト中であり、デプロイの準備ができていないことを示します。

スマートルールプラグインで作成されたルールは、対応するモデルのインスタンスエディタに自動的に表示されます。これらのルールは、インスタンスエディタから編集、変更、または削除できます。

不完全なルールのデプロイを防ぐため、インスタンスエディタにはインスタンス名に対する強化された検証が含まれています。インスタンス名は必須であり、テナント内で一意でなければなりません。一意で空でないインスタンス名を指定した後にのみ、そのインスタンスはデプロイ可能になります。

備考
この検証は、値の選択が「From Context」に設定されたテンプレートパラメータを含むように構成されたモデルにのみ適用されます。
  • インスタンス名が空の場合、モードフィールドの下に Set distinct instance name to select production mode というメッセージが表示されます。
  • 重複するインスタンス名を入力すると、インスタンス名フィールドの下に Instance name already exists というエラーメッセージが表示され、先に進めなくなります。

Production mode validation

この検証により、本番運用可能なすべてのルールが適切に識別され、デプロイの競合を防止します。