取得データの文字化け

新人エンジニアのTKHIと申します。

今ZABBIX1.8.8で監視設定をしているのですが、windowsイベントログの取得データが文字化けしています。
MySQLで直にレコードを見ても、webインターフェイスで見てもです。

他の箇所も見ると、webインターフェイスで日本語入力したものもすべて???となり、文字化けしています。

以下のスレッドに書かれていることを行いましたが、改善されませんでした。
http://www.zabbix.jp/modules/newbb/viewtopic.php?topic_id=364&forum=6&viewmode=flat&order=ASC&start=20

my.cnfの設定は以下の通りです。
─────────────────────────
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
init_connect='SET NAMES utf8'
default-character-set=utf8
innodb_file_per_table
skip-character-set-client-handshake

[mysql]
default-character-set=utf8

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

default-character-set=utf8
skip-character-set-client-handshake

─────────────────────────

mysqlのstatusは以下の通りです。

─────────────────────────

mysql> status
--------------
mysql Ver 14.14 Distrib 5.1.52, for redhat-linux-gnu (x86_64) using readline 5.1

Connection id: 4124
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.1.52 Source distribution
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /var/lib/mysql/mysql.sock
Uptime: 1 day 42 min 36 sec

Threads: 15 Questions: 1711934 Slow queries: 1 Opens: 2216 Flush tables: 3 Open tables: 64 Queries per second avg: 19.244
──────────────────────────

ご教授いただけないでしょうか。
よろしくお願いいたします。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TKHI の写真

先ほど見たところ、windowsイベントログの取得データは文字化けしなくなっていましたが、webインターフェイスで日本語入力したコメントなどがやはり文字化けします。

よろしくお願いいたします。

ユーザー TNK の写真

mysqlのstatusの出力だけではなく、Zabbix用のデータベースに接
続したときの
<code>
show variables like 'char%';
</code>
の出力結果はどうなっていますか?

あと、以下の情報もご提示いただけませんでしょうか?

 ・利用されているOSのディストリビューションとバージョン
 ・Apache、PHPなどでディストリビューションの標準外のもの
  を利用しているか
 ・Zabbixのインストール方法
 ・ソースからインストールされた場合はPHPの設定内容

ユーザー TKHI の写真

TNKさん

ご返信ありがとうございます!

show variables like 'char%'は以下の通りです。

mysql> show variables like 'char%';
+--------------------------+----------------------------+
| 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.00 sec)

・OSのディストリビューションとバージョン

  Red Hat Enterprise Linux Server 6.0です。
 
・Apache、PHPなどでディストリビューションの標準外のものを利用しているか

  すみません、確認する方法がわからないのですが、
  標準外のものはしていないと思います
  (yumコマンドでインストールしました)。

・Zabbixのインストール方法

 この「ZABBIX-JP」のサイトでのパッケージからインストールしました。

よろしくお願いいたします。

ユーザー TNK の写真

現時点のDBの設定や状態に関しては、問題はなさそうです。

Zabbixを動かす前から、この設定になっていましたか?
そうではないならば、正しいエンコードで登録されていると思われ
るイベントログの情報が既にDB上に入っている状態だと思われます
ので、Webフロントエンドで入力して文字化けしてしまっているも
のは、再度、入力しなおしして頂くことになると思います。

今回、問題が発生した明確な原因は特定できていませんが、以下の
ような原因で同様の障害が発生したというのは聞いたことがありま
す。

 ・以前のバージョンからのアップグレードで、UTF8以外であった
  DBを、今回、UTF8に移行する際に失敗していた
 ・標準のRPM以外のApacheやPHPなどを利用していた
 ・RPMインストール時に依存関係の警告を無視した

依存するパッケージが不足するなどの警告が表示された場合は、そ
の内容を十分確認するようにしてください。

すでにインストールできているようですので解決できているとは思
いますが、RHEL 6の場合、ZABBIX-JPが公開しているRPMをインスト
ールする際に必要となる一部のパッケージは、RHNで明示的に利用
するリポジトリの追加が必要になりますのでご注意ください。

ユーザー kodai の写真

各テーブルのエンコード設定も確認してみてください。こちらが参考になると思います。

http://www.zabbix.jp/modules/newbb/viewtopic.php?topic_id=987&forum=5&post_id=4509

ユーザー TKHI の写真

ZABBIXを動かしてから設定を変更しました。

設定を変更する以前に入力されたデータが文字化けするのはわかるのですが、Webフロントエンドで今入力するデータも文字化けしています。

しかも、文字化けする箇所としない箇所があります。

例えば、

 ・障害に対するコメントは文字化けする。

・ホストのプロファイルで、「名前」は文字化けするが、
「ハードウェア」は文字化けしない。

という具合です。

なにか解決の糸口はないでしょうか。

ユーザー TKHI の写真

kodaiさん

ご返信ありがとうございます。
すみません、投稿が入れ違いになってしまったようです。

いただいたURLから確認してみます。
ありがとうございます!

ユーザー TKHI の写真

みなさまへ

無事解決することができました!
過去スレッドでしっかり確認せずスレッドを立ててしまい申し訳ありませんでした。

また何かあればよろしくお願いいたします。