mirror of
https://gitee.com/iresty/apisix.git
synced 2024-12-16 01:41:17 +08:00
89 lines
3.8 KiB
Markdown
89 lines
3.8 KiB
Markdown
<!--
|
|
#
|
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
|
# contributor license agreements. See the NOTICE file distributed with
|
|
# this work for additional information regarding copyright ownership.
|
|
# The ASF licenses this file to You under the Apache License, Version 2.0
|
|
# (the "License"); you may not use this file except in compliance with
|
|
# the License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
-->
|
|
|
|
- [中文](../zh-cn/plugins/log-rotate.md)
|
|
|
|
## Name
|
|
|
|
The plug-in can automatically rotate access and error log files in the log directory at regular intervals.
|
|
|
|
Specify how often logs are rotated every interval and how many logs have been kept recently.
|
|
When the number of log files exceeds the remaining number, the old files are automatically deleted.
|
|
|
|
## Attributes
|
|
|
|
|Name |Requirement |Description|
|
|
|--------- |--------|-----------|
|
|
|interval |required |How often to rotate the log every second, the default value is 3600 seconds = 1 hour.|
|
|
|max_kept |required |How many historical logs can be kept at most. When this number is exceeded, old files will be deleted automatically. The default value is 168.|
|
|
|
|
After this plug-in is enabled, the log file will be automatically rotated according to the configuration.
|
|
For example, the following example is a sample based on `interval: 10` and `max_kept: 10`.
|
|
|
|
```shell
|
|
$ ll logs
|
|
total 44K
|
|
-rw-r--r--. 1 resty resty 0 Mar 20 20:32 2020-03-20_20-32-40_access.log
|
|
-rw-r--r--. 1 resty resty 2.4K Mar 20 20:32 2020-03-20_20-32-40_error.log
|
|
-rw-r--r--. 1 resty resty 0 Mar 20 20:32 2020-03-20_20-32-50_access.log
|
|
-rw-r--r--. 1 resty resty 2.8K Mar 20 20:32 2020-03-20_20-32-50_error.log
|
|
-rw-r--r--. 1 resty resty 0 Mar 20 20:32 2020-03-20_20-33-00_access.log
|
|
-rw-r--r--. 1 resty resty 2.4K Mar 20 20:33 2020-03-20_20-33-00_error.log
|
|
-rw-r--r--. 1 resty resty 0 Mar 20 20:33 2020-03-20_20-33-10_access.log
|
|
-rw-r--r--. 1 resty resty 2.4K Mar 20 20:33 2020-03-20_20-33-10_error.log
|
|
-rw-r--r--. 1 resty resty 0 Mar 20 20:33 2020-03-20_20-33-20_access.log
|
|
-rw-r--r--. 1 resty resty 2.4K Mar 20 20:33 2020-03-20_20-33-20_error.log
|
|
-rw-r--r--. 1 resty resty 0 Mar 20 20:33 2020-03-20_20-33-30_access.log
|
|
-rw-r--r--. 1 resty resty 2.4K Mar 20 20:33 2020-03-20_20-33-30_error.log
|
|
-rw-r--r--. 1 resty resty 0 Mar 20 20:33 2020-03-20_20-33-40_access.log
|
|
-rw-r--r--. 1 resty resty 2.8K Mar 20 20:33 2020-03-20_20-33-40_error.log
|
|
-rw-r--r--. 1 resty resty 0 Mar 20 20:33 2020-03-20_20-33-50_access.log
|
|
-rw-r--r--. 1 resty resty 2.4K Mar 20 20:33 2020-03-20_20-33-50_error.log
|
|
-rw-r--r--. 1 resty resty 0 Mar 20 20:33 2020-03-20_20-34-00_access.log
|
|
-rw-r--r--. 1 resty resty 2.4K Mar 20 20:34 2020-03-20_20-34-00_error.log
|
|
-rw-r--r--. 1 resty resty 0 Mar 20 20:34 2020-03-20_20-34-10_access.log
|
|
-rw-r--r--. 1 resty resty 2.4K Mar 20 20:34 2020-03-20_20-34-10_error.log
|
|
-rw-r--r--. 1 resty resty 0 Mar 20 20:34 access.log
|
|
-rw-r--r--. 1 resty resty 1.5K Mar 20 21:31 error.log
|
|
```
|
|
|
|
### Example
|
|
|
|
#### Enable plugin
|
|
|
|
Enable the plug-in `log-rotate` in `conf/config.yaml`, then this plugin can work fine.
|
|
It does not need to be bound in any route or service.
|
|
|
|
Here is an example of `conf/config.yaml`:
|
|
|
|
```yaml
|
|
plugins:
|
|
# the plugins you enabled
|
|
- log-rotate
|
|
|
|
plugin_attr:
|
|
log-rotate:
|
|
interval: 3600 # rotate interval (unit: second)
|
|
max_kept: 168 # max number of log files will be kept
|
|
```
|
|
|
|
#### Disable plugin
|
|
|
|
Remove the plugin `log-rotate` from `conf/config.yaml`.
|