/storage/log が imfile-state ファイルでいっぱいになる | rsyslogd
search cancel

/storage/log が imfile-state ファイルでいっぱいになる | rsyslogd

book

Article ID: 380857

calendar_today

Updated On:

Products

VMware vCenter Server 7.0

Issue/Introduction

免責事項:これは英文の記事「/storage/log filling up with imfile-state files | rsyslogd (318149)」の日本語訳です。
記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。


Symptoms:
/storage/log がいっぱいになり、/var/log/vmware/rsyslogd ディレクトリに多くのファイルが確認できます。
/var/log/vmware/rsyslogd/ の内容を一覧表示できる場合とできない場合があります。

Environment

VMware vCenter Server 7.0.x

Cause

syslog サーバーにすでに送信されたメッセージを追跡するために、rsyslog サービスによって imfile-state:XXXX ファイルが作成されます。

Resolution

この事象を解消させるために、これらのファイルを削除するための cron ジョブを作成します。

  1. rsyslog サービスを停止します。
systemctl stop syslog.socket rsyslog.service
  1. rsyslog サービスが停止したことを確認します。
ps aux | grep rsyslogd
  1. /var/run that rsyslogd.pid ファイルが存在しないことを確認します。

  2. cron ジョブのためのディレクトリを作成します。

cd ~
mkdir syslogcron
cd syslogcron/

  1. cleanimf.sh というファイルを作成し、以下の内容で保存します。
vi cleanimf.sh

#!/bin/bash
find /var/log/vmware/rsyslogd/ -name "imfile-state*" | xargs -i rm -f {}
  1. (:wq をタイプして)ファイルを保存した後、ファイルに権限を追加します。
chmod 755 cleanimf.sh
  1. 1時間ごとにスクリプトを実行するよう、cron ジョブを作成します。(:wq をタイプしてファイルを保存することを忘れないでください。)
cd /etc/cron.d

vi cleanimf.cron

0 * * * * root /root/syslogcron/cleanimf.sh 2>&1
  1. rsyslog サービスを起動します。
systemctl start syslog.socket rsyslog.service

Additional Information

すべてのファイルをすぐに削除するには(cron ジョブを作成する前に)、次のコマンドを実行し、完了するまで待機します。

find /var/log/vmware/rsyslogd/ -name "imfile-state*" | xargs -i rm -f {}