Multivides tipi
Pārskats
Multivides tipi tiek eksportēti kopā ar visiem saistītajiem objektiem un objektu attiecībām.
Eksportēšana
Lai eksportētu mediju tipus, rīkojieties šādi:
- Dodieties uz Alerts > Media types.
- Atzīmējiet eksportējamo mediju tipu izvēles rūtiņas.
- Noklikšķiniet uz Export zem saraksta, lai eksportētu noklusējuma YAML formātā, vai noklikšķiniet uz bultiņas, lai atlasītu citu eksporta formātu.

Atkarībā no atlasītā formāta mediju tipi tiek eksportēti uz lokālu failu ar noklusējuma nosaukumu:
zabbix_export_mediatypes.yaml- YAML eksportā;zabbix_export_mediatypes.xml- XML eksportā;zabbix_export_mediatypes.json- JSON eksportā.
Importēšana
Lai importētu multivides tipus, rīkojieties, kā norādīts tālāk:
- Atveriet Alerts > Media types.
- Augšējā labajā stūrī noklikšķiniet uz Import.
- Atlasiet importēšanas failu.
- Atzīmējiet to importēšanas noteikumu izvēles rūtiņas, kurus vēlaties lietot (skatiet tālāk).
- Konfigurācijas formas apakšējā labajā stūrī noklikšķiniet uz Import.

Importēšanas noteikumi:
| Rule | Description |
|---|---|
| Update existing | Atzīmējiet šo izvēles rūtiņu, lai atjauninātu esošos multivides tipus, izmantojot importēšanas faila datus. |
| Create new | Atzīmējiet šo izvēles rūtiņu, lai izveidotu jaunus multivides tipus, izmantojot importēšanas faila datus. Ja importēšanas failā ir multivides tips, kas jau pastāv (piemēram, Email), jauns tips netiks izveidots, un esošais multivides tips arī netiks atjaunināts. |
Importēšanas laikā nevar pārskatīt multivides tipu izmaiņas. Lietotāja saskarnē tiks parādīts importēšanas veiksmes vai kļūmes ziņojums.
Eksportēšanas formāts
Eksportēšana uz YAML:
zabbix_export:
version: '8.2'
media_types:
- name: Pushover
type: WEBHOOK
parameters:
- name: endpoint
value: 'https://api.pushover.net/1/messages.json'
- name: eventid
value: '{EVENT.ID}'
- name: event_nseverity
value: '{EVENT.NSEVERITY}'
- name: event_source
value: '{EVENT.SOURCE}'
- name: event_value
value: '{EVENT.VALUE}'
- name: expire
value: '1200'
- name: message
value: '{ALERT.MESSAGE}'
- name: priority_average
value: '0'
- name: priority_default
value: '0'
- name: priority_disaster
value: '0'
- name: priority_high
value: '0'
- name: priority_information
value: '0'
- name: priority_not_classified
value: '0'
- name: priority_warning
value: '0'
- name: retry
value: '60'
- name: title
value: '{ALERT.SUBJECT}'
- name: token
value: '<PUSHOVER TOKEN HERE>'
- name: triggerid
value: '{TRIGGER.ID}'
- name: url
value: '{$ZABBIX.URL}'
- name: url_title
value: Zabbix
- name: user
value: '{ALERT.SENDTO}'
status: DISABLED
max_sessions: '0'
script: |
try {
var params = JSON.parse(value),
request = new HttpRequest(),
data,
response,
severities = [
{name: 'not_classified', color: '#97AAB3'},
{name: 'information', color: '#7499FF'},
{name: 'warning', color: '#FFC859'},
{name: 'average', color: '#FFA059'},
{name: 'high', color: '#E97659'},
{name: 'disaster', color: '#E45959'},
{name: 'resolved', color: '#009900'},
{name: 'default', color: '#000000'}
],
priority;
if (typeof params.HTTPProxy === 'string' && params.HTTPProxy.trim() !== '') {
request.setProxy(params.HTTPProxy);
}
if ([0, 1, 2, 3].indexOf(parseInt(params.event_source)) === -1) {
throw 'Incorrect "event_source" parameter given: "' + params.event_source + '".\nMust be 0-3.';
}
if (params.event_value !== '0' && params.event_value !== '1'
&& (params.event_source === '0' || params.event_source === '3')) {
throw 'Incorrect "event_value" parameter given: ' + params.event_value + '\nMust be 0 or 1.';
}
if ([0, 1, 2, 3, 4, 5].indexOf(parseInt(params.event_nseverity)) === -1) {
params.event_nseverity = '7';
}
if (params.event_value === '0') {
params.event_nseverity = '6';
}
priority = params['priority_' + severities[params.event_nseverity].name] || params.priority_default;
if (isNaN(priority) || priority < -2 || priority > 2) {
throw '"priority" should be -2..2';
}
if (params.event_source === '0' && isNaN(params.triggerid)) {
throw 'field "triggerid" is not a number';
}
if (isNaN(params.eventid)) {
throw 'field "eventid" is not a number';
}
if (typeof params.message !== 'string' || params.message.trim() === '') {
throw 'field "message" cannot be empty';
}
data = {
token: params.token,
user: params.user,
title: params.title,
message: params.message,
url: (params.event_source === '0')
? params.url + '/tr_events.php?triggerid=' + params.triggerid + '&eventid=' + params.eventid
: params.url,
url_title: params.url_title,
priority: priority
};
if (priority == 2) {
if (isNaN(params.retry) || params.retry < 30) {
throw 'field "retry" should be a number with value of at least 30 if "priority" is set to 2';
}
if (isNaN(params.expire) || params.expire > 10800) {
throw 'field "expire" should be a number with value of at most 10800 if "priority" is set to 2';
}
data.retry = params.retry;
data.expire = params.expire;
}
data = JSON.stringify(data);
Zabbix.log(4, '[ Pushover Webhook ] Sending request: ' + params.endpoint + '\n' + data);
request.addHeader('Content-Type: application/json');
response = request.post(params.endpoint, data);
Zabbix.log(4, '[ Pushover Webhook ] Received response with status code ' + request.getStatus() + '\n' + response);
if (response !== null) {
try {
response = JSON.parse(response);
}
catch (error) {
Zabbix.log(4, '[ Pushover Webhook ] Failed to parse response received from Pushover');
response = null;
}
}
if (request.getStatus() != 200 || response === null || typeof response !== 'object' || response.status !== 1) {
if (response !== null && typeof response === 'object' && typeof response.errors === 'object'
&& typeof response.errors[0] === 'string') {
throw response.errors[0];
}
else {
throw 'Unknown error. Check debug log for more information.';
}
}
return 'OK';
}
catch (error) {
Zabbix.log(4, '[ Pushover Webhook ] Pushover notification failed: ' + error);
throw 'Pushover notification failed: ' + error;
}
description: |
Skatiet iestatīšanas rokasgrāmatu šeit: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/media/pushover
Iestatiet parametru token ar savas Pushover lietotnes atslēgu.
Piešķirot Pushover multivides tipu Zabbix lietotājam, laukā “Nosūtīt uz” pievienojiet lietotāja atslēgu.
message_templates:
- event_source: TRIGGERS
operation_mode: PROBLEM
subject: 'Problēma: {EVENT.NAME}'
message: |
Problēma sākās {EVENT.TIME} {EVENT.DATE}
Problēmas nosaukums: {EVENT.NAME}
Hosts: {HOST.NAME}
Smaguma pakāpe: {EVENT.SEVERITY}
Darbības dati: {EVENT.OPDATA}
Sākotnējās problēmas ID: {EVENT.ID}
{TRIGGER.URL}
- event_source: TRIGGERS
operation_mode: RECOVERY
subject: 'Atrisināts pēc {EVENT.DURATION}: {EVENT.NAME}'
message: |
Problēma tika atrisināta {EVENT.RECOVERY.TIME} {EVENT.RECOVERY.DATE}
Problēmas nosaukums: {EVENT.NAME}
Problēmas ilgums: {EVENT.DURATION}
Hosts: {HOST.NAME}
Smaguma pakāpe: {EVENT.SEVERITY}
Sākotnējās problēmas ID: {EVENT.ID}
{TRIGGER.URL}
- event_source: TRIGGERS
operation_mode: UPDATE
subject: 'Atjaunināta problēma pēc {EVENT.AGE}: {EVENT.NAME}'
message: |
{USER.FULLNAME} {EVENT.UPDATE.ACTION} problēmu {EVENT.UPDATE.DATE} {EVENT.UPDATE.TIME}.
{EVENT.UPDATE.MESSAGE}
Pašreizējais problēmas stāvoklis ir {EVENT.STATUS}, tās ilgums ir {EVENT.AGE}, apstiprināta: {EVENT.ACK.STATUS}.
- event_source: DISCOVERY
operation_mode: PROBLEM
subject: 'Atklāšana: {DISCOVERY.DEVICE.STATUS} {DISCOVERY.DEVICE.IPADDRESS}'
message: |
Atklāšanas noteikums: {DISCOVERY.RULE.NAME}
Ierīces IP: {DISCOVERY.DEVICE.IPADDRESS}
Ierīces DNS: {DISCOVERY.DEVICE.DNS}
Ierīces statuss: {DISCOVERY.DEVICE.STATUS}
Ierīces darbspējas laiks: {DISCOVERY.DEVICE.UPTIME}
Ierīces servisa nosaukums: {DISCOVERY.SERVICE.NAME}
Ierīces servisa ports: {DISCOVERY.SERVICE.PORT}
Ierīces servisa statuss: {DISCOVERY.SERVICE.STATUS}
Ierīces servisa darbspējas laiks: {DISCOVERY.SERVICE.UPTIME}
- event_source: AUTOREGISTRATION
operation_mode: PROBLEM
subject: 'Automātiskā reģistrācija: {HOST.HOST}'
message: |
Hosta nosaukums: {HOST.HOST}
Hosta IP: {HOST.IP}
Aģenta ports: {HOST.PORT}
Eksportētie elementi
Eksportētie elementi ir izskaidroti tabulā zemāk.
| Element | Type | Description | |
|---|---|---|---|
| name | string | (obligāts) Mediju tipa nosaukums. | |
| type | string | (obligāts) Mediju tipa izmantotais transports. Iespējamās vērtības:1 EMAIL (0), SMS (1), SCRIPT (2), WEBHOOK (4). |
|
| status | string | Vai mediju tips ir iespējots. Iespējamās vērtības:1 ENABLED (0, noklusējums), DISABLED (1) |
|
| max_sessions | integer | Maksimālais brīdinājumu skaits, ko var apstrādāt paralēli. Iespējamās vērtības SMS:1 1 (noklusējums). Iespējamās vērtības citiem mediju tipiem:1 0-100 (kur 0 - neierobežots). |
|
| attempts | integer | Maksimālais mēģinājumu skaits brīdinājuma nosūtīšanai. Iespējamās vērtības:1 1-10 (noklusējums: 3). |
|
| attempt_interval | string | Intervāls (izmantojot sekundes vai laika sufiksu) starp atkārtotiem mēģinājumiem. Iespējamās vērtības:1 0-60s (noklusējums: 10s). |
|
| description | string | Mediju tipa apraksts. | |
| message_templates | Saknes elements mediju tipa ziņojumu veidnēm. | ||
| event_source | string | (obligāts) Notikuma avots. Iespējamās vērtības:1 TRIGGERS (0), DISCOVERY (1), AUTOREGISTRATION (2), INTERNAL (3), SERVICE (4). |
|
| operation_mode | string | Darbības režīms. Iespējamās vērtības:1 PROBLEM (0), RECOVERY (1), UPDATE (2). |
|
| subject | string | Ziņojuma temats. | |
| message | string | Ziņojuma saturs. | |
Skatiet arī: Mediju tipa objekts (skatiet attiecīgo īpašību ar atbilstošu nosaukumu).
Tālāk norādītie papildu elementi tiek eksportēti tikai Email mediju tipam.
| Element | Type | Description | |
|---|---|---|---|
| provider | string | E-pasta pakalpojuma sniedzējs. | |
| smtp_server | string | SMTP serveris. | |
| smtp_port | integer | SMTP servera ports, ar kuru izveidot savienojumu. Noklusējums: 25. |
|
| smtp_helo | string | SMTP helo. | |
| smtp_email | string | E-pasta adrese, no kuras tiks sūtīti paziņojumi. | |
| smtp_security | string | Izmantojamais SMTP savienojuma drošības līmenis. Iespējamās vērtības:1 NONE (0, noklusējums), STARTTLS (1), SSL_OR_TLS (2). |
|
| smtp_verify_host | string | SSL verifikācija SMTP resursdatoram. Iespējamās vērtības:1 NO (0, noklusējums), YES (1). |
|
| smtp_verify_peer | string | SSL verifikācija SMTP vienaudžam. Iespējamās vērtības:1 NO (0, noklusējums), YES (1). |
|
| smtp_authentication | string | Izmantojamā SMTP autentifikācijas metode. Iespējamās vērtības:1 NONE (0, noklusējums), PASSWORD (1), OAUTH (2). |
|
| username | string | Lietotājvārds. | |
| password | string | Autentifikācijas parole. | |
| redirection_url | string | Zabbix lietotāja saskarne URL, uz kuru novirzīt atpakaļ OAuth autorizāciju. | |
| client_id | string | Klienta identifikators, kas reģistrēts OAuth autorizācijas serverī. | |
| authorization_url | string | OAuth URL ar parametriem piekļuves un atsvaidzināšanas žetonu iegūšanai. | |
| token_url | string | OAuth URL autorizācijas žetona apmaiņai pret piekļuves un atsvaidzināšanas žetoniem. | |
| message_format | string | Ziņojuma formāts. Iespējamās vērtības:1 TEXT (0), HTML (1, noklusējums). |
|
Skatiet arī: Media type object (skatiet attiecīgo īpašību ar atbilstošu nosaukumu).
SMS
Tālāk norādītie papildu elementi tiek eksportēti tikai SMS multivides tipam.
| Elements | Type | Apraksts | |
|---|---|---|---|
| gsm_modem | string | (obligāts) GSM modema seriālās ierīces nosaukums. | |
Skatiet arī: Multivides tipa objekts (skatiet attiecīgo īpašību ar atbilstošu nosaukumu).
Skripts
Tālāk norādītie papildu elementi tiek eksportēti tikai Skripts multivides tipam.
| Elements | Tips | Apraksts | |
|---|---|---|---|
| skripta nosaukums | string | (obligāts) Skripta nosaukums. | |
| parametri | Saknes elements skripta parametriem. | ||
| sortorder | string | (obligāts) Skripta parametru secība, kas tiek nodota skriptam kā komandrindas argumenti. | |
| value | string | Skripta parametra vērtība. | |
Skatiet arī: Multivides tipa objekts (attiecībā uz atbilstošo īpašību ar tādu pašu nosaukumu).
webhook
Tālāk norādītie papildu elementi tiek eksportēti tikai webhook multivides tipam.
| Element | Type | Description | |
|---|---|---|---|
| script | string | Skripts. | |
| timeout | string | Javascript skripta HTTP pieprasījuma taimauta intervāls. Iespējamās vērtības:1 1-60s (noklusējums: 30s). |
|
| process_tags | string | Vai apstrādāt atgrieztos tagus. Iespējamās vērtības:1 NO (0, noklusējums), YES (1). |
|
| show_event_menu | string | Norāda ieraksta esamību notikuma izvēlnē, ja {EVENT.TAGS.*} makro ir veiksmīgi atrisināts laukos event_menu_url un event_menu_name.Iespējamās vērtības:1 NO (0, noklusējums), YES (1). |
|
| event_menu_url | string | Notikuma izvēlnes ieraksta URL. Atbalsta {EVENT.TAGS.*} makro. | |
| event_menu_name | string | Notikuma izvēlnes ieraksta nosaukums. Atbalsta {EVENT.TAGS.*} makro. | |
| parameters | Saknes elements webhook multivides tipa parametriem. | ||
| name | string | (obligāts) Webhook parametra nosaukums. | |
| value | string | Webhook parametra vērtība. | |
Skatiet arī: Media type object (skatiet atbilstošo īpašību ar sakritīgu nosaukumu).
Piezīmes
1 API veselo skaitļu vērtības iekavās, piemēram, ENABLED (0), ir minētas tikai uzziņai. Papildu informāciju skatiet saistītajā API objekta lapā tabulas ierakstā vai katras sadaļas beigās.