Register-CimIndicationEvent
フィルター式またはクエリ式を使用して、指標を購読します。
構文
ClassNameComputerSet (既定)
Register-CimIndicationEvent
[-ClassName] <String>
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
ClassNameSessionSet
Register-CimIndicationEvent
[-ClassName] <String>
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
-CimSession <CimSession>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
QueryExpressionSessionSet
Register-CimIndicationEvent
[-Query] <String>
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
-CimSession <CimSession>
[-Namespace <String>]
[-QueryDialect <String>]
[-OperationTimeoutSec <UInt32>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
QueryExpressionComputerSet
Register-CimIndicationEvent
[-Query] <String>
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
[-Namespace <String>]
[-QueryDialect <String>]
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
説明
Register-CimIndicationEvent コマンドレットは、表示クラス名またはクエリ式を使用して、インジケーターをサブスクライブします。
SourceIdentifier パラメーターを使用して、サブスクリプションに名前を付けます。
このコマンドレットは、EventSubscription オブジェクトを返します。 このオブジェクトを使用して、サブスクリプションを取り消すことができます。
例
例 1: クラスによって生成されたイベントを登録する
この一連のコマンドは、プロセスが開始されるたびにイベントを発生させる Win32_ProcessStartTrace という名前のクラスによって生成されたイベントをサブスクライブし、Get-Event コマンドレットを使用して ProcessStarted サブスクリプションでイベントを取得します。 詳細については、「Get-Event」を参照してください。
Register-CimIndicationEvent -ClassName 'Win32_ProcessStartTrace' -SourceIdentifier "ProcessStarted"
Get-Event -SourceIdentifier "ProcessStarted"
注
この例では、管理者として PowerShell を実行する必要があります。
例 2: クエリを使用してイベントを登録する
この一連のコマンドは、クエリを使用して、Win32_LocalTimeという名前のクラスのインスタンスに変更が発生するたびに生成されたイベントをサブスクライブします。
$query = "SELECT * FROM CIM_InstModification WHERE TargetInstance ISA 'Win32_LocalTime'"
Register-CimIndicationEvent -Query $query -SourceIdentifier "Timer"
例 3: イベントが到着したときにスクリプトを実行する
この一連のコマンドは、イベントに応答してアクションを使用する方法を示しています。 変数 $action は、Actionのスクリプト ブロックを保持します。このブロックは、$event 変数を使用して CIM から受信したイベントにアクセスします。
$action = {
$name = $event.SourceEventArgs.NewEvent.ProcessName
$id = $event.SourceEventArgs.NewEvent.ProcessId
Write-Host -Object "New Process Started : Name = $name
ID = $id"
}
Register-CimIndicationEvent -ClassName 'Win32_ProcessStartTrace' -SourceIdentifier "ProcessStarted" -Action $action
詳細については、Win32_ProcessStartTraceを参照してください。
例 4: リモート コンピューターにイベントを登録する
この一連のコマンドは、Server01 という名前のリモート コンピューター上のイベントをサブスクライブします。 CIM サーバーから受信したイベントは、現在の PowerShell セッションのイベント キューに格納され、ローカル Get-Event を実行してイベントを取得します。
Register-CimIndicationEvent -ClassName 'Win32_ProcessStartTrace' -SourceIdentifier "ProcessStarted" -ComputerName Server01
Get-Event -SourceIdentifier "ProcessStarted"
パラメーター
-Action
イベントを処理するコマンドを指定します。
このパラメーターで指定されたコマンドは、イベントキューにイベントを送信するのではなく、イベントが発生したときに実行されます。 コマンドを中かっこ ( { } ) で囲み、スクリプト ブロックを作成します。
Action で指定されたスクリプト ブロックには、イベントに関する情報を $Event スクリプト ブロックに提供する、$EventSubscriber、$Sender、$SourceEventArgs、$SourceArgs、および 自動変数を含めることができます。 詳細については、「自動変数について」を参照してください。
パラメーターのプロパティ
| 型: | ScriptBlock |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | 1 |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-CimSession
指定した CIM セッションを使用してコマンドを実行します。 CIM セッションを含む変数、または CIM セッションを作成または取得するコマンド (New-CimSession、Get-CimSession コマンドレットなど) を入力します。 詳細については、「[about_CimSessions]」を参照してください。
パラメーターのプロパティ
| 型: | CimSession |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
ClassNameSessionSet
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
QueryExpressionSessionSet
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-ClassName
サブスクライブするインジケーター クラスを指定します。 PowerShell はローカル WMI サーバーからクラスの一覧を取得してクラス名の一覧を提供するため、タブ補完を使用してクラスの一覧を参照できます。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
ClassNameComputerSet
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
ClassNameSessionSet
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-ComputerName
CIM 操作を実行するコンピューターの名前を指定します。 完全修飾ドメイン名 (FQDN)、NetBIOS 名、または IP アドレスを指定できます。
このパラメーターを指定すると、コマンドレットは WsMan プロトコルを使用して、指定されたコンピューターへの一時的なセッションを作成します。 このパラメーターを指定しない場合、コマンドレットはコンポーネント オブジェクト モデル (COM) を使用してローカル システムで操作を実行します。
同じコンピューターで複数の操作が実行されている場合は、CIM セッションを使用して接続してパフォーマンスを向上させます。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | CN, サーバー名 |
パラメーター セット
ClassNameComputerSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
QueryExpressionComputerSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Forward
サブスクリプションのイベントがローカル コンピューター上のセッションに転送されることを示します。 このパラメーターは、リモート コンピューターまたはリモート セッションのイベントに登録する場合に使用します。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-MaxTriggerCount
指定した時間にサブスクライバーがトリガーされた後に自動登録解除する必要があることを示すパラメーター。 値が 0 以下の場合、登録を解除せずにイベントをトリガーできる回数に制限はありません。
パラメーターのプロパティ
| 型: | Int32 |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-MessageData
このイベント サブスクリプションに関連付ける追加データを指定します。 このパラメーターの値は、このサブスクリプションに関連付けられているすべてのイベントの MessageData プロパティに表示されます。
パラメーターのプロパティ
| 型: | PSObject |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Namespace
CIM 操作の名前空間を指定します。 既定の名前空間は root/cimv2
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-OperationTimeoutSec
コマンドレットがコンピューターからの応答を待機する時間を指定します。 既定では、このパラメーターの値は 0 です。これは、コマンドレットがサーバーの既定のタイムアウト値を使用することを意味します。
OperationTimeoutSec パラメーターが、堅牢な接続再試行タイムアウトの 3 分未満の値に設定されている場合、OperationTimeoutSec パラメーターの値を超えるネットワーク 障害は復旧できません。これは、クライアントが再接続する前にサーバーでの操作がタイムアウトするためです。
パラメーターのプロパティ
| 型: | UInt32 |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | OT |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Query
CIM サーバーで実行するクエリを指定します。 指定した値に二重引用符 "、単一引用符 '、または円記号 \が含まれている場合は、それらの文字の前に円記号を付けてエスケープする必要があります。 指定した値が WQL LIKE 演算子を使用する場合は、次の文字を角かっこ []で囲んでエスケープする必要があります。パーセント %、アンダースコア _、または角かっこ [。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
QueryExpressionSessionSet
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
QueryExpressionComputerSet
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-QueryDialect
Query パラメーターに使用されるクエリ言語を指定します。 このパラメーターに使用できる値は、WQL または CQL
パラメーターのプロパティ
| 型: | String |
| 規定値: | WQL |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
QueryExpressionSessionSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
QueryExpressionComputerSet
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-SourceIdentifier
サブスクリプションの名前を指定します。 指定する名前は、現在のセッションで一意である必要があります。 既定値は、PowerShell によって割り当てられる GUID です。 この値は、サブスクライバー オブジェクトの SourceIdentifier プロパティの値と、このサブスクリプションに関連付けられているすべてのイベント オブジェクトの値に表示されます。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | 1 |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-SupportEvent
イベント サブスクリプションが非表示であることを示します。 現在のサブスクリプションがより複雑なイベント登録メカニズムの一部であり、個別に検出すべきでない場合は、このパラメーターを使用します。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CommonParameters
このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。
入力
None
このコマンドレットは、入力オブジェクトを受け入れなくなります。
出力
Object
このコマンドレットは、EventSubscription オブジェクトを出力します。