The server logs should be the go-to place when you are trying to figure out why a node is not starting or why shards are not being allocated. The logs provide insight into what's wrong. Elasticsearch uses log4j to handle the logging. The logs are written to the following:
ES_HOME/logs/cluster_name.log
By default, the logs are rotated every day. If you look at the logs directory, you should find something like this:
In the preceding example, the cluster name is es-dev. The current logs are written to es-dev.log. If you want to change the default log level, you can do so using the cluster setting API as shown next. In the following command, we are changing the logging level for the root logger. Elasticsearch also supports changing the log level for a single module-like discovery:
PUT /_cluster/settings
{
"transient": {
"logger...