Differences

This shows you the differences between two versions of the page.

Link to this comparison view

doc:logging:beliefstate:config_file [2014/03/06 14:08] (current)
winkler created
Line 1: Line 1:
 +====== Configuration File for the Belief State System ======
 +Many aspects of the belief state system can be configured from a central ''​config.cfg''​ configuration file (following the [[http://​www.hyperrealm.com/​libconfig/​|libconfig]] syntax). The file does not have to be placed in the ROS package directory of the belief state, but could potentially reside in three places:
 +  * The directory from which you run the beliefstate binary (''​./''​)
 +  * The ''​~/​.beliefstate/''​ directory (in your home directory)
 +  * The beliefstate package'​s directory
  
 +When placed in one of these directories,​ its name must be ''​config.cfg''​. Additionally,​ the file path (and name) for the configuration file can be manually specified when running the beliefstate binary:
 +<code bash>
 +$ rosrun beliefstate beliefstate --config <​path-to-config-file>/<​filename>​
 +</​code>​
 +
 +The predefined directories are tried in the order shown above, but a manually specified configuration file takes precedence over the others.
 +
 +===== Configuration Options =====
 +The following main sections with their respective options can be specified in the configuration file:
 +  * ''​persistent-data-storage''​ -- General settings for persistent data storage
 +    * ''​base-data-directory''​ (string): todo (pays respect to the [[doc:​logging:​beliefstate:​directory_resolution_tokens|directory resolution tokens]])
 +    * ''​use-mongodb''​ (bool): Enable the use of a MongoDB database server
 +    * ''​mongodb''​ -- Details about how to connect to MongoDB database servers
 +      * ''​host''​ (string): Hostname or IP of the MongoDB instance to use
 +      * ''​port''​ (integer): Port of the MongoDB instance to use
 +      * ''​database''​ (string): MongoDB database name to select
 +  * ''​experiment-data''​ -- Settings for naming conventions and storage places for individual experiment data
 +    * ''​experiment-name-mask''​ (string): todo
 +    * ''​symlink-name''​ (string): todo
 +  * ''​plugins''​ -- Settings specifying which plugins to load and how to parameterize them
 +    * ''​load-development-plugins''​ (bool): Load or ignore [[doc:​logging:​beliefstate:​development_plugins|development plugins]]
 +    * ''​search-paths''​ (list): Search paths for finding plugin binaries (pays respect to the [[doc:​logging:​beliefstate:​directory_resolution_tokens|directory resolution tokens]])
 +    * ''​load''​ (list): Comma-separated list of bare plugin-names to load when starting the system
 +    * ''​colors''​ (list): Comma-separated list of color-coding strings for plugin outputs
 +    * ''​individual-configurations''​ (list): Consists of individual (custom) configurations for plugins. These are groups of configuration settings, each of them holding at least a ''​plugin''​ field, plus additional custom fields:
 +      * ''​plugin''​ (string): Bare plugin name this settings-group is valid for
 +      * //field// (//type//): //field// can be any field name except for ''​plugin''​. The field values can be of //type//, with //type// being either a string, a bool, an integer, or a new group, allowing for nested configuration trees for the plugins. When setting a string value, this value pays respect to the [[doc:​logging:​beliefstate:​directory_resolution_tokens|directory resolution tokens]].
 +  * ''​miscellaneous''​ -- Misc settings (mostly cosmetic, controlling output verbosity)
 +    * ''​display-unhandled-events''​ (bool): Display a warning or ignore it every time an unhandled internal event gets dropped
 +    * ''​display-unhandled-service-events''​ (bool): Display a warning or ignore it every time an unhandled internal service event gets dropped