5 Backend for monitoring the server's activity.
9 COMPILE AND CONFIGURATION OPTIONS
11 It must be explicitly enabled by configuring with
15 set; then it must be activated by placing in slapd.conf the database
20 The suffix "cn=Monitor" is implicitly activated (it cannot be given
21 as a suffix of the database as usually done for conventional backends).
22 Note that the "cn=Monitor" naming context appears in the rootDSE
23 (FIXME: do we really want this?)
25 A bind operation is provided; at present it allows to bind as the
26 backend rootdn. As a result, the backend supports the rootdn/rootpw
27 directives (only simple bind at present).
31 NAMING CONTEXT AND TREE STRUCTURE
33 The backend naming context is "cn=Monitor"; the first level entries
34 represent the monitored subsystems. It is implemented in a modular way,
35 to ease the addition of new subsystems.
41 All the subsystems get a default "cn" attribute, represented by the
42 subsystem's name, and they all have "top", "monitor" and "extensibleObject"
44 "extensibleObject" is used, and the "description" attribute
45 is used to hold the monitor information of each entry.
51 Most of the sybsystems contain an additional depth level, represented
52 by detailed item monitoring.
53 All the entries undergo an update operation, if a related method is
54 defined, prior to being returned. Moreover, there's a mechanism to
55 allow volatile entries to be defined, and generated on the fly when
56 requested. As an instance, the connection statistics are updated
57 at each request, while each active connection data is created on the
60 One nice feature of this solution is that granular ACLs can be applied
67 The backend currently supports:
78 Currently some subsystems are partially supported. "Partially"
79 means their entries are correctly generated, but sometimes only
80 partially useful information is provided.
102 It contains the description of the devices the server is currently
109 The main entry contains the naming context of each configured database;
110 the subentries contain, for each database, the type and the naming
117 The main entry contains the type of backends enabled at compile time;
118 the subentries, for each backend, contain the type of the backend.
119 It should also contain the modules that have been loaded if dynamic
120 backends are enabled.
126 It contains the maximum number of threads enabled at startup and the
145 The main entry is empty; it should contain some statistics on the number
147 Dynamic subentries are created for each open connection, with stats on
148 the activity on that connection (the format will be detailed later).
149 There are two special subentries that show the number of total and
150 current connections respectively.
154 READ WAITERS SUBSYSTEM
156 It contains the number of current read waiters.
160 WRITE WAITERS SUBSYSTEM
162 It contains the number of current write waiters.
168 It contains the currently active log items. The "Log" subsystem allows
169 user modify operations on the "description" attribute, whose values MUST
170 be in the list of admittable log switches:
187 These values can be added, replaced or deleted; they affect what
188 messages are sent to the syslog device.
194 It shows some statistics on the operations performed by the server:
203 It shows some statistics on the data sent by the server:
214 It contains two subentries with the start time and the current time
221 This document is in a very early stage of maturity and will
222 probably be rewritten many times before the monitor backend is released.
226 AUTHOR: Pierangelo Masarati <ando@OpenLDAP.org>