Copy-edited the log rotation page (docs)

This commit is contained in:
Troy McConaghy 2018-09-15 13:47:34 +02:00
parent 3cb0f8e2ab
commit c847e0d0ac

View File

@ -4,45 +4,51 @@ SPDX-License-Identifier: (Apache-2.0 AND CC-BY-4.0)
Code is Apache-2.0 and docs are CC-BY-4.0 Code is Apache-2.0 and docs are CC-BY-4.0
---> --->
# Log rotation for a BigchainDB node # Logging and Log Rotation
Each BigchainDB node comprises of 3 main services: Each BigchainDB node runs:
- BigchainDB server
- Tendermint
- MongoDB
To run a BigchainDB test network/dev node, that is expected to run for relatively longer periods - MongoDB
of time, we need to consider the log rotation of these services i.e. we do not want the logs taking - BigchainDB Server
up large amounts of storage and making the node unresponsive or get into bad state. - Tendermint
## Log rotation for MongoDB When running a BigchainDB node for long periods
of time, we need to consider doing log rotation, i.e. we do not want the logs taking
up large amounts of storage and making the node unresponsive or getting it into a bad state.
Currently, we leave the log rotation of MongoDB to the BigchainDB administrator. For more notes on MongoDB log rotation ## MongoDB Logging and Log Rotation
please refer to [MongoDB docs](https://docs.mongodb.com/v3.6/tutorial/rotate-log-files/).
## Log rotation for BigchainDB See the MongoDB docs about
[logging](https://docs.mongodb.com/v3.6/administration/monitoring/#monitoring-standard-loggging)
and [log rotation](https://docs.mongodb.com/v3.6/tutorial/rotate-log-files/).
Log rotation is baked into BigchainDB server using the `logging` module. BigchainDB server logs information into the following files: ## BigchainDB Server Logging and Log Rotation
- `bigchaindb.log`
- `bigchaindb-errors.log`
- `bigchaindb-benchmark.log`
These log files are created by default in the directory from where you run `bigchaindb start`, if you are using `monit`, from BigchainDB Server writes its logs to the files:
[How to Set Up a BigchainDB Network](../simple-deployment-template/network-setup.md) guide, the default directory is: `$HOME/.bigchaindb-monit/logs`
The logs for BigchainDB server are rotated when any of the above mentioned file exceeds `209715200 bytes (i.e. approximately 209 MB).`. - `bigchaindb.log`
- `bigchaindb-errors.log`
- `bigchaindb-benchmark.log`
The default is for those files to be created in the same directory where you ran `bigchaindb start`.
If you started BigchainDB Server and Tendermint using Monit, as suggested by our guide on
[How to Set Up a BigchainDB Network](../simple-deployment-template/network-setup.html),
then the logs will be written to `$HOME/.bigchaindb-monit/logs/`.
## Log rotation for Tendermint Log rotation is baked into BigchainDB Server using Python's `logging` module.
The logs for BigchainDB Server are rotated when any of the above mentioned files exceeds 209715200 bytes (i.e. approximately 209 MB).
In order to set up log rotation of Tendermint, you will need to use the [Monit]( https://www.mmonit.com/monit) scripts provided by us. Covered in the [How to Set Up a BigchainDB Network](../simple-deployment-template/network-setup.md) guide. ## Tendermint Logging and Log Rotation
```bash Tendermint writes its logs to the files:
$ monit -d 1
```
Monit monitors both Tendermint and BigchainDB processes as well as the Tendermint log files, `tendermint.out.log` and `tendermint.err.log`. Default location for these log files is: - `tendermint.out.log`
`$HOME/.bigchaindb-monit/logs`. - `tendermint.err.log`
Tendermint logs are rotated if any of the above mentioned log files exceeds `200 MB` in size. If you started BigchainDB Server and Tendermint using Monit, as suggested by our guide on
[How to Set Up a BigchainDB Network](../simple-deployment-template/network-setup.html),
then the logs will be written to `$HOME/.bigchaindb-monit/logs/`.
Moreover, if you started BigchainDB Server and Tendermint using Monit,
then Monit monitors the Tendermint log files.
Tendermint logs are rotated if any of the above mentioned log files exceeds 200 MB.