Data Collection and Communications Topology
The data collection topology consists of a single secure
daemon per host, a session for each workbench client connected to that host, and various data collectors that are controlled by the workbench client.
The collection stack is illustrated below. There is a two way control channel that is provided to provide two way messaging between any of the components. There is also a unidirectional data channel that is optimized to collect data from the application under test and propogate this data back to the Eclipse workbench.
The daemon is the bootstrapping point for all connections to the node hosting the application under test. Connections are accepted from local and remote workbench instances. The connections may be authenticated and encrypted based upon the authentication rules provided to the daemon. Once the connection is successfully authenticated, the daemon is responsible for creating a properly configured session for all further communications from the connected client.
|Sessions are essentially the same as the daemon. The primary difference is that the session has a configuration that is a subset of the master configuration provided to the daemon. The session is spawned into a separate process in order to localize all the functions for a specific client. |
|Data Collectors are created by application code with the intention of providing services to a client and/or externalize data so that it can be consumed by the client. The application code can create one or more data collection elements that will be registered with the daemon so that a client can discover and interact with the data collection element at any point during the lifetime of the data collector. |