vCenter Server からのログ転送時に Syslog サーバーで「Unpredictable error」が記録される
search cancel

vCenter Server からのログ転送時に Syslog サーバーで「Unpredictable error」が記録される

book

Article ID: 449104

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

免責事項: これは英文の記事 「Unpredictable error observed on Syslog server during log forwarding from vCenter Server」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

  • Syslog サーバーのログに以下のエラーメッセージが記録されます。
    MM  DD HH:MM:SS #### syslog.err: rsyslogd error during parsing file /etc/vmware-syslog/vmware-services-vlcm.conf, on or before line 8: parameter 'reopenontruncate' must be "on" or "off" but is neither. Results unpredictable. [v8.2306.0 try https://www.rsyslog.com/e/2207 ]
    MM  DD HH:MM:SS #### syslog.err: rsyslogd error during parsing file /etc/vmware-syslog/vmware-services-vlcm.conf, on or before line 8: parameter 'deletestateonfiledelete' must be "on" or "off" but is neither. Results unpredictable. [v8.2306.0 try https://www.rsyslog.com/e/2207]
    

    注意:
    これは構成ファイルの解析時に出力される警告ログです。Resolution で後述する設定値変更を実施するまで reopenOnTruncate パラメータの設定は無視されますが、rsyslog サービス自体は動作を継続し、設定されている他のオプションに従ってログを転送します。

  • vCenter Server 上の /etc/vmware-syslog/vmware-services-vlcm.conf ファイル内で、 deleteStateOnFileDelete および reopenOnTruncate パラメータが "true" に設定されています。

Environment

VMware vCenter 9.x

Cause

この問題は、vCenter Server 上の cron ジョブにより deleteStateOnFileDelete および reopenOnTruncate パラメータが意図せず "true" に設定されることで発生します。
rsyslog サービスは "on" または "off" の値のみをサポートしています。

Resolution

この問題は将来の製品リリースで修正される予定です。

回避策

  1. SSH で vCenter Server に接続し、Bash シェルへアクセスします。

  2. 以下のコマンドを実行し、構成ファイルとスクリプトファイルのバックアップを作成します:
    cp /etc/vmware-syslog/vmware-services-vlcm.conf /etc/vmware-syslog/vmware-services-vlcm.conf_bk
    cp /usr/lib/applmgmt/support/space_utility/datastructures.py /usr/lib/applmgmt/support/space_utility/datastructures.py_bk

  3. /usr/lib/applmgmt/support/space_utility/datastructures.py ファイルを以下のように修正します:

    変更前:

    def flags_to_check(self):
        """Returns the im module definition's mandatory flags
        and its expected flag values
        """
         return {
              'deleteStateOnFileDelete': {'"on"', '"true"'},
              'reopenOnTruncate': {'"on"', '"true"'},
         }


    変更後 :

    def flags_to_check(self):
        """Returns the im module definition's mandatory flags
        and its expected flag values
        """
        return {
            'deleteStateOnFileDelete': {'"on"'},
            'reopenOnTruncate': {'"on"'},
        }


    注意: 行頭のインデント (半角スペースによる字下げ) が正しく挿入されていることに注意し、引用符はすべて半角のクォーテーション(" または ')を使用してください。

  4. 次回の定期 cron ジョブ(毎日午前 0 時に実行)の実行後、パラメータが自動的に "on" に更新され、問題が解消することを確認します。