Pierangelo Masarati wrote:
Well, monitor schema is schema like any other. Since slapd puts all of its schema in there, it should be there:
tried command exactly as you stated - no objectclasses or attributetypes for 'monitor' - did the same with + - can send full list if required - I could not see any relevant schema - the original slapd.conf had includes for core, cosine and inetorgperson only- but I'm on cn=config though I can't see what difference that would make? Am I missing an include?
That schema is hardcoded in back-monitor code (it is registered run-time when the monitor backend is initialized). If you don't see it, probably you're not loading the back_monitor module or something like that.
I had a loadmodule back_monitor.la in slapd.conf it was converted to olcModuleLoad {1)monitor_back.la - tried changing from .la to .so for all overlays - no effect (OK I tried) included relevant log extract below: Feb 4 15:30:38 host1 slapd[84777]: @(#) $OpenLDAP: slapd 2.4.7 (Jan 25 2008 03:03:41) $ ron@host1.zytrax.com:/usr/ports/net/openldap24-server/work/openldap-2.4.7/servers/slapd Feb 4 15:30:38 host1 slapd[84777]: => str2entry: "dn: cn=module{0} objectClass: olcModuleList cn: module{0} olcModuleLoad: {0}back_bdb.so olcModuleLoad: {1}back_monitor.so olcModuleLoad: {2}back_meta.so structuralObjectClass: olcModuleList entryUUID: 7d0c2126-6638-102c-8fa3-3be499f3820c creatorsName: cn=config createTimestamp: 20080203001245Z entryCSN: 20080203043824.585318Z#000000#000#000000 modifiersName: cn=admin,cn=config modifyTimestamp: 20080203043824Z " ...... Feb 4 15:30:38 host1 slapd[84777]: loaded module back_bdb.so Feb 4 15:30:38 host1 slapd[84777]: bdb_back_initialize: initialize BDB backend Feb 4 15:30:38 host1 slapd[84777]: bdb_back_initialize: Berkeley DB 4.6.19: (August 10, 2007) Feb 4 15:30:38 host1 slapd[84777]: module back_bdb.so: null module registered Feb 4 15:30:38 host1 slapd[84777]: loaded module back_monitor.so Feb 4 15:30:38 host1 slapd[84777]: module back_monitor.so: null module registered Feb 4 15:30:38 host1 slapd[84777]: loaded module back_meta.so Feb 4 15:30:38 host1 slapd[84777]: module back_meta.so: null module registered .... Feb 4 15:30:38 host1 slapd[84777]: => str2entry: "dn: olcDatabase={2}monitor objectClass: olcDatabaseConfig olcDatabase: {2}monitor olcLastMod: TRUE olcMaxDerefDepth: 15 olcReadOnly: FALSE olcRootDN: cn=admin,cn=monitor olcRootPW:: c2VjcmV0 structuralObjectClass: olcDatabaseConfig entryUUID: 7d236bd8-6638-102c-8fab-3be499f3820c creatorsName: cn=config createTimestamp: 20080203001245Z olcMonitoring: TRUE entryCSN: 20080203021339.946650Z#000000#000#000000 modifiersName: cn=admin,cn=config modifyTimestamp: 20080203021339Z " Feb 4 15:30:38 host1 slapd[84777]: >>> dnPrettyNormal: <olcDatabase={2}monitor> Feb 4 15:30:38 host1 slapd[84777]: <<< dnPrettyNormal: <olcDatabase={2}monitor>, <olcDatabase={2}monitor> Feb 4 15:30:38 host1 slapd[84777]: >>> dnNormalize: <cn=config> Feb 4 15:30:38 host1 slapd[84777]: <<< dnNormalize: <cn=config> Feb 4 15:30:38 host1 slapd[84777]: >>> dnNormalize: <cn=admin,cn=config> Feb 4 15:30:38 host1 slapd[84777]: <<< dnNormalize: <cn=admin,cn=config> Feb 4 15:30:38 host1 slapd[84777]: <= str2entry(olcDatabase={2}monitor) -> 0x82e1054 Feb 4 15:30:38 host1 slapd[84777]: => test_filter Feb 4 15:30:38 host1 slapd[84777]: PRESENT Feb 4 15:30:38 host1 slapd[84777]: => access_allowed: search access to "olcDatabase={2}monitor,cn=config" "objectClass" requested Feb 4 15:30:38 host1 slapd[84777]: <= root access granted Feb 4 15:30:38 host1 slapd[84777]: => access_allowed: search access granted by manage(=mwrscxd) Feb 4 15:30:38 host1 slapd[84777]: <= test_filter 6 Feb 4 15:30:38 host1 slapd[84777]: >>> dnPrettyNormal: <cn=admin,cn=monitor> Feb 4 15:30:38 host1 slapd[84777]: <<< dnPrettyNormal: <cn=admin,cn=monitor>, <cn=admin,cn=monitor> Feb 4 15:30:38 host1 slapd[84777]: >>> dnPrettyNormal: <cn=Monitor> Feb 4 15:30:38 host1 slapd[84777]: <<< dnPrettyNormal: <cn=Monitor>, <cn=monitor> Feb 4 15:30:38 host1 slapd[84777]: >>> dnPrettyNormal: <cn=admin,cn=monitor> Feb 4 15:30:38 host1 slapd[84777]: <<< dnPrettyNormal: <cn=admin,cn=monitor>, <cn=admin,cn=monitor> Feb 4 15:30:38 host1 slapd[84777]: send_ldap_result: conn=-1 op=0 p=0 Feb 4 15:30:38 host1 slapd[84777]: send_ldap_result: err=0 matched="" text="" Feb 4 15:30:38 host1 slapd[84777]: matching_rule_use_init ....... Feb 4 15:30:39 host1 slapd[84778]: slapd startup: initiated. Feb 4 15:30:39 host1 slapd[84778]: backend_startup_one: starting "cn=config" Feb 4 15:30:39 host1 slapd[84778]: config_back_db_open Feb 4 15:30:39 host1 slapd[84778]: backend_startup_one: starting "dc=example,dc=com" Feb 4 15:30:39 host1 slapd[84778]: bdb_db_open: "dc=example,dc=com" Feb 4 15:30:39 host1 slapd[84778]: bdb_db_open: database "dc=example,dc=com": dbenv_open(/var/db/openldap/example-com). Feb 4 15:30:39 host1 slapd[84778]: backend_startup_one: starting "cn=Monitor" Feb 4 15:30:39 host1 slapd[84778]: >>> dnNormalize: <cn=Monitor> Feb 4 15:30:39 host1 slapd[84778]: <<< dnNormalize: <cn=monitor> ......
p.
Ing. Pierangelo Masarati OpenLDAP Core Team
SysNet s.r.l. via Dossi, 8 - 27100 Pavia - ITALIA http://www.sys-net.it
Office: +39 02 23998309 Mobile: +39 333 4963172 Email: pierangelo.masarati@sys-net.it