关于loganalyzer+rsyslog+mysql接收中文windows日志乱码问题
发表于 : 2017-01-17 16:23
实际情况如下:
linux+mysql+apache+php环境 (centos 6.8 + mysql5.4 +PHP 5.4)
loganalyzer版本为:3.6.6
1.mysql的编码如下:
mysql> show variables like "%character%";show variables like "%collation%";
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.01 sec)
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)
2.rsyslog建立的库与表都使用utf-8编码
3.客户机一台windows 2008 Server x64使用的是snare
客户机一台windows 2008 Server x64使用的是NTSyslog
4.安装好loganalyzer,并修改loganalyzer中的 include/functions_common.php 的
return htmlentities($myStr, ENT_NOQUOTES, $content['HeaderDefaultEncoding']); //"UTF-8");修改成
return htmlentities($myStr, ENT_NOQUOTES, $content['HeaderDefaultEncoding'], "UTF-8");
并在loganalyzer的admin center里 设置 Default character encoding为UTF-8
5.确保服务器可以正常接收日志后(关闭防火墙,selinux)
6.最终在web里确认有收到windows的日志,但结果还是乱码,在服务器上mysql cli下也乱码,但在接到到的message文件里是正常的中文 请教各们朋友有没有发现此问题
还有有没有解决方式?
linux+mysql+apache+php环境 (centos 6.8 + mysql5.4 +PHP 5.4)
loganalyzer版本为:3.6.6
1.mysql的编码如下:
mysql> show variables like "%character%";show variables like "%collation%";
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.01 sec)
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)
2.rsyslog建立的库与表都使用utf-8编码
3.客户机一台windows 2008 Server x64使用的是snare
客户机一台windows 2008 Server x64使用的是NTSyslog
4.安装好loganalyzer,并修改loganalyzer中的 include/functions_common.php 的
return htmlentities($myStr, ENT_NOQUOTES, $content['HeaderDefaultEncoding']); //"UTF-8");修改成
return htmlentities($myStr, ENT_NOQUOTES, $content['HeaderDefaultEncoding'], "UTF-8");
并在loganalyzer的admin center里 设置 Default character encoding为UTF-8
5.确保服务器可以正常接收日志后(关闭防火墙,selinux)
6.最终在web里确认有收到windows的日志,但结果还是乱码,在服务器上mysql cli下也乱码,但在接到到的message文件里是正常的中文 请教各们朋友有没有发现此问题
还有有没有解决方式?