Включить ротацию журнала для edge-message-processor.log

Вы просматриваете документацию Apigee Edge .
Перейти к документации Apigee X.
info

Ротация журналов — процесс ротации нескольких файлов журналов в использовании и из него — упрощает администрирование систем, которые генерируют большое количество файлов журналов. Ротация журналов обеспечивает автоматическую ротацию, сжатие, удаление и отправку файлов журналов.

В Edge for Private Cloud некоторые из основных файлов журнала на каждом компоненте apigee настроены с механизмом ротации по умолчанию. Например, на компоненте Message Processor следующие файлы настроены с механизмом ротации по умолчанию с использованием logback:

  • /opt/apigee/var/log/edge-message-processor/logs/system.log
  • /opt/apigee/var/log/edge-message-processor/logs/events.log
  • /opt/apigee/var/log/edge-message-processor/logs/startupruntimeerrors.log
  • /opt/apigee/var/log/edge-message-processor/logs/configurations.log
  • /opt/apigee/var/log/edge-message-processor/logs/transactions.log

Аналогичные файлы существуют для других компонентов edge-* (имена которых начинаются с edge- ), таких как edge-management-server , edge-router , edge-postgres-server и edge-qpid-server .

Каждый из этих компонентов edge-* также генерирует дополнительный файл журнала, который является перенаправленным выводом консоли соответствующего компонента. В случае компонента Message Processor этот файл называется /opt/apigee/var/log/edge-message-processor/edge-message-processor.log . Другие компоненты edge-* генерируют похожий файл. Ротация этих файлов выполняется не библиотекой logback, а с помощью logrotate и crontab .

Прежде чем начать

Включить ротацию журналов

Этот раздел применим к Edge for Private Cloud версий 4.50.00 и 4.51.00.

Ротация журналов — это механизм, который разработан для облегчения администрирования систем, генерирующих большое количество файлов журналов. Он позволяет автоматически ротировать, сжимать, удалять и отправлять файлы журналов.

По умолчанию некоторые из основных файлов журнала на каждом из компонентов apigee настроены с механизмом ротации по умолчанию. Например, на компоненте Message Processor следующие файлы настроены с механизмом ротации по умолчанию:

  • /opt/apigee/var/log/edge-message-processor/logs/system.log
  • /opt/apigee/var/log/edge-message-processor/logs/events.log
  • /opt/apigee/var/log/edge-message-processor/logs/startupruntimeerrors.log
  • /opt/apigee/var/log/edge-message-processor/logs/configurations.log
  • /opt/apigee/var/log/edge-message-processor/logs/transactions.log

Однако другие файлы журналов в компонентах apigee не настроены с ротацией по умолчанию. Например, ротация журналов не настроена по умолчанию в файле процессора сообщений компонента apigee edge-message-processor.log .

Ротацию журнала можно включить с помощью различных утилит/фреймворков, таких как logrotate , logback , или log4j . В этом разделе объясняется, как настроить ротацию журнала для файла /opt/apigee/var/log/edge-message-processor/edge-message-processor.log с помощью logrotate и crontab .

Включение ротации журнала для edge-message-processor.log на процессорах сообщений

В этом разделе объясняется, как включить ротацию журналов для журналов /opt/apigee/var/log/edge-message- processor/edge-message-processor.log на процессорах Edge Message Processors.

Следующие шаги описывают, как включить ротацию журнала для файла edge-message-processor.log :

  1. Откройте файл /opt/apigee/edge-message-processor/logrotate/logrotate.conf на машине Message Processor в редакторе. Если файл не существует, создайте его. Например:
    vi /opt/apigee/edge-message-processor/logrotate/logrotate.conf
    
  2. Добавьте в файл фрагмент, аналогичный показанному ниже:
    /opt/apigee/var/log/edge-message-processor/edge-message-processor.log {
        missingok
        copytruncate
        rotate 5
        size 10M
        compress
        delaycompress
        notifempty
        nocreate
        sharedscripts
        }
  3. Сохраните изменения.
  4. Откройте crontab пользователя apigee с помощью следующей команды:
    sudo crontab -u apigee -e
    
  5. Добавьте следующее задание cron в crontab пользователя apigee :
    0 0 * * * nice -n 19 ionice -c3 /usr/sbin/logrotate -s /opt/apigee/var/run/edge-message-processor/logrotate.status -f /opt/apigee/edge-message-processor/logrotate/logrotate.conf
  6. Сохраните crontab и следите за ротацией журнала во время следующего запуска задания cron.

Проверка ротации журнала для edge-message-processor.log на процессоре сообщений

  1. После запуска запланированного задания cron файл журнала будет ротирован. Из приведенного выше примера задание cron запланировано для запуска каждый день в 00:00 утра для ротации файла edge-message- processor.log .
  2. Перейдите в каталог /opt/apigee/var/log/edge-message-processor/ и убедитесь, что файл edge-message-processor.log ротирован.

    Пример списка файлов журнала

    ls -ltrh | grep 'edge-message-processor'
    
    -rw-r--r--. 1 apigee apigee  17K Feb  7 00:00 edge-message-processor.log.1.gz
    -rw-r--r--. 1 apigee apigee 5.3K Feb  7 09:12 edge-message-processor.log

    Приведенный выше вывод показывает, что файлы edge-message-processor.log ротируются и сохраняются как файл GZ.

  3. Если вы не видите, что файлы edge-message-processor.log ротируются, проверьте, что вы правильно выполнили все шаги, описанные в разделе Включение ротации журналов для edge-message-processor.log на процессорах сообщений . Если вы пропустили какой-либо шаг, повторите все шаги еще раз правильно.
  4. Если вам по-прежнему не удается настроить ротацию журналов, обратитесь в службу поддержки Apigee Edge .