You are viewing documentation for the development version, it may be incomplete.
Join our translation project and help translate Zabbix documentation into your native language.

configuration.import

説明

boolean configuration.import(object parameters)

このメソッドは、シリアル化された文字列から設定データをインポートすることができます。

このメソッドは、すべてのタイプのユーザーが利用できます。メソッドを呼び出す権限は、ユーザーの役割の設定で取り消すことができます。詳細はユーザーの役割を参照してください。

パラメータ

(object) インポートするデータとデータの処理方法に関するルールを含むパラメータ。

パラメータ 説明
format string シリアライズされた文字列のフォーマット。

指定可能な値:
yaml - YAML;
xml - XML;
json - JSON。

パラメータの動作:
- 必須
source string 設定データを含むシリアライズされた文字列。

パラメータの動作:
- 必須
rules object 新規および既存オブジェクトのインポート方法に関するルール。

Admin タイプのユーザーは、自分が読み書き 権限を持つオブジェクトとマップのみをインポートできます。たとえば、ホストおよびそのエンティティ(アイテム、トリガー、グラフなど)は、インポートされるホストが所属するホストグループに対してユーザーのユーザーグループが権限を持っている場合にのみインポートできます。Admin タイプのユーザーはイメージやメディアタイプをインポートできません。

rules パラメータの詳細は下記の表を参照してください。

パラメータの動作:
- 必須

ルールが指定されていない場合、設定は更新されません。

rules オブジェクトは以下のパラメータをサポートします。

パラメータ 説明
discoveryRules object LLDルールのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいLLDルールが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のLLDルールが更新されます。デフォルト: false;
deleteMissing - (boolean) trueの場合、インポートデータに存在しないLLDルールがデータベースから削除されます。デフォルト: false
graphs object グラフのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいグラフが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のグラフが更新されます。デフォルト: false;
deleteMissing - (boolean) trueの場合、インポートデータに存在しないグラフがデータベースから削除されます。デフォルト: false
host_groups object ホストグループのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいホストグループが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のホストグループが更新されます。デフォルト: false
template_groups object テンプレートグループのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいテンプレートグループが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のテンプレートグループが更新されます。デフォルト: false
hosts object ホストのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいホストが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のホストが更新されます。デフォルト: false
httptests object Webシナリオのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいWebシナリオが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のWebシナリオが更新されます。デフォルト: false;
deleteMissing - (boolean) trueの場合、インポートデータに存在しないWebシナリオがデータベースから削除されます。デフォルト: false
images object イメージのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいイメージが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のイメージが更新されます。デフォルト: false
items object アイテムのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいアイテムが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のアイテムが更新されます。デフォルト: false;
deleteMissing - (boolean) trueの場合、インポートデータに存在しないアイテムがデータベースから削除されます。デフォルト: false
maps object マップのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいマップが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のマップが更新されます。デフォルト: false
mediaTypes object メディアタイプのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいメディアタイプが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のメディアタイプが更新されます。デフォルト: false
templateLinkage object テンプレートリンクのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、インポートされるホストまたはテンプレートにリンクされていないが、インポートデータに存在するテンプレートがリンクされます。デフォルト: false;
deleteMissing - (boolean) trueの場合、インポートされるホストまたはテンプレートにリンクされているが、インポートデータに存在しないテンプレートが、エンティティ(アイテム、トリガーなど)を削除せずにリンク解除されます。デフォルト: false
templates object テンプレートのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいテンプレートが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のテンプレートが更新されます。デフォルト: false
templateDashboards object テンプレートダッシュボードのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいテンプレートダッシュボードが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のテンプレートダッシュボードが更新されます。デフォルト: false;
deleteMissing - (boolean) trueの場合、インポートデータに存在しないテンプレートダッシュボードがデータベースから削除されます。デフォルト: false
triggers object トリガーのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しいトリガーが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存のトリガーが更新されます。デフォルト: false;
deleteMissing - (boolean) trueの場合、インポートデータに存在しないトリガーがデータベースから削除されます。デフォルト: false
valueMaps object ホストまたはテンプレートの値のマップのインポート方法に関するルール。

サポートされるパラメータ:
createMissing - (boolean) trueの場合、新しい値のマップが作成されます。デフォルト: false;
updateExisting - (boolean) trueの場合、既存の値のマップが更新されます。デフォルト: false;
deleteMissing - (boolean) trueの場合、インポートデータに存在しない値のマップがデータベースから削除されます。デフォルト: false

戻り値

(boolean) インポートに成功した場合はtrueを返します。

テンプレートのインポート

XML文字列に含まれるテンプレート設定をインポートします。 XML文字列にアイテムやトリガーが不足している場合、それらはデータベースから削除され、それ以外は変更されません。

リクエスト:

{
           "jsonrpc": "2.0",
           "method": "configuration.import",
           "params": {
               "format": "xml",
               "rules": {
                   "templates": {
                       "createMissing": true,
                       "updateExisting": true
                   },
                   "items": {
                       "createMissing": true,
                       "updateExisting": true,
                       "deleteMissing": true
                   },
                   "triggers": {
                       "createMissing": true,
                       "updateExisting": true,
                       "deleteMissing": true
                   },
                   "valueMaps": {
                       "createMissing": true,
                       "updateExisting": false
                   }
               },
               "source": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<zabbix_export><version>8.0</version><template_groups><template_group><uuid>7df96b18c230490a9a0a9e2307226338</uuid><name>Templates</name></template_group></template_groups><templates><template><uuid>5aef0444a82a4d8cb7a95dc4c0c85330</uuid><template>New template</template><name>New template</name><groups><group><name>Templates</name></group></groups><items><item><uuid>7f1e6f1e48aa4a128e5b6a958a5d11c3</uuid><name>Zabbix agent ping</name><key>agent.ping</key></item><item><uuid>77ba228662be4570830aa3c503fcdc03</uuid><name>Apache server uptime</name><type>DEPENDENT</type><key>apache.server.uptime</key><delay>0</delay><trends>0</trends><value_type>TEXT</value_type><preprocessing><step><type>REGEX</type><parameters><parameter>&lt;dt&gt;Server uptime: (.*)&lt;\/dt&gt;</parameter><parameter>\\1</parameter></parameters></step></preprocessing><master_item><key>web.page.get[127.0.0.1/server-status]</key></master_item></item><item><uuid>6805d4c39a624a8bab2cc8ab63df1ab3</uuid><name>CPU load</name><key>system.cpu.load</key><value_type>FLOAT</value_type><triggers><trigger><uuid>ab4c2526c2bc42e48a633082255ebcb3</uuid><expression>avg(/New template/system.cpu.load,3m)&gt;2</expression><name>CPU load too high on {HOST.HOST} for 3 minutes</name><priority>WARNING</priority></trigger></triggers></item><item><uuid>590efe5731254f089265c76ff9320726</uuid><name>Apache server status</name><key>web.page.get[127.0.0.1/server-status]</key><trends>0</trends><value_type>TEXT</value_type></item></items><valuemaps><valuemap><uuid>8fd5814c45d44a00a15ac6eaae1f3946</uuid><name>Zabbix agent ping</name><mappings><mapping><value>1</value><newvalue>Available</newvalue></mapping><mapping><value>0</value><newvalue>Not available</newvalue></mapping></mappings></valuemap></valuemaps></template></templates></zabbix_export>\n"
           },
           "id": 1
       }

レスポンス:

{
           "jsonrpc": "2.0",
           "result": true,
           "id": 1
       }

ソース

CConfiguration::import() in ui/include/classes/api/services/CConfiguration.php.