See www.zabbix.com for the official Zabbix site.

Docs/specs/ZBXNEXT-1229

From Zabbix.org
Jump to: navigation, search

Dependencies between trigger prototypes

ZBXNEXT-1229

Status: 1.0

Owner: sasha

Dependencies: this development depends on support of versioning for XML import/export Docs/specs/ZBX-7654.

Summary

Currently low-level discovery does not support trigger dependencies in the trigger prototypes. The proposed functionality will add such capability.

Frontend changes

A new "Dependencies" tab will be added in the trigger prototype form with a list of triggers or trigger prototypes. This tab will be identical to the tab in the trigger form.

API changes

A new dependencies parameter will be added to the triggerprototype.create and triggerprototype.update methods similar to the ones in the trigger API.

A new selectDependencies parameter will be added to the triggerprototype.get method similar to the one in trigger.get.

The addDependencies and deleteDependencies methods will not be implemented to avoid adding methods that duplicate the functionality of update.

Validation

Validation rules for trigger prototype dependencies will be identical to existing validation for trigger dependencies plus an additional rule:

  • trigger prototype cannot depend on a trigger prototype from other discovery rule, See below (*).

Details

Trigger prototypes can depend on:

  • a trigger prototype;
  • a regular trigger.

Trigger prototypes cannot depend on:

  • a trigger prototype from other discovery rule (*);
  • a trigger created from a trigger prototype;
  • a trigger prototype itself;
  • a trigger forming circular dependency.

Host trigger prototype cannot depend on:

  • a trigger from a template.

Server changes

Server will automatically create dependencies while processing LLD rules. It will also validate that dependency is valid; if not then dependency will not be created and an error message 'Cannot create circular dependencies for trigger "<trigger name>".' will be set for corresponding discovery rule.

Import/export changes

Trigger prototype dependencies will be exported in the dependencies property for each trigger prototype object.

Keep in mind, that trigger prototype dependencies must be imported after all of the other triggers are imported.

Translation strings

  • Cannot create dependency on trigger prototype itself.
  • Trigger prototype in template "%1$s" has dependency with trigger in template "%2$s".
  • Trigger prototype cannot be dependent on a trigger that is inherited from it.
  • Duplicate dependencies in trigger prototype "%1$s".

Database changes

No database changes will be made.

Documentation

  • What's new in 3.0
  • Zabbix Manual
  • Trigger prototypes

ChangeLog

  • N/A