Integrating Compliance Check Results with Other Tools

Integrate Oracle Orachk and Oracle Exachk compliance check results into Oracle Enterprise Manager and other third-party tools.

Integrating Compliance Check Results with Oracle Enterprise Manager

Integrate Oracle Orachk and Oracle Exachk compliance check results with Oracle Enterprise Manager to monitor compliance information through Oracle Enterprise Manager dashboards and compliance standards.

Oracle Enterprise Manager Cloud Control 13.1 and 13.2 support integration with Oracle Orachk and Oracle Exachk through the Oracle Enterprise Manager ORAchk Healthchecks Plug-in.

For Oracle Enterprise Manager Cloud Control 12c release 12.1.0.5 and earlier releases, the Oracle Engineered System Healthchecks Plug-in provides integration with Oracle Orachk and Oracle Exachk.

Starting with Oracle Enterprise Manager Cloud Control 13.1, Oracle Orachk and Oracle Exachk results are integrated with the Oracle Enterprise Manager compliance framework.

The integration enables you to:

  • Integrate Oracle Orachk and Oracle Exachk results into the Oracle Enterprise Manager compliance framework.
  • View compliance results in native Oracle Enterprise Manager compliance dashboards.
  • Browse compliance checks by compliance standard.
  • View targets evaluated against a compliance standard.
  • Review violations and average compliance scores.
  • Drill down from a compliance standard to individual check results.
  • Review check results by target.

Related checks are grouped into compliance standards, providing a consolidated view of targets, violations, and compliance scores.

From an individual compliance standard, you can drill down into specific compliance check results and review the results for individual targets.

For information about Oracle Exachk compliance standards for Exadata Engineered Systems managed by Oracle Enterprise Manager using Oracle Autonomous Health Framework (AHF), see AHF Exachk Compliance Standards.

Note:

Oracle Orachk and Oracle Exachk do not require additional licenses. However, applicable Oracle Enterprise Manager licenses are required to use Oracle Enterprise Manager functionality.

For more information, see:

Integrating Compliance Check Results with Third-Party Tools

Integrate Oracle Orachk and Oracle Exachk compliance check results with third-party log monitoring and analytics tools such as Elasticsearch and Kibana.

Oracle Orachk and Oracle Exachk generate JSON results containing system attributes that can be used for filtering, analysis, and dashboard visualization.

Available attributes can include:

  • Engineered System type
  • Engineered System version
  • Hardware type
  • Node name
  • Operating system version
  • Rack identifier
  • Rack type
  • Database version

For example, you can use Kibana dashboards to view compliance check results across a data center and filter the results using combinations of the available system attributes.

Oracle Orachk and Oracle Exachk create JSON output in the upload directory of the report output directory.

For Oracle Orachk:

<Report_Output_Dir>/upload/mymachine_orachk_results.json
<Report_Output_Dir>/upload/mymachine_orachk_exceptions.json

For Oracle Exachk:

<Report_Output_Dir>/upload/mymachine_exachk_results.json
<Report_Output_Dir>/upload/mymachine_exachk_exceptions.json

To send JSON results to the syslog daemon:

  1. Run Oracle Orachk or Oracle Exachk with the -syslog option.

    For Oracle Orachk:

    orachk -syslog

    For Oracle Exachk:

    exachk -syslog
  2. Verify the syslog configuration.

    Oracle Orachk and Oracle Exachk use the following message levels:

    • CRIT
    • ERR
    • WARN
    • INFO

    Generate test messages for each level:

    logger -p user.crit crit_message
    logger -p user.err err_message
    logger -p user.warn warn_message
    logger -p user.info info_message
  3. Verify that each test message appears in the configured system message location.

    For example:

    /var/adm/messages

Integrating Compliance Check Results with a Custom Application

Oracle Orachk and Oracle Exachk can upload collection results from multiple systems into a central database, enabling compliance check results to be consumed across an enterprise.

You can use Oracle Health Check Collections Manager or a custom application to consume these results.

At the end of a collection, results can be uploaded into the following database tables:

TableContent
rca13_docsComplete zipped collection results.
auditcheck_resultCompliance check results.
auditcheck_patch_resultPatch check results.

If Oracle Health Check Collections Manager is installed, its installation process creates these tables.

If the tables do not exist, create them using the following DDL.

RCA13_DOCS Table

CREATE TABLE RCA13_DOCS (
    DOC_ID          NUMBER DEFAULT to_number(sys_guid(),'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX') NOT NULL ENABLE,
    COLLECTION_ID   VARCHAR2(40 BYTE),
    FILENAME        VARCHAR2(1000 BYTE) NOT NULL ENABLE,
    FILE_MIMETYPE   VARCHAR2(512 BYTE),
    FILE_CHARSET    VARCHAR2(512 BYTE),
    FILE_BLOB       BLOB NOT NULL ENABLE,
    FILE_COMMENTS   VARCHAR2(4000 BYTE),
    TAGS            VARCHAR2(4000 BYTE),
    ATTR1           VARCHAR2(200 BYTE),
    UPLOADED_BY     VARCHAR2(200 BYTE) DEFAULT USER,
    UPLOADED_ON     TIMESTAMP(6) DEFAULT systimestamp,
    SR_BUG_NUM      VARCHAR2(20 BYTE),
    CONSTRAINT RCA13_DOCS_PK PRIMARY KEY (DOC_ID),
    CONSTRAINT RCA13_DOCS_UK1 UNIQUE (FILENAME)
);

AUDITCHECK_RESULT Table

CREATE TABLE auditcheck_result (
    COLLECTION_DATE          TIMESTAMP NOT NULL ENABLE,
    CHECK_NAME               VARCHAR2(256),
    PARAM_NAME               VARCHAR2(256),
    STATUS                   VARCHAR2(256),
    STATUS_MESSAGE           VARCHAR2(256),
    ACTUAL_VALUE             VARCHAR2(256),
    RECOMMENDED_VALUE        VARCHAR2(256),
    COMPARISON_OPERATOR      VARCHAR2(256),
    HOSTNAME                 VARCHAR2(256),
    INSTANCE_NAME            VARCHAR2(256),
    CHECK_TYPE               VARCHAR2(256),
    DB_PLATFORM              VARCHAR2(256),
    OS_DISTRO                VARCHAR2(256),
    OS_KERNEL                VARCHAR2(256),
    OS_VERSION               NUMBER,
    DB_VERSION               VARCHAR2(256),
    CLUSTER_NAME             VARCHAR2(256),
    DB_NAME                  VARCHAR2(256),
    ERROR_TEXT               VARCHAR2(256),
    CHECK_ID                 VARCHAR2(40),
    NEEDS_RUNNING            VARCHAR2(100),
    MODULES                  VARCHAR2(4000),
    DATABASE_ROLE            VARCHAR2(100),
    CLUSTERWARE_VERSION      VARCHAR2(100),
    GLOBAL_NAME              VARCHAR2(256),
    UPLOAD_COLLECTION_NAME   VARCHAR2(256) NOT NULL ENABLE,
    AUDITCHECK_RESULT_ID     VARCHAR2(256) DEFAULT sys_guid() NOT NULL ENABLE,
    COLLECTION_ID            VARCHAR2(40),
    TARGET_TYPE              VARCHAR2(128),
    TARGET_VALUE             VARCHAR2(256),
    CONSTRAINT AUDITCHECK_RESULT_PK
        PRIMARY KEY (AUDITCHECK_RESULT_ID)
);

AUDITCHECK_PATCH_RESULT Table

CREATE TABLE auditcheck_patch_result (
    COLLECTION_DATE         TIMESTAMP(6) NOT NULL,
    HOSTNAME                VARCHAR2(256),
    ORACLE_HOME_TYPE        VARCHAR2(256),
    ORACLE_HOME_PATH        VARCHAR2(256),
    ORACLE_HOME_VERSION     VARCHAR2(256),
    PATCH_NUMBER            NUMBER,
    CLUSTER_NAME            VARCHAR2(256),
    DESCRIPTION             VARCHAR2(256),
    PATCH_TYPE              VARCHAR2(128),
    APPLIED                 NUMBER,
    UPLOAD_COLLECTION_NAME  VARCHAR2(256),
    RECOMMENDED             NUMBER
);

Viewing and Reattempting Failed Uploads

Oracle Orachk and Oracle Exachk record the status of database uploads in:

<collection_dir>/outfiles/check_env.out

For example, the following values indicate that database upload is configured but the most recent upload was unsuccessful:

DATABASE_UPLOAD_SETUP=1
DATABASE_UPLOAD_STATUS=0

Viewing Failed Uploads

Use the -checkfaileduploads option to list collections that failed to upload.

For Oracle Orachk:

orachk -checkfaileduploads

For Oracle Exachk:

exachk -checkfaileduploads

Example:

$ orachk -checkfaileduploads

List of failed upload collections

/home/oracle/orachk_myserver_042016_232011.zip
/home/oracle/orachk_myserver_042016_231732.zip
/home/oracle/orachk_myserver_042016_230811.zip
/home/oracle/orachk_myserver_042016_222227.zip
/home/oracle/orachk_myserver_042016_222043.zip

Reattempting Failed Uploads

Use the -uploadfailed option to retry failed collection uploads.

To retry all failed uploads:

orachk -uploadfailed all

or:

exachk -uploadfailed all

To retry specific collections, provide a comma-separated list:

orachk -uploadfailed "<failed_collection_1>,<failed_collection_2>"

For example:

orachk -uploadfailed "/home/oracle/orachk_myserver_042016_232011.zip,/home/oracle/orachk_myserver_042016_231732.zip"

For Oracle Exachk:

exachk -uploadfailed "<failed_collection_1>,<failed_collection_2>"

Note:

You cannot upload a collection that was already uploaded successfully because the database SQL unique constraint prevents duplicate uploads.