Introduction of Managed Syslog Server

Version: 1.0.0.0.
Released: 2004-09-29.

[About Configuration File]

Managed Syslog Server は、構成ファイルを元に処理を実行するアドインを、
自由に追加や変更ができるようになっています。
[参考: Managed Syslog Server System Componet Diagram]

そのためManaged Syslog Serverを実行するには、構成ファイルを正しく設定する必要があります。
構成ファイルが正しく設定されていないと、Managed Syslog Server が起動しない、
Syslog パケットを受信できない、といった深刻な問題が発生する可能性があります。

通常は構成ファイル作成ツールである Managed Syslog Console をご利用ください。

ここでは3つのシナリオを元に手動での構成ファイルの設定を解説します。
各アドインの詳細な設定はリファレンス マニュアル (mlog_ref.chm) をご覧ください。

[1] Simple Syslog Server Configuration

このシナリオでは、シンプルな構成としてSyslogメッセージを受信してテキストログに記録する方法を解説します。

<syslogConfig>
  <settings>
    <defaultEncoding name="euc-jp" />
    <errorPacket rule="Reject" />
  </settings>
  <listener>
    <modules>
      <assembly id="udp-listener" type="Syslog.Listener.UDPListener" name="mlog_listen">
       <!-- ローカルネットワークインターフェイスに割り当てられているすべてのアドレスでSyslogメッセージを待ち受けます -->
        <allow address="0.0.0.0" port="514" />
        <allow address="::1" port="514" />
      </assembly>

    </modules>
    <filters />
  </listener>
  <relay>
    <plugin />
    <filters />
  </relay>
  <collector>
    <modules>
      <assembly id="logfile-writer" type="Syslog.Collector.Writer.SimpleFileWriter" name="mlog_coll">
        <!-- ログファイルを 1日ごとにファイルを分けUTF-16で [日時] [受信インターフェイス][Syslogメッセージ] 形式で記録します -->
        <simpleFileWriter rotation="daily" outputPath="%SystemRoot%\System32\Logfiles\Syslog" encoding="utf-16">{DateTime} {DestAddress:host} {Syslog:PRI}{Syslog:HEADER} {Syslog:MSG}</simpleFileWriter>
      </assembly>

    </modules>
  </collector>
</syslogConfig>

[2] Encoding Translation Syslog Server Configuration

このシナリオでは受信するSyslogメッセージの文字エンコーディングを変換した上でテキストログに記録する方法を解説します。

<syslogConfig>
  <settings>
    <defaultEncoding name="euc-jp" />
    <errorPacket rule="Reject" />
  </settings>
  <listener>
    <modules>
      <assembly id="udp-listener" type="Syslog.Listener.UDPListener" name="mlog_listen">
        <allow address="0.0.0.0" port="514" />
        <allow address="::1" port="514" />
      </assembly>
    </modules>
    <filters>
      <assembly id= "encoding-selector"type="Syslog.Listener.Filter.EncodingSelector" name="mlog_listen">
        <!-- 特定のソースアドレスに該当するSyslogメッセージの読み取り文字エンコーディングを変更します -->
        <select source="127.0.0.1" encoding="shift_jis" />
        <select source="192.168.0.1" encoding="utf-8" />
        <select source="192.168.0.2" encoding="utf-8" />
        <select source="::1" encoding="shift_jis" />
      </assembly>
    </filters>

  </listener>
  <relay>
    <plugin />
    <filters />
  </relay>
  <collector>
    <modules>
      <assembly id="logfile-writer" type="Syslog.Collector.Writer.SimpleFileWriter" name="mlog_coll">
        <simpleFileWriter rotation="daily" outputPath="%SystemRoot%\System32\Logfiles\Syslog" encoding="utf-16">{DateTime} {DestAddress:host} {Syslog:PRI}{Syslog:HEADER} {Syslog:MSG}</simpleFileWriter>
      </assembly>
    </modules>
  </collector>
</syslogConfig>

[3] Syslog and Eventlog Server Configuration

このシナリオでは Syslog メッセージに加え Eventlog からイベントを取り込み、それぞれのインシデントを統合しログファイルおよび Eventlog に格納します。
Eventlog から取り込むデータは、SQL Server に関するデータのプライオリティを上げて取り込みを行います。

<syslogConfig>
  <settings>
    <defaultEncoding name="euc-jp" />
    <errorPacket rule="Reject" />
  </settings>
  <listener>
    <modules>
      <assembly id="udp-listener" type="Syslog.Listener.UDPListener" name="mlog_listen">
        <allow address="0.0.0.0" port="514" />
        <allow address="::1" port="514" />
      </assembly>
      <assembly id="eventlog-listener" type="Syslog.Listener.SimpleEventLogListener" name="mlog_listen">
< font color= "green">        <!-- ローカルマシンのシステム イベントログを15秒間隔で監視します-->
        <eventlog target="System" machine="." interval="15000">
         <!-- MSSQLServer が記録したエラーイベントログをファシリティをDeamonに変更して取り込みます -->
         <priorityfacility="Deamon" severity="Error">
            <regex source="Source">MSSQLServer</regex>
            <regex source="EntryType">Error</regex>
          </priority>
         <priorityfacility="Deamon" severity="Warning">
            <regex source="Source">MSSQLServer</regex>
            <regex source="EntryType">Warning</regex>
          </priority>
         <priorityfacility="Deamon" severity="Notice">
            <regex source="Source">MSSQLServer</regex>
            <regex source="EntryType">Information</regex>
          </priority>
          <!-- 他のイベントログはすべて重要度をNoticeに下げて取り込みます -->
         <priorityfacility="User" severity="Notice" />
        </eventlog>
      </assembly>

    </modules>
    <filters />
  </listener>
  <relay>
    <plugin />
    <filters />
  </relay>
  <collector>
    <modules>
      <assembly id="logfile-writer" type="Syslog.Collector.Writer.SimpleFileWriter" name="mlog_coll">
        <simpleFileWriter rotation="daily" outputPath="%SystemRoot%\System32\Logfiles\Syslog" encoding="utf-16">{DateTime} {DestAddress:host} {Syslog:PRI}{Syslog:HEADER} {Syslog:MSG}</simpleFileWriter>
      </assembly>
      <assembly id="eventlog-writer" type="Syslog.Collector.Writer.SimpleEventLogWriter" name="mlog_coll">
        <eventlog machine="." format="xml" />
      </assembly>
    </modules>

  </collector>
</syslogConfig>

[連絡先]

チャム&レオ
cham-reo@mxg.mesh.ne.jp
http://www.cham-reo.com

[ライセンス]

クリエイティブ・コモンズ・ライセンス
このworkは、 クリエイティブ・コモンズ・ライセンスの下でライセンスされています。

 この作品は、クリエイティブ・コモンズの帰属 - 非営利 - 同一条件許諾ライセンスの下でライセンスされています。この使用許諾条件を見るには、 http://creativecommons.org/licenses/by-nc-sa/2.0/jp/ をチェックするか、クリエイティブ・コモンズに郵便にてお問い合わせください。住所は:559 Nathan Abbott Way, Stanford, California 94305, USA です。