Package org.apache.ignite.spi.eventstorage

## Interface EventStorageSpi

- All Superinterfaces:
    `IgniteSpi`
  All Known Implementing Classes:
    `MemoryEventStorageSpi`, `NoopEventStorageSpi`

      public interface EventStorageSpi
      extends IgniteSpi

  This SPI provides local node events storage. SPI allows for recording local node events and querying recorded local events. Every node during its life-cycle goes through a serious of events such as task deployment, task execution, job execution, etc. For performance reasons Ignite is designed to store all locally produced events locally. These events can be later retrieved using either distributed query:
  - `IgniteEvents.remoteQuery(org.apache.ignite.lang.IgnitePredicate, long, int...)`
  or local only query:
  - `IgniteEvents.localQuery(org.apache.ignite.lang.IgnitePredicate, int...)`
  NOTE: this SPI (i.e. methods in this interface) should never be used directly. SPIs provide internal view on the subsystem and is used internally by Ignite kernal. In rare use cases when access to a specific implementation of this SPI is required - an instance of this SPI can be obtained via `Ignite.configuration()` method to check its configuration properties or call other non-SPI methods. Note again that calling methods from this interface on the obtained instance can lead to undefined behavior and explicitly not supported.
  See Also:
    `Event`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `<T extends Event> Collection<T>` | `localEvents​(IgnitePredicate<T> p)` | Queries locally-stored events only.
    `void` | `record​(Event evt)` | Records single event.

    - ### Methods inherited from interface org.apache.ignite.spi.IgniteSpi

      `getName, getNodeAttributes, onClientDisconnected, onClientReconnected, onContextDestroyed, onContextInitialized, spiStart, spiStop`

- - ### Method Detail

    - #### localEvents

          <T extends Event> Collection<T> localEvents​(IgnitePredicate<T> p)

      Queries locally-stored events only. Events could be filtered out by given predicate filter.
      Type Parameters:
        `T` - Type of events.
      Parameters:
        `p` - Event predicate filter.
      Returns:
        Collection of events.

    - #### record

          void record​(Event evt)
               throws IgniteSpiException

      Records single event.
      Parameters:
        `evt` - Event that should be recorded.
      Throws:
        `IgniteSpiException` - If event recording failed for any reason.