base/frameworks/broker/main.bro

BrokerComm
BrokerStore

Various data structure definitions for use with Bro’s communication system.

Namespaces:BrokerComm, BrokerStore
Source File:/scripts/base/frameworks/broker/main.bro

Summary

Options

BrokerComm::endpoint_name: string &redef A name used to identify this endpoint to peers.

Types

BrokerComm::Data: record Opaque communication data.
BrokerComm::DataVector: vector Opaque communication data.
BrokerComm::EndpointFlags: record Change communication behavior.
BrokerComm::EventArgs: record Opaque event communication data.
BrokerComm::SendFlags: record Fine-grained tuning of communication behavior for a particular message.
BrokerComm::TableItem: record Opaque communication data used as a convenient way to wrap key-value pairs that comprise table entries.
BrokerStore::BackendOptions: record Options to tune the particular storage backends.
BrokerStore::ExpiryTime: record An expiry time for a key-value pair inserted in to a data store.
BrokerStore::QueryResult: record The result of a data store query.
BrokerStore::QueryStatus: enum Whether a data store query could be completed or not.
BrokerStore::RocksDBOptions: record Options to tune the RocksDB storage backend.
BrokerStore::SQLiteOptions: record Options to tune the SQLite storage backend.

Detailed Interface

Options

BrokerComm::endpoint_name
Type:string
Attributes:&redef
Default:""

A name used to identify this endpoint to peers. .. bro:see:: BrokerComm::connect BrokerComm::listen

Types

BrokerComm::Data
Type:

record

d: opaque of BrokerComm::Data &optional

Opaque communication data.

BrokerComm::DataVector
Type:vector of BrokerComm::Data

Opaque communication data.

BrokerComm::EndpointFlags
Type:

record

auto_publish: bool &default = T &optional

Whether to restrict message topics that can be published to peers.

auto_advertise: bool &default = T &optional

Whether to restrict what message topics or data store identifiers the local endpoint advertises to peers (e.g. subscribing to events or making a master data store available).

Change communication behavior.

BrokerComm::EventArgs
Type:

record

name: string &optional

The name of the event. Not set if invalid event or arguments.

args: BrokerComm::DataVector

The arguments to the event.

Opaque event communication data.

BrokerComm::SendFlags
Type:

record

self: bool &default = F &optional

Send the message to the local endpoint.

peers: bool &default = T &optional

Send the message to peer endpoints that advertise interest in the topic associated with the message.

unsolicited: bool &default = F &optional

Send the message to peer endpoints even if they don’t advertise interest in the topic associated with the message.

Fine-grained tuning of communication behavior for a particular message.

BrokerComm::TableItem
Type:

record

key: BrokerComm::Data

val: BrokerComm::Data

Opaque communication data used as a convenient way to wrap key-value pairs that comprise table entries.

BrokerStore::BackendOptions
Type:

record

sqlite: BrokerStore::SQLiteOptions &default = [path=store.sqlite] &optional

rocksdb: BrokerStore::RocksDBOptions &default = [path=store.rocksdb] &optional

Options to tune the particular storage backends.

BrokerStore::ExpiryTime
Type:

record

absolute: time &optional

Absolute point in time at which to expire the entry.

since_last_modification: interval &optional

A point in time relative to the last modification time at which to expire the entry. New modifications will delay the expiration.

An expiry time for a key-value pair inserted in to a data store.

BrokerStore::QueryResult
Type:

record

status: BrokerStore::QueryStatus

Whether the query completed or not.

result: BrokerComm::Data

The result of the query. Certain queries may use a particular data type (e.g. querying store size always returns a count, but a lookup may return various data types).

The result of a data store query.

BrokerStore::QueryStatus
Type:

enum

BrokerStore::SUCCESS
BrokerStore::FAILURE

Whether a data store query could be completed or not.

BrokerStore::RocksDBOptions
Type:

record

path: string &default = "store.rocksdb" &optional

File system path of the database.

Options to tune the RocksDB storage backend.

BrokerStore::SQLiteOptions
Type:

record

path: string &default = "store.sqlite" &optional

File system path of the database.

Options to tune the SQLite storage backend.


Copyright 2013, The Bro Project. Last updated on July 19, 2016. Created using Sphinx 1.4.4.