Appendix J. EMD

The Enterprise Management Database (EMD) application is in charge of all communication between the database and other EnlightenDSM components. EMD consists of three components:

An RPC-based server, emdd communicates with the following EnlightenDSM components: Events agent, Sys Admin DSA, Status Map, PEP, and the user interface.

The communication layer between emdd and the database is ODBC compliant. Our ODBC drivers are supplied by Visigenic Software Inc. The drivers are Core and Level 1 API-conformant and Minimum and Core SQL-conformant.

Basic Design

EMD registers all its procedures when it comes up and then waits for incoming requests. The emdd daemon also checks daily to see if any data in the database needs to be expired.

When servicing incoming requests, EMD (the emdd daemon) forks itself so it can handle more than one request at a time.

Relational Database

EnlightenDSM includes a relational database as part of EMD. The following data will be stored in the database:

  • Pool configurations

  • Session preferences

  • Host overrides

  • User authorizations

  • Add user templates

  • Archive device configurations

  • Events log data

  • Events alarm data

  • Software and hardware inventory lists generated by events

  • Acknowledgment of events from the status map

  • Backup catalogs

  • The scheduling of backups

  • Host notes

The following data will not be stored in a database:

  • Events host-specific testtab files

  • Events AgentENL.config file data

  • Snapshots of disks/filesystems

Directory Structure

The EMD directory structure is:

  • INSTAL-PATH/bin

  • INSTALL-PATH/dbtables

  • INSTALL-PATH/odbc

  • INSTALL-PATH/informix

  • INSTALL-PATH/msg

  • INSTALL-PATH/log

where:

bin  

Contains the emdd daemon and its logfile emdd.log

dbtables  

Contains the database tables, the database's transaction log, and a script to create the database tables

odbc  

Contains the ODBC drivers and other related components

informix  

Contains the Informix SE products

msg 

Contains any message catalog files

log 

Contains the emdd'd logfile emdd.log

Database Access

The database and its tables are owned by the user dbenl. This is a new user that is created at installation time. User dbenl's home directory will contain an odbc initialization file .odbc.ini, and its .cshrc or .profile file will contain the environment variables necessary to run Informix and the ODBC driver.

By default, only user dbenl has access to the database. dbenl must start the daemon emdd or the daemon will not be able to access the database. The database administrator at your installation site may change the database privileges if he/she so chooses.


Warning: Do not modify or rename the .odbc.ini initialization file.Doing so will compromise all EMD usage and connections fail.


Manually Killing/Invoking EMD

Sometimes you may want to manually kill or invoke EMD, for example, when you're bringing down the system for maintenance or upgrading to a new release of EnlightenDSM.


Note: You must terminate EMD before backing up any database tables and then manually re-invoke them afterwards.

The rest of this section details how to do this for EMD.

Terminating EMD

You can bring down the emdd daemon with the following CLI command:

stop_enl_daemons

This sends an interrupt to the daemon and allows it to shut down gracefully. The daemon waits for any child processes to exit before shutting down. This may take up to 10 seconds.

Starting EMD

You can invoke the emdd daemon with the following CLI command:

start_enl_daemons

This starts the daemon in the background and sets the log level to 0. The logfile will generated, but only error messages will be logged (if any occur).

Audit Log Data

Audit Log Reports

e_audit_report

SYNOPSIS

$EMD/bin/e_audit_report [-from time-string | beginning] [-to time-string | now] [-guihost hostname] [-managedhost hostname] [-dsmuser username]

DESCRIPTION

e_audit_report generates a report of dsm user audit information stored in the GMS. There are several arguments to this command that enable a user to query the database for specific information based on the time a action was inserted into the audit log, the host the audited operation was execute from, the host that the audited operation was execute on. and the dsm user name of the operator responsible for the audited operation. Any arguments that are specified are combined with logical ands to form a single search expression.

Executing e_audit_report without arguments prints all the audit information stored in the GMS sorted in chronological order.

Executing e_audit_report with a -from and/or a -to argument selects and prints the audit log entries that match audited operations executed during the times specified by a time-string in Enlighten Time Format. The time-string can represent an absolute time, such as Apr 15 1998 at 11:59pm, or it can represent a relative time in the past, such as '1 day' or '2 weeks' ago. Note that the command operates in the time zone set for the system.

Executing e_audit_report with a -guihost argument selects and prints the audit log entries that match audited operations executed from the gui host specified by hostname. A gui host is a machine which runs the EnlightenDSM gui, xenln.

Executing e_audit_report with a -managedhost argument selects and prints the audit log entries that match audited operations executed on the host specified by hostname. A managed host is a machine which runs the EnlightenDSM agents.

Executing e_audit_report with a -dsmuser argument selects and prints the audit log entries that match audited operations executed by a EnlightenDSM user specified by username.

e_audit_report prints the report to standard out and has the following format:

Time                           [email protected]        Target Host   Event
---------------------------------------------------------------------------------------------
Nov 15 1998 at 8:03:15 am      [email protected]      kansas        User account 'janed' successfully created.
Nov 15 1998 at 8:03:37am        [email protected]     lapd          Pool 'cops' successfully modified.
Nov 15 1998 at 1:35:00 pm       [email protected]     kansas        Printer 'anvil' successfully enabled.
Nov 15 1998 at 1:35:01 pm       john[email protected]     kentucky      Printer 'anvil' successfully enabled.

USAGE

The following options are supported:

-from time-string

-from beginning 


Select audit log entries inserted since the time specified in the time-string. The time is specified in Enlighten Time Format. The keyword beginning may be used to specify the first chronological entry in the audit log. If this argument is used with the -to argument then the audit log entries occurring between the two times will be selected.

-to time-string

-to now 


Select audit log entries inserted before the time specified in the time-string. The time is specified in Enlighten Time Format. The keyword now may be used to specify the last chronological entry in the audit log. If this argument is used with the -from argument then the audit log entries occurring between the two times will be selected.

-guihost hostname  


Select audit log entries of audited operations executed from the gui host specified by hostname.

-managedhost hostname  


Select audit log entries of audited operations executed on the managed host specified by hostname.

-dsmuser username  


Select audit log entries of audited operations executed by the EnlightenDSM user specified by username.

EXAMPLES

example% e_audit_report example% e_audit_report -from beginning example% e_audit_report -from beginning -to now

All three of these commands are equivalent. They print all the connects stored in the Audit Log Table in the GMS.

example% e_audit_report -from Nov 30 1998 at 8:00 am

This command prints all the contents stored in the Audit Log Table in the GMS inserted since Nov 30 1998 at 8:00 am.

example% e_audit_report -from 1 week

This command prints all the contents stored in the Audit Log Table in the GMS inserted since 1 week ago.

example% e_audit_report -from 10 days -to 5 days

This command prints all the contents stored in the Audit Log Table in the GMS inserted betweeing 10 and 5 days ago.

example% e_audit_report -from 1 hour

This command prints all the contents stored in the Audit Log Table in the GMS inserted within the last hour.

example% e_audit_report -dsmuser johnd

This command prints all the entries stored in the Audit Log Table in the GMS that were inserted as a result of an action taken by dsmuser johnd.

example% e_audit_report -guihost chico

This command prints all the entries stored in the Audit Log Table in the GMS that were inserted as a result of an action executed from gui host chico.

example% e_audit_report -managedhost kansas

This command prints all the entries stored in the Audit Log Table in the GMS that were inserted as a result of an action executed on managed host kansas.

example% e_audit_report -from Oct 1 1998 -to 3 days -dsmuser johnd -guihost chico

This command prints all the entries stored in the Audit Log Table in the GMS that were inserted between midnight Oct 1 1998 exactly 3 days ago as a result of an action taken by dsmuser johnd from gui host chico.

EXIT STATUS

0 

All information was printed successfully.

>0 

Invalid arguments. Command failed.

SEE ALSO

Appendix C, Time Formats in the EnlightenDSM Reference Manual.

Purging Audit Log Data

e_rm_audit_events 

SYNOPSIS

$EMD/bin/e_rm_audit_events [-from time-string | beginning] [-to time-string | now] [-guihost hostname] [-managedhost hostname] [-dsmuser username]

DESCRIPTION

e_rm_audit_events selectively removes audit entries from the audit log store in the GMS. There are several arguments to this command that enable a user to query the database for specific information based on the time a action was inserted into the audit log, the host the audited operation was execute from, the host that the audited operation was execute on. and the dsm user name of the operator responsible for the audited operation. Any arguments that are specified are combined with logical ands to form a single search expression.

Executing e_rm_audit_events without arguments deletes all the audit information stored in the GMS.

Executing e_rm_audit_events with a -from and/or a -to argument selects and deletes the audit log entries that match audited operations executed during the times specified by a time-string in Enlighten Time Format. The time-string can represent an absolute time, such as Apr 15 1998 at 11:59pm, or it can represent a relative time in the past, such as '1 day' or '2 weeks' ago. Note that the command operates in the time zone set for the system.

Executing e_rm_audit_events with a -guihost argument selects and deletes the audit log entries that match audited operations executed from the gui host specified by hostname. A gui host is a machine which runs the EnlightenDSM gui, xenln.

Executing e_rm_audit_events with a -managedhost argument selects and deletes the audit log entries that match audited operations executed on the host specified by hostname. A managed host is a machine which runs the EnlightenDSM agents.

Executing e_rm_audit_events with a -dsmuser argument selects and deletes the audit log entries that match audited operations executed by an EnlightenDSM user specified by username.

USAGE

The following options are supported:

-from time-string

-from beginning 


Select audit log entries inserted since the time specified in the time-string. The time is specified in Enlighten Time Format. The keyword beginning may be used to specify the first chronological entry in the audit log. If this argument is used with the -to argument then the audit log entries occurring between the two times will be selected.

-to time-string

-to now 


Select audit log entries inserted before the time specified in the time-string. The time is specified in Enlighten Time Format. The keyword now may be used to specify the last chronological entry in the audit log. If this argument is used with the -from argument then the audit log entries occurring between the two times will be selected.

-guihost hostname  


Select audit log entries of audited operations executed from the gui host specified by hostname.

-managedhost hostname 


Select audit log entries of audited operations executed on the managed host specified by hostname.

-dsmuser username  


Select audit log entries of audited operations executed by the EnlightenDSM user specified by username.

EXAMPLES

example% e_rm_audit_events example% e_rm_audit_events -from beginning example% e_rm_audit_events -from beginning -to now

All three of these commands are equivalent. They delete all the entries stored in the Audit Log Table in the GMS.

example% e_rm_audit_events -from Nov 30 1998 at 8:00 am

This command deletes all the entries stored in the Audit Log Table in the GMS inserted since Nov 30 1998 at 8:00 am.

example% e_rm_audit_events -from 1 week

This command deletes all the entries stored in the Audit Log Table in the GMS inserted since 1 week ago.

example% e_rm_audit_events -from 10 days -to 5 days

This command deletes all the entries stored in the Audit Log Table in the GMS inserted betweeing 10 and 5 days ago.

example% e_rm_audit_events -from 1 hour

This command deletes all the entries stored in the Audit Log Table in the GMS inserted within the last hour.

example% e_rm_audit_events -dsmuser johnd

This command deletes all the entries stored in the Audit Log Table in the GMS that were inserted as a result of an action taken by dsmuser johnd.

example% e_rm_audit_events -guihost chico

This command deletes all the entries stored in the Audit Log Table in the GMS that were inserted as a result of an action executed from gui host chico.

example% e_rm_audit_events -managedhost kansas

This command deletes all the entries stored in the Audit Log Table in the GMS that were inserted as a result of an action executed on managed host kansas.

example% e_rm_audit_events -from Oct 1 1998 -to 3 days -dsmuser johnd -guihost chico

This command deletes all the entries stored in the Audit Log Table in the GMS that were inserted between midnight Oct 1 1998 exactly 3 days ago as a result of an action taken by dsmuser johnd from gui host chico.

EXIT STATUS

0 

All information was printed successfully.

>0 

Invalid arguments. Command failed.

SEE ALSO

Appendix C, “Time Formats”