5 Tipos de mídia

Visão geral

Os tipos de mídia são exportados com todos os objetos e relações objetais.

Exportando

Para exportar tipos de mídia, faça o seguinte:

  • Vá para: AdministraçãoTipos de mídia
  • Marque as caixas de seleção dos tipos de mídia a serem exportados
  • Clique em Exportar abaixo da lista

Dependendo do formato selecionado, os tipos de mídia são exportados para um local arquivo com um nome padrão:

  • zabbix_export_mediatypes.yaml - na exportação YAML (opção padrão Para exportar)
  • zabbix_export_mediatypes.xml - na exportação XML
  • zabbix_export_mediatypes.json - na exportação JSON

Importando

Para importar tipos de mídia, faça o seguinte:

  • Vá para: AdministraçãoTipos de mídia
  • Clique em Importar à direita
  • Selecione o arquivo de importação
  • Marque as opções necessárias nas regras de importação
  • Clique em Importar

Uma mensagem de sucesso ou falha da importação será exibida no a parte dianteira.

Regras de importação:

Regra Descrição
Atualizar existente Os elementos existentes serão atualizados com os dados retirados do arquivo de importação. Caso contrário, eles não serão atualizados.
Criar novo A importação adicionará novos elementos usando dados do arquivo de importação. Caso contrário, não irá adicioná-los.
Delete missing A importação removerá elementos existentes não presentes no arquivo de importação. Caso contrário, não irá removê-los.

Formato de exportação

Exportar para YAML:

zabbix_export:
  versão: '6.0'
  data: '2021-08-31T13:34:17Z'
  media_types:
    -
      nome: Pushover
      tipo: WEBHOOK
      parâmetros:
        -
          nome: ponto final
          valor: 'https://api.pushover.net/1/messages.json'
        -
          nome: eventid
          valor: '{EVENT.ID}'
        -
          nome: event_nseverity
          valor: '{EVENT.NSEVERITY}'
        -
          nome: event_source
          valor: '{EVENT.SOURCE}'
        -
          nome: event_value
          valor: '{EVENT.VALUE}'
        -
          nome: expirar
          valor: '1200'
        -
          nome: mensagem
          valor: '{ALERT.MESSAGE}'
        -
          nome: priority_average
          valor: '0'
        -
          nome: priority_default
          valor: '0'
        -
          nome: priority_disaster
          valor: '0'
        -
          nome: priority_high
          valor: '0'
        -
          nome: priority_information
          valor: '0'
        -
          nome: priority_not_classified
          valor: '0'
        -
          nome: priority_warning
          valor: '0'
        -
          nome: tente novamente
          valor: '60'
        -
          titulo
          valor: '{ALERT.SUBJECT}'
        -
          nome: token
          valor: '<TOKEN DE EMPURRAR AQUI>'
        -
          nome: triggerid
          valor: '{TRIGGER.ID}'
        -
          nome: URL
          valor: '{$ZABBIX.URL}'
        -
          nome: url_title
          valor: Zabbix
        -
          nome: usuário
          valor: '{ALERT.SENDTO}'
      max_sessions: '0'
      roteiro: |
        experimentar {
            var params = JSON.parse(valor),
                solicitação = new HttpRequest(),
                dados,
                resposta,
                gravidade = [
                    {nome: 'not_classified', cor: '#97AAB3'},
                    {nome: 'informações', cor: '#7499FF'},
                    {nome: 'aviso', cor: '#FFC859'},
                    {nome: 'média', cor: '#FFA059'},
                    {nome: 'alto', cor: '#E97659'},
                    {nome: 'desastre', cor: '#E45959'},
                    {nome: 'resolvido', cor: '#009900'},
                    {nome: 'padrão', cor: '#000000'}
                ],
                prioridade;

            if (typeof params.HTTPProxy === 'string' && params.HTTPProxy.trim() !== '') {
                request.setProxy(params.HTTPProxy);
            }

            if ([0, 1, 2, 3].indexOf(parseInt(params.event_source)) === -1) {
                throw 'Parâmetro "event_source" incorreto fornecido: "' + params.event_source + '".\nDeve ser 0-3.';
            }

            if (params.event_value !== '0' && params.event_value !== '1'
                && (params.event_source === '0' || params.event_source === '3')) {
                throw 'Parâmetro "event_value" incorreto fornecido: ' + params.event_value + '\nDeve ser 0 ou 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';
            }

            prioridade = params['priority_' + severities[params.event_nseverity].name] || params.priority_default;

            if (isNaN(prioridade) || prioridade < -2 || prioridade > 2) {
                throw '"prioridade" deve ser -2..2';
            }

            if (params.event_source === '0' && isNaN(params.triggerid)) {
                throw 'campo "triggerid" não é um número';
            }

            if (éNaN(params.eventid)) {
                throw 'campo "eventid" não é um número';
            }

            if (typeof params.message !== 'string' || params.message.trim() === '') {
                throw 'campo "mensagem" não pode estar vazio';
            }

            dados = {
                token: params.token,
                usuário: params.user,
                título: params.title,
                mensagem: 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,
                prioridade: prioridade
            };

            if (prioridade == 2) {
                if (isNaN(params.retry) || params.retry < 30) {
                    throw 'campo "retry" deve ser um número com valor de pelo menos 30 se "priority" for definido como 2';
                }

                if (isNaN(params.expire) || params.expire > 10800) {
                    throw 'campo "expire" deve ser um número com valor de no máximo 10800 se "priority" for definido como 2';
                }

                data.retry = params.retry;
                data.expir = params.expir

Tags de elemento

Os valores de tag de elemento são explicados na tabela abaixo.

Elemento Propriedade do elemento Requerido Tipo Intervalo1 Descrição
media_types - Elemento raiz para media_types.
nome x string Nome do tipo de mídia.
type x string 0 - EMAIL
1 - SMS
2 - SCRIPT
4 - WEBHOOK
Transporte usado pelo tipo de mídia.
status - string 0 - ENABLED (padrão)
1 - DISABLED
Se o tipo de mídia está ativado.
max_sessions - integer Valores possíveis para SMS: 1 - (padrão)

Valores possíveis para outros tipos de mídia: 0-100, 0 - ilimitado
O número máximo de alertas que podem ser processados ​​em paralelo.
attempts - integer 1-10 (padrão: 3) O número máximo de tentativas para enviar um alerta.
attempt_interval - string 0-60s (padrão: 10s) O intervalo entre as tentativas de repetição.

Aceita segundos e unidade de tempo com sufixo.
descrição - string Descrição do tipo de mídia.
message_templates - Elemento raiz para modelos de mensagem de tipo de mídia.
evento_source x string 0 - GATILHOS
1 - DESCOBERTA
2 - AUTOREGISTRATION
3 - INTERNO
Fonte do evento.
operation_mode x string 0 - PROBLEMA
1 - RECUPERAÇÃO
2 - UPDATE
Modo de operação.
assunto - string Assunto da mensagem.
mensagem - string Corpo da mensagem.
Usado apenas pelo tipo de mídia de e-mail
smtp_server x string Servidor SMTP.
smtp_port - integer Padrão: 25 Porta do servidor SMTP para conectar.
smtp_helo x string SMTP helo.
smtp_email x string Endereço de e-mail do qual as notificações serão enviadas.
smtp_security - string 0 - NONE (padrão)
1 - STARTTLS
2 - SSL_OR_TLS
Nível de segurança de conexão SMTP a ser usado.
smtp_verify_host - string 0 - NÃO (padrão)
1 - SIM
SSL verifica host para SMTP. Opcional se smtp_security for STARTTLS ou SSL_OR_TLS.
smtp_verify_peer - string 0 - NÃO (padrão)
1 - SIM
SSL verificar peer para SMTP. Opcional se smtp_security for STARTTLS ou SSL_OR_TLS.
smtp_authentication - string 0 - NONE (padrão)
1 - PASSWORD
Método de autenticação SMTP a ser usado.
nome de usuário - string Nome de usuário.
senha - string Senha de autenticação.
content_type - string 0 - TEXT
1 - HTML (padrão)
Formato da mensagem.
Usado apenas pelo tipo de mídia SMS
gsm_modem x string Nome do dispositivo serial do modem GSM.
Usado apenas pelo tipo de mídia de script
nome do script x string nome do script.
parameters - Elemento raiz para parâmetros de script.
Usado apenas pelo tipo de mídia webhook
script x string Script.
timeout - string 1-60s (padrão: 30s) Intervalo de tempo limite de solicitação HTTP do script Javascript.
process_tags - string 0 - NÃO (padrão)
1 - SIM
Se processar as tags retornadas.
show_event_menu - string 0 - NO (padrão)
1 - YES
Se {EVENT.TAGS.*} foi resolvido com sucesso em event_menu_url e event\ _menu_name, este campo indica presença de entrada no menu de eventos.
evento_menu_url - string URL da entrada do menu do evento. Suporta macro {EVENT.TAGS.*}.
event_menu_name - string Nome da entrada do menu do evento. Suporta macro {EVENT.TAGS.*}.
parameters - Elemento raiz para parâmetros de tipo de mídia de webhook.
nome x string nome do parâmetro do webhook.
valor - string Valor do parâmetro do webhook.
Notas de rodapé

1 Para valores de string, apenas a string será exportada (por exemplo, "EMAIL") sem a numeração utilizada nesta tabela. Os números do intervalo valores (correspondentes aos valores da API) nesta tabela é usado para apenas encomendando.