計算アイテムの文字表記について

いつもお世話になります。

Zabbix3.0.16にて、計算アイテムの式を記入したところ、zabbix-server.logより以下のログが表示され計算ができない状態です。

Cannot evaluate function "last("([0-9]+):([0-9]+):([0-9]+)(.*)(ERROR)",,,skip,\1\2\3])": item "samplehost:log[/var/log/dir/system.log" does not exist.

計算式は以下の通りです。
last("time.sh[]")-last("log[/var/log/dir/system.log,"([0-9]+):([0-9]+):([0-9]+)(.*)(ERROR)",,,skip,\1\2\3]")

time.sh[]は外部チェックで時刻を整数値で取得するスクリプトで、log[/var/log/dir/system.log,"([0-9]+):([0-9]+):([0-9]+)(.*)(ERROR)",,,skip,\1\2\3]は
ログファイルからERRORに該当する行の時刻部分を整数で取得するアイテムです。

ログの内容から、おそらく"([0-9]+):([0-9]+):([0-9]+)(.*)(ERROR)"の両端のダブルクォーテーションがエラーの原因となっていると思いますが、
アイテムキーとして記載している以上、表記を変える訳にもいかず、他の記載方法がないかご教示頂けますでしょうか。

お手数おかけいたしますが、何卒よろしくお願いいたします。

コメント表示オプション

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

「"」(ダブルコーテーション)でのくくり方がまずいのではないで
しょうか?

関数の引数に指定するアイテム全体を「"」でくくるのを止めてみ
てください。

ex.
last(log[/var/log/dir/system.log,"([0-9]+):([0-9]+):([0-9]+)(.*)(ERROR)",,,skip,\1\2\3])

ユーザー jusco0103 の写真

TNK様

いつも早急なご返信ありがとうございます。
上記の通り実施したところ、以下のエラーが出力され計算ができませんでした。
Cannot evaluate function "last("([0-9]+):([0-9]+):([0-9]+)(.*)(ERROR)",,,skip,\1\2\3])": item "samplehost:log[/var/log/dir/system.log" does not exist.

念のため、計算式も記載します。
last("time.sh[]")-last(log[/var/log/dir/system.log,"([0-9]+):([0-9]+):([0-9]+)(.*)(ERROR)",,,skip,\1\2\3])

ユーザー TNK の写真

last("time.sh[]")のところも同様に変更してみてください。

ユーザー yk_taiko の写真

アイテムキー内の「"」は「\」でエスケープが必要だと思います。

マニュアルの Example5 が参考になるかと
https://www.zabbix.com/documentation/3.0/manual/config/items/itemtypes/c...

ユーザー jusco0103 の写真

TNK様
yk_taiko様

ご回答いただき、ありがとうございました。
yk_taiko様からいただいた内容を元に設定を変更したところ、正しく値が取得できるようになりました。

ちなみに設定は以下の通りです。
last("time.sh[]")-last("log[/var/log/dir/system.log,\"([0-9]+):([0-9]+):([0-9]+)(.*)(ERROR)\",,,skip,\1\2\3]")