Files
2024-10-09 15:26:34 -07:00

3.3 KiB

html, parent, seo, labels
html parent seo labels
logrotate.html logging-and-data-management-methods.html
description
Reopen the log file.
Data Retention

logrotate

[Source]

The logrotate command closes and reopens the log file. This is intended to help with log rotation on Linux file systems.

Most Linux systems come pre-installed with a logrotate program, which is separate from this command. Application specific log rotation scripts are placed in /etc/logrotate.d

The following script is a sample that can be created as /etc/logrotate.d/rippled

/var/log/rippled/*.log {
  daily
  minsize 200M
  rotate 7
  nocreate
  missingok
  notifempty
  compress
  compresscmd /usr/bin/nice
  compressoptions -n19 ionice -c3 gzip
  compressext .gz
  postrotate
    /opt/ripple/bin/rippled --conf /opt/ripple/etc/rippled.cfg logrotate
  endscript
}

You can configure parameters such as minsize and rotate depending on the amount of logs you keep. Use the log_level setting in your rippled.cfg file to configure how verbose your server's logs are. This sample script is based on standard log_level and stores approximately 2 weeks worth of logs in a compressed format.

The official packages for CentOS/Red Hat and Ubuntu or Debian provide the script /etc/logrotate.d/rippled by default. You can make modifications to this as required. Your modifications will not be overwritten on package upgrades.

{% admonition type="info" name="Note" %}You should have only one system log rotation script per application. Please ensure that you do not have any other log rotation that handles the same directory.{% /admonition %}

The logrotate method is an admin method that cannot be run by unprivileged users.

Request Format

An example of the request format:

{% tabs %}

{% tab label="WebSocket" %}

{
    "id": "lr1",
    "command": "logrotate"
}

{% /tab %}

{% tab label="Commandline" %}

#Syntax: logrotate
rippled logrotate

{% /tab %}

{% /tabs %}

The request includes no parameters.

Response Format

An example of a successful response:

{% tabs %}

{% tab label="JSON-RPC" %}

200 OK

{
   "result" : {
      "message" : "The log file was closed and reopened.",
      "status" : "success"
   }
}

{% /tab %}

{% tab label="Commandline" %}

Loading: "/etc/rippled.cfg"
Connecting to 127.0.0.1:5005

{
   "result" : {
      "message" : "The log file was closed and reopened.",
      "status" : "success"
   }
}

{% /tab %}

{% /tabs %}

The response follows the [standard format][], with a successful result containing the following fields:

Field Type Description
message String On success, contains the message The log file was closed and reopened.

Possible Errors

  • Any of the [universal error types][].

{% raw-partial file="/docs/_snippets/common-links.md" /%}