---
schema_version: "1"
id: 2a7b37b868379f2a6b8304b694b948aa7dbc933c30ae2a75ee40723a9dd64d8d
title: Spy イベントプロセッサー
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/munit/2.3/spy-event-processor.md
canonical_url: https://docs.mulesoft.com/jp/munit/2.3/spy-event-processor
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 7fb7b0bef16d6a46bda5dfc51a74dd02f9d48ff9b56dda817c15166e07045d7a
description: MuleSoft Documentation Site
release: "2.3"
latest: false
---
# Spy イベントプロセッサー

**Spy プロセッサー**​を使用すれば、イベントプロセッサーのコール前後で何が起きているかを監視できます。  
これにより、たとえば、選択した Mule イベントが、特定のペイロードまたは変数を含む特定のイベントプロセッサーに達したことを検証できます。

Spy プロセッサーを設定すると、監視されているイベントプロセッサーの実行前または後に一連の手順 (通常はアサーションまたは検証) を実行するよう MUnit に指示されます。

次の設定があるとします。

```xml
<flow name="testFlow">
  <http:request path="/my/api" />
</flow>
```

任意の HTTP 要求を監視するように Spy プロセッサーを設定し、コンポーネントに達する前のペイロードが null であり、処理後にペイロードが null 以外になっていることを確認できます。

```xml
<munit:test name="suiteTest" >

  <munit:behavior >

    <munit-tools:spy processor="http:request">
      <munit-tools:before-call >
        <munit-tools:assert-that expression="#[payload]" is="#[MunitTools::nullValue()]"/>
      </munit-tools:before-call>
      <munit-tools:after-call >
        <munit-tools:assert-that expression="#[payload]" is="#[MunitTools::notNullValue()]"/>
      </munit-tools:after-call>
    </munit-tools:spy>

  </munit:behavior>

</munit:test>
```

また、パスが「/my/api」である任意の HTTP 要求を監視することもできます。

```xml
<munit:test name="suiteTest" >

  <munit:enable-flow-sources >
    <munit:enable-flow-source value="testFlow" />
  </munit:enable-flow-sources>

  <munit:behavior >

    <munit-tools:spy processor="http:request">
      <munit-tools:with-attributes >
        <munit-tools:with-attribute attributeName="path" whereValue="#['/my/api']" />
      </munit-tools:with-attributes>

      <munit-tools:before-call >
        <munit-tools:assert-that expression="#[payload]" is="#[MunitTools::nullValue()]"/>
      </munit-tools:before-call>

      <munit-tools:after-call >
        <munit-tools:assert-that expression="#[payload]" is="#[MunitTools::notNullValue()]"/>
      </munit-tools:after-call>

    </munit-tools:spy>

  </munit:behavior>

</munit:test>
```

上記のように、このプロセッサーを使用すれば、監視するプロセッサーをコールする前後でアクションを定義できます。 ただし、Spy プロセッサーで元の Mule イベントを変更することはできません。  
Spy の内部で変数や属性を設定したり、ペイロードを変更したりしても、その変更はプロセッサーの外部では存続しません。  
一般に Spy プロセッサーは検証または確認のために使用する必要があります。

## [](#関連情報)関連情報

- [MUnit イベントプロセッサー](https://docs.mulesoft.com/jp/munit/2.3/event-processors)