Skip to content

Ensure the program name for PostgreSQL syslog messages is correct

Description

The syslog_ident setting specifies the program name used to identify PostgreSQL messages in syslog logs. An example of a possible program name is "postgres".

Rationale

If this is not set correctly, it may be difficult or impossible to distinguish PostgreSQL messages from other messages in syslog logs.

Applies To

  • Databases

Tags

This rule is applied when the following tags are present:

Tag With Value
secureclouddb/provider aws
secureclouddb/service rds
secureclouddb/engine postgres

Default Rule

const { checkServerSetting } = module
/**
 * @param {Object} databaseSettings - database settings object
 * @returns {boolean} true if the program name for syslog is set correctly
 */

function validate(databaseSettings, parameters = { syslog_ident : 'postgres'}) {
    const settingName = 'syslog_ident'
    const expectedValue = parameters.syslog_ident
    const success = checkServerSetting(databaseSettings, settingName, expectedValue)
    return {
        success,
    }
}

// invoke
// TODO: add parameters
validate(databaseSettings);