ElastiCache / Client / describe_cache_parameters

describe_cache_parameters#

ElastiCache.Client.describe_cache_parameters(**kwargs)#

Returns the detailed parameter list for a particular cache parameter group.

See also: AWS API Documentation

Request Syntax

response = client.describe_cache_parameters(
    CacheParameterGroupName='string',
    Source='string',
    MaxRecords=123,
    Marker='string'
)
Parameters:
  • CacheParameterGroupName (string) –

    [REQUIRED]

    The name of a specific cache parameter group to return details for.

  • Source (string) –

    The parameter types to return.

    Valid values: user | system | engine-default

  • MaxRecords (integer) –

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

    Default: 100

    Constraints: minimum 20; maximum 100.

  • Marker (string) – An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Return type:

dict

Returns:

Response Syntax

{
    'Marker': 'string',
    'Parameters': [
        {
            'ParameterName': 'string',
            'ParameterValue': 'string',
            'Description': 'string',
            'Source': 'string',
            'DataType': 'string',
            'AllowedValues': 'string',
            'IsModifiable': True|False,
            'MinimumEngineVersion': 'string',
            'ChangeType': 'immediate'|'requires-reboot'
        },
    ],
    'CacheNodeTypeSpecificParameters': [
        {
            'ParameterName': 'string',
            'Description': 'string',
            'Source': 'string',
            'DataType': 'string',
            'AllowedValues': 'string',
            'IsModifiable': True|False,
            'MinimumEngineVersion': 'string',
            'CacheNodeTypeSpecificValues': [
                {
                    'CacheNodeType': 'string',
                    'Value': 'string'
                },
            ],
            'ChangeType': 'immediate'|'requires-reboot'
        },
    ]
}

Response Structure

  • (dict) –

    Represents the output of a DescribeCacheParameters operation.

    • Marker (string) –

      Provides an identifier to allow retrieval of paginated results.

    • Parameters (list) –

      A list of Parameter instances.

      • (dict) –

        Describes an individual setting that controls some aspect of ElastiCache behavior.

        • ParameterName (string) –

          The name of the parameter.

        • ParameterValue (string) –

          The value of the parameter.

        • Description (string) –

          A description of the parameter.

        • Source (string) –

          The source of the parameter.

        • DataType (string) –

          The valid data type for the parameter.

        • AllowedValues (string) –

          The valid range of values for the parameter.

        • IsModifiable (boolean) –

          Indicates whether ( true) or not ( false) the parameter can be modified. Some parameters have security or operational implications that prevent them from being changed.

        • MinimumEngineVersion (string) –

          The earliest cache engine version to which the parameter can apply.

        • ChangeType (string) –

          Indicates whether a change to the parameter is applied immediately or requires a reboot for the change to be applied. You can force a reboot or wait until the next maintenance window’s reboot. For more information, see Rebooting a Cluster.

    • CacheNodeTypeSpecificParameters (list) –

      A list of parameters specific to a particular cache node type. Each element in the list contains detailed information about one parameter.

      • (dict) –

        A parameter that has a different value for each cache node type it is applied to. For example, in a Redis cluster, a cache.m1.large cache node type would have a larger maxmemory value than a cache.m1.small type.

        • ParameterName (string) –

          The name of the parameter.

        • Description (string) –

          A description of the parameter.

        • Source (string) –

          The source of the parameter value.

        • DataType (string) –

          The valid data type for the parameter.

        • AllowedValues (string) –

          The valid range of values for the parameter.

        • IsModifiable (boolean) –

          Indicates whether ( true) or not ( false) the parameter can be modified. Some parameters have security or operational implications that prevent them from being changed.

        • MinimumEngineVersion (string) –

          The earliest cache engine version to which the parameter can apply.

        • CacheNodeTypeSpecificValues (list) –

          A list of cache node types and their corresponding values for this parameter.

          • (dict) –

            A value that applies only to a certain cache node type.

            • CacheNodeType (string) –

              The cache node type for which this value applies.

            • Value (string) –

              The value for the cache node type.

        • ChangeType (string) –

          Indicates whether a change to the parameter is applied immediately or requires a reboot for the change to be applied. You can force a reboot or wait until the next maintenance window’s reboot. For more information, see Rebooting a Cluster.

Exceptions

  • ElastiCache.Client.exceptions.CacheParameterGroupNotFoundFault

  • ElastiCache.Client.exceptions.InvalidParameterValueException

  • ElastiCache.Client.exceptions.InvalidParameterCombinationException

Examples

Lists up to 100 user parameter values for the parameter group custom.redis2.8.

response = client.describe_cache_parameters(
    CacheParameterGroupName='custom-redis2-8',
    MaxRecords=100,
    Source='user',
)

print(response)

Expected Output:

{
    'Marker': '',
    'Parameters': [
        {
            'AllowedValues': 'yes,no',
            'ChangeType': 'requires-reboot',
            'DataType': 'string',
            'Description': 'Apply rehashing or not.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'activerehashing',
            'ParameterValue': 'yes',
            'Source': 'system',
        },
        {
            'AllowedValues': 'always,everysec,no',
            'ChangeType': 'immediate',
            'DataType': 'string',
            'Description': 'fsync policy for AOF persistence',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'appendfsync',
            'ParameterValue': 'everysec',
            'Source': 'system',
        },
        {
            'AllowedValues': 'yes,no',
            'ChangeType': 'immediate',
            'DataType': 'string',
            'Description': 'Enable Redis persistence.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'appendonly',
            'ParameterValue': 'no',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Normal client output buffer hard limit in bytes.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'client-output-buffer-limit-normal-hard-limit',
            'ParameterValue': '0',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Normal client output buffer soft limit in bytes.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'client-output-buffer-limit-normal-soft-limit',
            'ParameterValue': '0',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Normal client output buffer soft limit in seconds.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'client-output-buffer-limit-normal-soft-seconds',
            'ParameterValue': '0',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Pubsub client output buffer hard limit in bytes.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'client-output-buffer-limit-pubsub-hard-limit',
            'ParameterValue': '33554432',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Pubsub client output buffer soft limit in bytes.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'client-output-buffer-limit-pubsub-soft-limit',
            'ParameterValue': '8388608',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Pubsub client output buffer soft limit in seconds.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'client-output-buffer-limit-pubsub-soft-seconds',
            'ParameterValue': '60',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Slave client output buffer soft limit in seconds.',
            'IsModifiable': False,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'client-output-buffer-limit-slave-soft-seconds',
            'ParameterValue': '60',
            'Source': 'system',
        },
        {
            'AllowedValues': 'yes,no',
            'ChangeType': 'immediate',
            'DataType': 'string',
            'Description': 'If enabled, clients who attempt to write to a read-only slave will be disconnected. Applicable to 2.8.23 and higher.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.23',
            'ParameterName': 'close-on-slave-write',
            'ParameterValue': 'yes',
            'Source': 'system',
        },
        {
            'AllowedValues': '1-1200000',
            'ChangeType': 'requires-reboot',
            'DataType': 'integer',
            'Description': 'Set the number of databases.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'databases',
            'ParameterValue': '16',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The maximum number of hash entries in order for the dataset to be compressed.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'hash-max-ziplist-entries',
            'ParameterValue': '512',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The threshold of biggest hash entries in order for the dataset to be compressed.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'hash-max-ziplist-value',
            'ParameterValue': '64',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The maximum number of list entries in order for the dataset to be compressed.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'list-max-ziplist-entries',
            'ParameterValue': '512',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The threshold of biggest list entries in order for the dataset to be compressed.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'list-max-ziplist-value',
            'ParameterValue': '64',
            'Source': 'system',
        },
        {
            'AllowedValues': '5000',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Max execution time of a Lua script in milliseconds. 0 for unlimited execution without warnings.',
            'IsModifiable': False,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'lua-time-limit',
            'ParameterValue': '5000',
            'Source': 'system',
        },
        {
            'AllowedValues': '1-65000',
            'ChangeType': 'requires-reboot',
            'DataType': 'integer',
            'Description': 'The maximum number of Redis clients.',
            'IsModifiable': False,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'maxclients',
            'ParameterValue': '65000',
            'Source': 'system',
        },
        {
            'AllowedValues': 'volatile-lru,allkeys-lru,volatile-random,allkeys-random,volatile-ttl,noeviction',
            'ChangeType': 'immediate',
            'DataType': 'string',
            'Description': 'Max memory policy.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'maxmemory-policy',
            'ParameterValue': 'volatile-lru',
            'Source': 'system',
        },
        {
            'AllowedValues': '1-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Max memory samples.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'maxmemory-samples',
            'ParameterValue': '3',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Maximum number of seconds within which the master must receive a ping from a slave to take writes. Use this parameter together with min-slaves-to-write to regulate when the master stops accepting writes. Setting this value to 0 means the master always takes writes.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'min-slaves-max-lag',
            'ParameterValue': '10',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Number of slaves that must be connected in order for master to take writes. Use this parameter together with min-slaves-max-lag to regulate when the master stops accepting writes. Setting this to 0 means the master always takes writes.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'min-slaves-to-write',
            'ParameterValue': '0',
            'Source': 'system',
        },
        {
            'ChangeType': 'immediate',
            'DataType': 'string',
            'Description': 'The keyspace events for Redis to notify Pub/Sub clients about. By default all notifications are disabled',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'notify-keyspace-events',
            'Source': 'system',
        },
        {
            'AllowedValues': '16384-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The replication backlog size in bytes for PSYNC. This is the size of the buffer which accumulates slave data when slave is disconnected for some time, so that when slave reconnects again, only transfer the portion of data which the slave missed. Minimum value is 16K.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'repl-backlog-size',
            'ParameterValue': '1048576',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The amount of time in seconds after the master no longer have any slaves connected for the master to free the replication backlog. A value of 0 means to never release the backlog.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'repl-backlog-ttl',
            'ParameterValue': '3600',
            'Source': 'system',
        },
        {
            'AllowedValues': '11-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The timeout in seconds for bulk transfer I/O during sync and master timeout from the perspective of the slave, and slave timeout from the perspective of the master.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'repl-timeout',
            'ParameterValue': '60',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The amount of memory reserved for non-cache memory usage, in bytes. You may want to increase this parameter for nodes with read replicas, AOF enabled, etc, to reduce swap usage.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'reserved-memory',
            'ParameterValue': '0',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The limit in the size of the set in order for the dataset to be compressed.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'set-max-intset-entries',
            'ParameterValue': '512',
            'Source': 'system',
        },
        {
            'AllowedValues': 'yes,no',
            'ChangeType': 'immediate',
            'DataType': 'string',
            'Description': 'Configures if chaining of slaves is allowed',
            'IsModifiable': False,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'slave-allow-chaining',
            'ParameterValue': 'no',
            'Source': 'system',
        },
        {
            'AllowedValues': '-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The execution time, in microseconds, to exceed in order for the command to get logged. Note that a negative number disables the slow log, while a value of zero forces the logging of every command.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'slowlog-log-slower-than',
            'ParameterValue': '10000',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The length of the slow log. There is no limit to this length. Just be aware that it will consume memory. You can reclaim memory used by the slow log with SLOWLOG RESET.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'slowlog-max-len',
            'ParameterValue': '128',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'If non-zero, send ACKs every given number of seconds.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'tcp-keepalive',
            'ParameterValue': '0',
            'Source': 'system',
        },
        {
            'AllowedValues': '0,20-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'Close connection if client is idle for a given number of seconds, or never if 0.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'timeout',
            'ParameterValue': '0',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The maximum number of sorted set entries in order for the dataset to be compressed.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'zset-max-ziplist-entries',
            'ParameterValue': '128',
            'Source': 'system',
        },
        {
            'AllowedValues': '0-',
            'ChangeType': 'immediate',
            'DataType': 'integer',
            'Description': 'The threshold of biggest sorted set entries in order for the dataset to be compressed.',
            'IsModifiable': True,
            'MinimumEngineVersion': '2.8.6',
            'ParameterName': 'zset-max-ziplist-value',
            'ParameterValue': '64',
            'Source': 'system',
        },
    ],
    'ResponseMetadata': {
        '...': '...',
    },
}