ワークフローのトリガー

ワークフローは、異なる実行オプションでワークフローをトリガーすることを可能にします。 ワークフローを実行するための4つのメカニズムがあります:

  • マニュアル は、複数のターゲットに対してワークフローを手動で同時に実行できるようにします。

  • API は、Workflows APIを使用してワークフローを実行することを可能にします。&#x20

  • スケジュール は、NQLクエリで定義された時間枠内でワークフローを実行することを可能にします。

  • イベント は、NQLクエリで定義されたリアルタイムイベントワークフローを実行することを可能にします。

ワークフローを手動でトリガーする

ワークフローを手動でトリガーするには:

  1. NQLクエリを使用してデバイスユーザーのリストを取得します。

  2. NQLクエリを使用して1つ以上のワークフローを設定します。

  3. _すべてのワークフローを手動でトリガー_の権限を付与するか、トリガー権限を持つワークフローを共有します。

システムは手動トリガーのためのDevice ViewとAmplifyをサポートしていません。

ワークフローを手動でトリガーするには:

  1. メインメニューからInvestigationsを選択します。

  2. New ボタンをクリックしてNQLクエリを実行します。 デフォルトでVisual editorタブが開きます。

  3. NQL editorタブに切り替え、NQLクエリを記述してすべてのデバイスユーザーをリストします。

  4. 実行ボタンをクリックしてクエリ結果を表示します。

  1. アクションを実行する1つ以上のデバイスを選択するか、最初の列の上のチェックボックスを使用してすべて選択します。

  2. 最初の項目を選択すると、選択されたエントリーの総数とアクションを実行ボタンを含むアクションバーが表示されます。

  1. アクションを実行ボタンをクリックします。 アクションモーダルが表示されます。

  2. 関連するアクションを選択し、調査結果に応じてデバイスを実行またはユーザーを実行ボタンをクリックします。

APIからワークフローをトリガーする

Nexthink APIを使用してワークフローをトリガーするには、 Workflows API ドキュメントを参照して詳細をご確認ください。

スケジュールされたワークフローをトリガーする

特定の繰り返し期間にワークフローをトリガーし、NQLクエリを使用してワークフローのターゲットを定義します。 スケジュールされたワークフローをトリガーするには:

  1. メインメニューからWorkflowsを選択します。

  2. ワークフローにアクセスするには、以下の2つのオプションがあります:

    • 既存のワークフローを編集するためにワークフローを管理を選択します。

    • 新しいワークフローを作成するには、New ボタンをクリックしてください。

  3. 一般タブでスケジュールを選択します。

  1. スケジュールを追加 ボタンをクリックしてスケジュールモーダルを開きます。

  1. 以下のフィールドを入力します:

    • 名前: スケジュールのための一意の名前を入力します。

    • NQL: ワークフローターゲットのためにNQLクエリを入力します。これにはデバイスユーザーが含まれます。

    • 繰り返し: スケジュールのタイミングと繰り返しを設定します。

    • ワークフローパラメータ: ワークフローをスケジュールするためにパラメータを使用します。 DesignerやNEALスクリプトでパラメータを定義します。 Designerドキュメントを参照してください。

      • 以下を使用してパラメータを設定します:

        • Designerで設定された値の事前定義リスト。

        • カスタムフリーテキスト値。

        • NQLクエリのリスト文で定義された属性。

  2. 追加をクリックしてワークフローをトリガーします。

イベントワークフローをトリガーする

システムはワークフローごとに1つのイベントのみをトリガーします。

NQLクエリを使用して定義されたリアルタイムイベントワークフローをトリガーします。 Nexthinkがイベントを受信すると、システムはワークフローをトリガーします。

イベントワークフローをトリガーするには:

  1. メインメニューからWorkflowsを選択します。

  2. ワークフローにアクセスするための2つのオプションがあります:

    • 既存のワークフローを編集するためにワークフローを管理を選択します。

    • 新しいワークフローを作creatingするには、New ボタンをクリックします。

  3. 一般タブで、イベント > イベントを追加 ボタンをクリックしてイベントモーダルを開きます。

  1. 以下のフィールドを入力します:

    • 名前: イベントのための一意の名前を入力します。

    • NQL: ワークフローをトリガーするイベントをキャプチャするためのNQLクエリを入力します。

      • クエリが有効になるためには、少なくとも1つの以下を含む必要があります:

        • サポートされているイベント

        • where文 (オブジェクトがフィルタリング可能な場合)。

        • list文。

      • 対応イベントセクションで、使用可能なイベントのリストとサポートされているクエリエレメントの詳細についてはイベント制限セクションをご確認ください。

    • パラメーター: ワークフローがトリガーされたときの値を設定するためにパラメーターを使用します。 DesignerやNEALスクリプトでパラメーターを定義します。 Designerドキュメントを参照してください。

      • 以下を使用してパラメータを設定します:

        • Designerで設定された値の事前定義リスト。

        • カスタムフリーテキスト値。

        • NQLクエリのリスト文で定義された属性。

  2. 追加ボタンをクリックしてワークフローをトリガーします。

イベントトリガーのためのNQL例

以下の例は、イベントで使用できるNQLクエリを示しています:

遅いログインイベント

以下のクエリを使用して、デバイスの高いログイン時間を特定し、影響を受けたユーザーのユーザー名を含めます。

session.logins
| where time_until_desktop_is_ready > 1s
| list user.ad.username

ドライバーやストレージ関連のブルースクリーン(BSoD)

以下のクエリを使用して、ドライバーまたはストレージ関連の問題によってBSoDを経験したWindowsデバイスに応答します。

device_performance.system_crashes
| where label == 'IRQ_NOT_LESS_OR_EQUAL'
| list error_code

アンチウイルスソフトウェアが無効

アンチウイルスソフトウェアが無効になっている場合、以下のクエリを使用します。&#x20

リモートで無効なアンチウイルスが検出された場合は、以下のクエリを使用します。これによりコンプライアンスが確保され、デバイスのコンプライアンス状態に対する追加のチェックを行うことができます。

remote_action.#AVCheck.executions
| where outputs.AVActive == 'false'
| list outputs.AVDefinitionVersion

対応イベント

手動カスタムフィールドはサポートされています。 システムは手動カスタムフィールドをサポートしています。 以下はシステムサポートのクエリエベントのリストです:

  • alert.alerts

  • device_performance.boots

  • device_performance.hard_resets

  • device_performance.system_crashes

  • execution.crashes

  • remote_action.executions

  • session.connects

  • session.disconnects

  • session.locks

  • session.logins

  • session.logouts

  • session.unlocks

Event Limitations

  • The system does not support filtering using date or time attributes.&#x20

  • The following limits apply to event trigger configuration:

    • One event trigger per workflow.

    • The use of ratings is not supported.

    • last_seen attributes are not supported on any object.

  • The system does not support using the following fields in the query from the device object:

    • last_seen

    • login.last_login_user_name

    • boot.days_since_last_full_boot

    • boot.last_full_boot_duration

    • boot.last_full_boot_time

    • connectivity.last_connectivity_type

    • connectivity.last_local_ip

  • The system does not support the use of the following custom fields:

    • Query-based fields

    • Rule-based fields

  • The system does not support the use of the following dimensions in the query:

    • context.*

    • device.public_ip.*

Workflow statuseside

When triggering a workflow, use the status to understand whether it is still running and how it ended.

Review the workflow status by:

  • Viewing the workflow execution details page.

  • Running an NQL query, including the status attribute in the where statement.

The list below outlines possible workflow statuses and what they commonly mean.

  • In Progress: The workflow has been triggered and is currently working through the logic-configured design.&#x20

  • Success: Successful completion of the workflow. &#x20

  • Failed: Workflow failed to run due to an unexpected issue.

  • Canceled: Workflow stopped executing for the following reasons: • The workflow has been disabled. • An execution with the same targets and parameters is already running and current workflow is considered a duplicate.

  • &#x20Expired: Thinklet or flow control within the workflow exceeded the configured timeout period. • The most common scenario is a remote action Thinklet attempting to execute on a device that is currently offline.

A workflow execution achieves success when it has reached a configured End block in the workflow design.

Click on the status_detail attribute to view more detailed information—when available— regarding the status.&#x20

\

Last updated