Feature #1833
Feature #44: Implement basic introspection support
Remove crashed processes from database after a (configurable) while
Status: | Resolved | Start date: | 04/06/2014 | |
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | J. Moringen | % Done: | 100% | |
Category: | Introspection | |||
Target version: | rsb-0.11 |
Associated revisions
Added remote introspection in src/introspection/remote-introspection.lisp
fixes #1744, fixes #1830, fixes #1833
The remote introspection implementation consists of three layers:- `introspection-receiver' handles the event protocol and dispatches
broadcasts and replies - database object classes `{participant,process,host}-entry' are stored
and maintained in a `remote-introspection-database' - `remote-introspection' is a participant class that ties everything
together by instantiating and configuring `introspection-receiver'
instances and a database and performing timed updates.
- src/introspection/protocol.lisp (database-change-hook): new generic
function; return the change hook of an introspection database object
(introspection-survey): new generic function; survey remote objects
(introspection-ping): new generic function; ping a remote object
(entry-info): new generic function; return info instance associated to
entry object
(entry-parent): new generic function; return parent entry of an entry
(entry-children): new generic function; return child entries of an
entry - src/introspection/mixins.lisp (change-hook-mixin): new class; can be
mixed into database classes to provide a change hook
(database-change-hook): new method; return database change hook - src/introspection/remote-introspection.lisp: new file; contains remote
introspection implementation with `introspection-receiver',
`{participant,process,host}-entry', `remote-introspection-database'
and `remote-introspection' classes - src/introspection/package.lisp (package rsb.introspection): added
imported-from rsb.patterns.request-reply symbols remote-call-error,
future-done? future-result, server-method and call; added exported
symbols database-change-hook, introspection-survey,
introspection-ping, entry-info, participant-entry, entry-parent,
entry-children, process-entry and host-entry - test/introspection/remote-introspection.lisp: new file; unit tests for
remote introspection functionality - test/introspection/package.lisp (package rsb.introspection.test):
added imported-from rsb.introspection symbol
remote-introspection-database - rsb-introspection.asd (system rsb-introspection): added file
src/introspection/remote-introspection.lisp
(system rsb-introspection-test): added file
test/introspection/remote-introspection.lisp
History
#1 Updated by J. Moringen almost 10 years ago
- Subject changed from Remove crashed processes from database after a while to Remove crashed processes from database after a (configurable) while
#2 Updated by J. Moringen almost 10 years ago
- Status changed from New to In Progress
- % Done changed from 0 to 50
#3 Updated by J. Moringen over 9 years ago
- Category changed from Common Lisp to Introspection
#4 Updated by J. Moringen over 9 years ago
- Status changed from In Progress to Resolved
- % Done changed from 50 to 100
Applied in changeset rsb-cl|708c28e28fd9948726c29b8e3d7e5839c560947a.