いつもお世話になっております。
Asianux Server 3評価版にて1.6.4のZABBIXを検証しておりますが、Windowsのイベントログにて日本語が以下のように「???」と文字化けしてしまいます。
<最新データ画面より>
---------------------
[2010.Jan.11 14:24:49] 2010.Jan.11 14:24:14 Service Control Manager 情報 WinHTTP Web Proxy Auto-Discovery Service ????? ??? ??????????
---------------------
mysqlでhistory_logテーブルを参照すると、以下のように日本語で参照されます。
---------------------
| 1610 | 22406 | 1263182086 | 1263182037 | Service Control Manager | 1 | WinHTTP Web Proxy Auto-Discovery Service サービスは 実行中 状態に移行しました。
---------------------
kodai - 投稿数: 1341
こんにちは。
アイテムのキー設定で、eventlog[]を利用するとイベントログを監視することができます。
[]にはイベントログ名を設定するのですが、この名称はWindowsのイベントビューアに表示される日本語の名前ではなく、レジストリエディタの以下の場所に登録されている英語名を設定する必要があります。
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog
ただし、本家がリリースしているZABBIX 1.4.6では日本語のイベントログは文字化けしてしまいます。現在日本語のイベントログに対応した1.4.6をZABBIX-JPからリリースする準備をしておりますので少々お待ちください。
JAM - 投稿数: 2
返信が遅くなりすみませんでした。
回答ありがとうございます。
教えて頂いた内容にて試してみます。
今後、また何ありました際は、よろしくお願い致します。
kana - 投稿数: 19
こんにちは
日本語対応したバージョンが
ZABBIX-JP : ZABBIX 1.4.5-2.JP RPMパッケージ
としてありますが、これで日本語のイベントログも監視かのうでしょうか
また、RPMではなくFREEBSDやソラリスなどでも使えるタイプのものはありますか?
kodai - 投稿数: 1341
こんにちは。
1.4.5-2ではイベントログの日本語対応は行っていません。次の1.4.6で対応したものをリリース予定ですので少々お待ちください。
あと、FreeBSDやSolarisのバイナリについては今のところ予定はありませんが、エージェントについてはプラットフォームが用意可能なものについては作成・配布を行うことを考えても良いかなと思っています。
kana - 投稿数: 19
kodaiさん
ありがとうございます。
・本家のマルチバイト対応が次のバージョンであると思いますが、これとはべつのものを開発されているという理解でいいんでしょうか。
>次の1.4.6で対応したものをリリース予定ですので
・対応しているOSと大体のリリース時期を教えていただくことはできますか
kodai - 投稿数: 1341
マルチバイト対応したパッチは、ミラクル・リナックスからZABBIX SIA(開発元)に送付しています。そのまま取り込まれるかどうかはまだ確定していませんが、開発元との連携は行っています。
あと、ZABBIX-JPでのリリースはできるだけ早くリリースしたいと考えていますが、今のところベストエフォートなので日にちは確約できません。ただ、早ければ今月中、遅くとも7月初旬までにはリリースしたいと考えています。
stifc - 投稿数: 11
こんにちは
私は現在バージョン1.6.5を使用しておりますが、Windowsのイベントログやログファイルの日本語の文字列監視ができず困っています。
1.6系のZabbixで日本語対応する御予定はありますでしょうか?
kodai - 投稿数: 1341
こんにちは。
1.6.X系の日本語イベントログ対応版もリリース予定にしています。Windows版のエージェントの配布の対応で遅れておりますが少々お待ちください。
stifc - 投稿数: 11
了解致しました。
御回答有難う御座いました。
sakuma - 投稿数: 16
kodai様
いつもお世話になっております。
Asianux Server 3評価版にて1.6.4のZABBIXを検証しておりますが、Windowsのイベントログにて日本語が以下のように「???」と文字化けしてしまいます。
<最新データ画面より>
---------------------
[2010.Jan.11 14:24:49] 2010.Jan.11 14:24:14 Service Control Manager 情報 WinHTTP Web Proxy Auto-Discovery Service ????? ??? ??????????
---------------------
mysqlでhistory_logテーブルを参照すると、以下のように日本語で参照されます。
---------------------
| 1610 | 22406 | 1263182086 | 1263182037 | Service Control Manager | 1 | WinHTTP Web Proxy Auto-Discovery Service サービスは 実行中 状態に移行しました。
---------------------
DBには正しく日本語(UTF8)で格納されているようですが、フロントエンド側で何か設定等必要でしょうか?
アイテムの設定は以下の通りです。
タイプ:ZABBIXエージェント(アクティブ)
キー:eventlog[xxx] →xxxはapplication/security/system
データ型:ログ
また、my.cnfには以下のようにUTF8の設定をいれております。
default-character-set=utf8
WindowsのエージェントはZABBIX-JPよりダウンロードした、サーバと同バージョン(1.6.4)を使用しております。
また、CentOS用の1.6.8のJPパッケージにアップグレードしてみましたが、事象は変わりませんでした。
以上、お手数ですがよろしくお願いいたします。
KAZ - 投稿数: 1085
sakumaさん
zabbix_agentd.confのに以下の「Encoding=utf8」行入ってますでしょうか?
<code>
## Spend no more than Timeout seconds on processing
# Must be between 1 and 30
Timeout=3
# Multibyte eventlog encode translation to utf-8
# This patch is presented by MIRACLE LINUX CORPORATION.
Encoding=utf8
</code>
sakuma - 投稿数: 16
KAZ様
早速の返信、ありがとうございます。
Windows側のzabbix_agentd.confはインストール時から特に変更しておりませんが、ご指摘いただいたエンコードの設定は入っております。
Encoding=utf8
以上、よろしくお願いいたします。
KAZ - 投稿数: 1085
sakumaさん
1)MySQLですが、下記の様になっていますでしょうか?
<code>
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.02 sec)
</code>
2)php.iniのdefault_charsetはUTF-8になっていますでしょうか?
<code>
default_charset="UTF-8"
</code>
sakuma - 投稿数: 16
MySQLの確認結果は、ご教示いただいた内容と同一です。
php.iniのほうは設定を追加してhttpdを再起動(念のためzabbix-serverも)しましたが、事象は変わりませんでした。
KAZ - 投稿数: 1085
sakumaさん
その他の日本語は正しく表示されていますでしょうか?
sakuma - 投稿数: 16
KAZ様
メニュー等は日本語で表示されています。
ZABBIXサーバ(Asianux)のシスログを監視する設定を入れてみましたが、こちらもWindowsのイベントログ同様、「???」と化けました。
log[/var/log/zabbix/user.log]
こちらもDBには日本語で格納されてますので、ログ監視系全般において文字化けが発生してしまっております。
tsuzuki - 投稿数: 78
鈴木です。
mysqlのテーブル定義がutf8になってない場合に、日本語をデータベースに正常に保存できず、「???」に表示されたような気がします。
mysqlにutf8の設定をしていても、その設定をする前に文字コードを指定せずにテーブルを作成していると、utf8でないテーブルになってしまいます。
mysqlで以下コマンドを実行してテーブル定義を表示してみてください。
以下のように「DEFAULT CHARSET=utf8」がテーブル定義に含まれているか確認してください。
mysql> show create table zabbix.history_log;
+-------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+-------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| history_log | CREATE TABLE `history_log` (
`id` bigint(20) unsigned NOT NULL default '0',
`itemid` bigint(20) unsigned NOT NULL default '0',
`clock` int(11) NOT NULL default '0',
`timestamp` int(11) NOT NULL default '0',
`source` varchar(64) NOT NULL default '',
`severity` int(11) NOT NULL default '0',
`value` text NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `history_log_2` (`itemid`,`id`),
KEY `history_log_1` (`itemid`,`clock`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
よろしくお願いします。
sakuma - 投稿数: 16
鈴木様
返信ありがとうございます。
確認しましたが、DEFAULT CHARSET=utf8は該当テーブルの定義に含まれております。
なお、DB作成時は以下の手順を実施しております。
mysql> create database zabbix default character set utf8;
以上、よろしくお願いいたします。
KAZ - 投稿数: 1085
sakumaさん
言語は日本語を選んでいるのでしょうか?
その際、ロケールはどうなっていますでしょうか?
[Administration(管理)]-[Locales(ロケール)]で「Create locale(作成 ロケール)」を表示させ、下記の設定を行って次へボタンを押して下さい。
・Take for default locale : 自分が選んでいる言語
・Locale to extend : Create New(作成 新規)
・New entries : Fill with default value(デフォルト値を表示)
そうすると上から2個目にコード設定の情報が表示されます。
これがUTF-8になっていますでしょうか?
sakuma - 投稿数: 16
KAZ様
ロケールを確認しました。
UTF-8が表示されております。
以上、よろしくお願いいたします。
tsuzuki - 投稿数: 78
/etc/my.cnf
には
skip-character-set-client-handshake
は含まれてますでしょうか?
あと、
default-character-set=utf8
skip-character-set-client-handshake
は[mysqld]セクション内に記述する必要がありますが、大丈夫でしょうか?
設定ファイルの最後の方に追記すると、[mysqld_safe]のセクションに含まれてしまうので確認してみてください。
よろしくお願いします。
sakuma - 投稿数: 16
鈴木様
/etc/my.cnfに以下の設定を追加したところ、文字化けが解消いたしました。
skip-character-set-client-handshake
KAZ様、鈴木様、長らくご対応いただき、ありがとうございました。
お手数おかけしまして、申しわけありませんでした。