Search code examples
riak

How to retrieve currently applied node configuration from Riak v2.0+


Showing currently applied configuration values

In v2.0+ of Riak there is a new command option: riak config effective

Which I read as it would tell you the current running values of riak.

At any time, you can get a snapshot of currently applied configurations through the command line. For a listing of all of the configs currently applied in the node


Config changes applied only on start of each node?

In multiple locations in Riak documentation there is reference like:

Remember that you must stop and then re-start each node when you change storage backends or modify any other configuration


Problem:

However when I made a change to a setting (I've tested this in both riak.conf and advanced.conf), I see the newest value when running: riak config effective

ie:

  1. Start node: riak start
  2. View current setting for log level: riak config effective | grep log.console.level

log.console.level = info

  1. Change the level to debug (something that will output a lot to console.log)
  2. Re-run: riak config effective | grep log.console.level, we get:

log.console.level = debug

  1. Checking the console log file for debug: cat /var/log/riak/console.log | grep debug give no results (indicating the config change has not been applied)

So the question is, how can I retrieve and verify what config setting each Riak node is running under?


Solution

  • When Riak starts, it creates two files: 'app..config' and 'vm..config'. The default location is in a 'generated.configs' directory under the platform data directory (usually /var/lib/riak).

    These files will contain the settings that were in place when Riak was started. The command riak config effective processes the current riak.conf and advanced.config files.