トリガー名の{ITEM.VALUE}の文字数制限
いつもお世話になっております。
トリガー名に{ITEM.VALUE}を設定し、トリガー検知時に
アイテムの最新値をダッシュボード等に表示したいと思っております。
(最新データからアイテムの最新値を見れるのは認識しております)
試しに設定してトリガー検知させてみたのですが、
{ITEM.VALUE}の中身が展開されはしたのですが、
20バイト以上の文字数だった場合、20バイト以降が"...."のように
省略されてしまいます。
これを全て表示するようにするか、20バイトより増やしたいのですが、
どこか設定箇所はありませんでしょうか?
各phpファイル等を漁ってみたのですが、自力では見つけられませんでした…。
(Sourceレベルの話なんでしょうか…)
[理想]
Zabbix Senderから対象アイテムに、以下のメッセージを送付
送付メッセージ(例):"interface FastEthernet 0/1 is down"
トリガー名:Message - Detail "{ITEM.VALUE}"
ダッシュボード等の表示:Message - Detail "interface FastEthernet 0/1 is down"
※全文表示させるか、20バイト以上にしたい
[現実]
実際にダッシュボードに表示されるのは…
ダッシュボード等の表示:Message - Detail "interface FastEthern..."
※20バイト以降が省略される…
■環境
・Zabbix:Zabbix 2.4.3
・OS:CentOS 6.5
ご教授の程、よろしくお願い致します。
fripper - 投稿数: 495
2.4.x系を利用していないため、保証ができないのですが‥
ソースコードから場所を探してみた限りで、以下が該当しそうな気がします
-----
ソースファイル:frontends/php/include/items.inc.php 内
関数:function formatHistoryValue 内
...(略)...
// apply value mapping
...(略)...
case ITEM_VALUE_TYPE_TEXT:
case ITEM_VALUE_TYPE_LOG:
if ($trim && mb_strlen($value) > 20) {
$value = mb_substr($value, 0, 20).'...';
}
...(略)...
-----
20文字で切り捨てて、その後に [...] を付与しているように見えます
ただ、この処理・関数は多岐に渡る場所から呼びだされるような処理ですので
ダッシュボードでの表示以外にも、
・「監視データ」→「概要」
・「監視データ」→「最新データ」
などのように、「アイテムで収集した値の履歴」や「最新の値を表示」などの
処理が絡む部分、全てに影響が出てしまうのでは‥と危惧します
TF0814 - 投稿数: 49
回答頂きありがとうございます。
該当の箇所を、20から70に変更し、動作確認しました。
ダッシュボード、イベント、トリガー、レポート画面、アラート通知で
望むような形になっていることを確認しました。
一通りの画面を確認したところ特に問題はなさそうです。
概要(トリガー)画面は、マクロ名が展開されないので問題ありませんでした。
最新データ画面は、この設定箇所とは異なる切り捨て設定があるようで
今回の変更前後で変化はありませんでした。これは特に問題ないです。
もう少し動作確認をして、問題なさそうであれば本番反映しようと思います。
大変助かりました、ありがとうございます!