# Configuration

Since Crate has sensible defaults, there is no configuration needed at all for basic operation.

Crate is mainly configured via a configuration file, which is located at `config/crate.yml`. The vanilla configuration file distributed with the package has all available settings as comments in it along with the according default value.

The location of the config file can be specified upon startup like this:

    sh$ ./bin/crate -Des.config=/path/to/config.yml

Any option can be configured either by the config file or as system property. If using system properties the required prefix ‘es.’ will be ignored.

For example, configuring the cluster name by using system properties will work this way:

    sh$ ./bin/crate -Des.cluster.name=cluster

This is exactly the same as setting the cluster name in the config file:

    cluster.name = cluster

Settings will get applied in the following order where the latter one will overwrite the prior one:

> 1. internal defaults
> 2. system properties
> 3. options from config file

## Logging

Crate uses the internal logging abstraction of Elasticsearch and comes, out of the box, with Log4j. It tries to simplify log4j configuration by using YAML to configure it. The logging configuration file is at `config/logging.yml`