Zabbix(API)ErrorCodeについて

お世話になります
はじめて投稿させて頂きます。

只今、Zabbix(API)機能を試行しております。
その際、Error発生時Codeのみ表示される場合があり、
APIに関するErrorCodeのドキュメント等をさがしてみたのですが
見つけられず四苦八苦しております。
どなたか、参考になるドキュメント、HP等ご存知あればご教示の程お願い致します。

ちなみに、APIは「configuration.import」、発生しているErrorは「API error -32500:」となります。
*環境は、ZABBIX2.4 PHP5.3.3です

よろしくお願い致します

コメント表示オプション

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

ソースコードを軽く見てみた限りでは‥

----
ZBX_API_ERROR_PERMISSIONS => '-32500',
ZBX_API_ERROR_INTERNAL => '-32500'
---

という定義がありました

権限系起因でなければ、あとは汎用エラーコードだと思いますので、
エラー番号からの原因特定は難しいと思います

インポート命令に渡すデータ量を減らしてみるとか、
小規模のインポートから徐々に大きくしてみるとか‥ですかねぇ‥

JSON のデータ構造が不正、という扱いになっているのかもしれません

ユーザー @kaz373 の写真

fripperさん 
 ご回答頂きありがとうございます。

管理画面よりインポート出来たXMLファイルをもとに、
API機能の試行をおこなっておりました。

ご指摘頂いた「JSON のデータ構造が不正...」等を
もう一度確認してみたいと思います

ありがとうございました。

ユーザー fripper の写真

実際に同問題が再現できているわけではないので、あくまで憶測ですが‥

インポート対象となるテンプレートホスト間に、依存関係がある場合
(テンプレートAの内容を継承したテンプレートBがあり、
 テンプレートB内のトリガーでテンプレートAのアイテムを参照‥)
個別でインポートしようとした場合には、
「依存先のテンプレートが見つからない」等のエラーコードになりますが
大きな単位で一括してインポートしようとした場合、
内部での処理順序に影響をうけ、依存元側のインポート処理が実施される前に
依存先側の処理が実施されてしまって、内部エラー‥といった扱いになっているのかもしれません

‥と感じました
小さい規模、依存の影響が出ない単位に切り出した場合には成功して、
一括だと失敗する・・ならば、このパターンかもしれません‥

ユーザー KAZ の写真

@kaz373さん

configuration.importですかね?
文字のエスケープ気をつけてください。

APIのマニュアルの例をよく見ると「"」ダブルクォーテーションがバックスラッシュでエスケープされてます。
なので、GUIでインポートできたものそのままはAPIでは投げれません。
結構ハマるポイントです。A(^^;

APIの確認ですがGoogle Chromeの拡張機能「Advanced REST Client」が便利です。
Chrome使いなら使ってみてください。

ユーザー @kaz373 の写真

KAZさん
 ご回答ありがとうございます。

>APIのマニュアルの例をよく見ると「"」ダブルクォーテーションがバックスラッシュでエスケープされてます。
こちらは、以前KAZさんがコメントされいるものを読んでおりましたので考慮しました

>APIの確認ですがGoogle Chromeの拡張機能「Advanced REST Client」が便利です。
>Chrome使いなら使ってみてください。
こちら利用してみたいと思います。

先日、投稿させて頂きました本件ですが
fripperさんよりご指摘頂きました、「JSONのデータ構造不正...」をもう一度見直し、
自作ツールに組み込み直したところ解決致しました。
*問題なくインポート出来るようになりました。

fripperさん 有難う御座います。
*依存関係につきましては、fripperさんのご指摘あるように気を付ける必要がありますね

fripperさん、KAZさん、色々ご教示頂きありがとうございました。

大変助かりました。

ユーザー KAZ の写真

@kaz373さん

JSONの構文チェックはJSON Editor Onlineが便利ですよ。
※:これもChromeの拡張機能ですが…

http://tecuration.com/2013/06/jsoneditoronline