WindowsServerのイベントログをNXLOGでCentOSのrsyslogへ転送しているが文字化けする
解決したいこと
WindowsServer2019(中国語)の中国語で表示されるイベントログをSyslogサーバに保存したいです。
WindowsServerのイベントログをNXLOGでCentOSのrsyslogへ転送していますが、
CentOS側で受け取ったログを見ると文字化けしています。
解決方法はありますでしょうか。
環境
・クライアント
WindowsServer2019(中国語)※Systemで文字コードをUTF-8に設定済み
nxlog
・Syslogサーバ
CentOS7.9 ※Systemで文字コードをUTF-8に設定済み
rsyslog
mysql ※conf,tableともに文字コードをUTF-8に設定済み
発生している問題・エラー
Syslogサーバで受け取ったログファイルが文字化けしています。
Sep 16 21:24:31 MSWinEventLog#0111#011Microsoft-Windows-Kernel-PnP/Configuration#011626#011Fri Sep 16 21:24:31 2022#011400#011Microsoft-Windows-Kernel-PnP#011SYSTEM#011User#011Information#011NCSVDC0003#011N/A#011#011已配置?? SWD\PRINTENUM\{CF8C13E8-B857-4E02-8838-872143759C5A}。 ??程序名称: printqueue.inf ? GUID: {1ed2bbf9-11f0-4084-b21f-ad83a8e6dcdc} ??程序日期: 06/21/2006 ??程序版本: 10.0.17763.1 ??程序提供商: Microsoft ??程序部分: NO_DRV_LOCAL ??程序等?: 0x1 匹配?? ID: PRINTENUM\LocalPrintQueue 低等???程序: oem1.inf:{0f4130dd-19c7-7ab6-99a1-980f03b2ee4e}:00FF0002 c_swdevice.inf:SWD\GenericRaw:00FF3001 ??已更新: false 父??: SWD\PRINTENUM\PrintQueues#011876
該当するソースコード
WindowsServer2019
C:\Program Files\conf\nxlog.conf
define ROOT C:\Program Files\nxlog
define CERTDIR %ROOT%\cert
define CONFDIR %ROOT%\conf\nxlog.d
define LOGDIR %ROOT%\data
define LOGFILE %LOGDIR%\nxlog.log
LogFile %LOGFILE%
Moduledir %ROOT%\modules
CacheDir %ROOT%\data
Pidfile %ROOT%\data\nxlog.pid
SpoolDir %ROOT%\data
<Extension _syslog>
Module xm_syslog
</Extension>
<Extension _charconv>
Module xm_charconv
AutodetectCharsets utf-8, euc-jp, utf-16, utf-32, iso8859-2, shift_jis, big5, gb2312
</Extension>
<Extension _exec>
Module xm_exec
</Extension>
<Extension _fileop>
Module xm_fileop
# Check the size of our log file hourly, rotate if larger than 5MB
<Schedule>
Every 1 hour
Exec if (file_exists('%LOGFILE%') and \
(file_size('%LOGFILE%') >= 5M)) \
file_cycle('%LOGFILE%', 8);
</Schedule>
# Rotate our log file every week on Sunday at midnight
<Schedule>
When @weekly
Exec if file_exists('%LOGFILE%') file_cycle('%LOGFILE%', 8);
</Schedule>
</Extension>
# Snare compatible example configuration
# Collecting event log
<Input in>
Module im_msvistalog
SavePos TRUE
Exec convert_fields("AUTO", "utf-8");
</Input>
#
# Converting events to Snare format and sending them out over TCP syslog
<Output out>
Module om_udp
Host 192.168.4.123
Port 514
Exec to_syslog_snare();
</Output>
# Connect input 'in' to output 'out'
<Route 1>
Path in => out
</Route>
自分で試したこと
以下の記事を頼りにconvert_fieldsを追加をしましたが、だめでした。
Exec convert_fields("AUTO", "utf-8");
もし知見をお持ちの方がいらっしゃったらアドバイス頂けると助かります。
よろしくお願い致します。
0