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 runs:
Each BigchainDB node comprises of 3 main services:
- BigchainDB server
- Tendermint
- MongoDB - MongoDB
- BigchainDB Server
- Tendermint
To run a BigchainDB test network/dev node, that is expected to run for relatively longer periods When running a BigchainDB node for long periods
of time, we need to consider the log rotation of these services i.e. we do not want the logs taking 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 get into bad state. up large amounts of storage and making the node unresponsive or getting it into a bad state.
## Log rotation for MongoDB ## MongoDB Logging and Log Rotation
Currently, we leave the log rotation of MongoDB to the BigchainDB administrator. For more notes on MongoDB log rotation See the MongoDB docs about
please refer to [MongoDB docs](https://docs.mongodb.com/v3.6/tutorial/rotate-log-files/). [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 for BigchainDB ## BigchainDB Server Logging and Log Rotation
BigchainDB Server writes its logs to the files:
Log rotation is baked into BigchainDB server using the `logging` module. BigchainDB server logs information into the following files:
- `bigchaindb.log` - `bigchaindb.log`
- `bigchaindb-errors.log` - `bigchaindb-errors.log`
- `bigchaindb-benchmark.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 The default is for those files to be created in the same directory where you ran `bigchaindb start`.
[How to Set Up a BigchainDB Network](../simple-deployment-template/network-setup.md) guide, the default directory is: `$HOME/.bigchaindb-monit/logs` 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/`.
The logs for BigchainDB server are rotated when any of the above mentioned file exceeds `209715200 bytes (i.e. approximately 209 MB).`. 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).
## Tendermint Logging and Log Rotation
## Log rotation for Tendermint Tendermint writes its logs to the files:
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.out.log`
- `tendermint.err.log`
```bash If you started BigchainDB Server and Tendermint using Monit, as suggested by our guide on
$ monit -d 1 [How to Set Up a BigchainDB Network](../simple-deployment-template/network-setup.html),
``` then the logs will be written to `$HOME/.bigchaindb-monit/logs/`.
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:
`$HOME/.bigchaindb-monit/logs`.
Tendermint logs are rotated if any of the above mentioned log files exceeds `200 MB` in size.
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.