• /
  • EnglishEspañol日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

Caso haja alguma divergência entre a versão em inglês e a traduzida, a versão em inglês prevalece. Acesse esta página para mais informações.

Criar um problema

Integração Postfix

Nossa integração Postfix consolida os dados do servidor de e-mail em uma única visualização, para que você possa rastrear quantos e-mails são enviados, devolvidos ou adiados em um determinado período de tempo. Nossa integração Postfix usa nosso agente de infraestrutura e oferece um dashboard pré-construído com suas métricas Postfix mais importantes, como processo de entrega de e-mail, fila de e-mail e visão geral de mensagens.

Postfix dashboard

Depois de configurar nossa integração Postfix, fornecemos um dashboard para sua métrica Postfix.

Configure a integração do Postfix

Conclua as etapas a seguir para configurar a integração do Postfix:

Instalar o agente de infraestrutura

Para usar a integração do Postfix, você também precisa instalar o agente de infraestrutura no mesmo host. O agente de infraestrutura monitora o próprio host, enquanto a integração que você instalará na próxima etapa amplia seu monitoramento com dados específicos do Postfix.

Exportar dados Postfix

Exporte sua métrica Postfix com pflogsumm. O agente Postfix usapflogsumm como analisador log , que se traduz em dados métricos sobre sua atividade Postfix. Isso fornece detalhes suficientes para antecipar possíveis incidentes com administração de e-mail.

Siga estas etapas para usar pflogsumm.

  1. Execute os seguintes comandos para fazer download e extrair pflogsumm:

    bash
    $
    wget https://jimsun.linxnet.com/downloads/pflogsumm-1.1.3.tar.gz
    bash
    $
    tar xvf pflogsumm-1.1.3.tar.gz
  2. Vá para a pasta pflogsumm .

    bash
    $
    cd pflogsumm-*.*.*
  3. Copie o arquivo pflogsumm.pl para o caminho /usr/local/bin/pflogsumm :

    bash
    $
    sudo cp pflogsumm.pl /usr/local/bin/pflogsumm
  4. Execute os seguintes comandos pflogsumm para exportar a métrica do Postfix:

    bash
    $
    cat /var/log/mail.log | pflogsumm
    $
    cat /var/log/mail.log | pflogsumm -d today

Configurar NRI-Flex para Postfix

Flex, nossa ferramenta de monitoramento aplicativo agnóstico, vem junto com o agente New Relic Infrastructure . Siga estas etapas para criar um arquivo de configuração flexível para seus dados Postfix:

  1. Crie um arquivo chamado postfix-flex-config.yml:

    bash
    $
    touch /etc/newrelic-infra/integrations.d/postfix-flex-config.yml
  2. Atualize o arquivo postfix-flex-config.yml. Recomendamos que você trabalhe com nosso exemplo de configuração abaixo:

    ---
    integrations:
    - name: nri-flex
    config:
    name: postfixFlex
    apis:
    #check if Postfix service is up.
    - event_type: PostfixUp
    commands:
    - run: echo "value:$(systemctl status postfix | grep 'Active':' active' | wc -l)"
    split_by: ':'
    #check if Postfix service is down.
    - event_type: PostfixDown
    commands:
    - run: echo "value:$(systemctl status postfix | grep 'Active':' active' | wc -l)"
    split_by: ':'
    #Read the grand totals messages by using the below script.
    - event_type: PostfixGrandTotals
    commands:
    - run: cat /var/log/mail.log | pflogsumm | grep -A 21 'Grand Totals'
    split: horizontal
    set_header: [metricValue, message]
    regex_match: true
    split_by: \s+(\d+\w*)\s+(.*)
    #Read the number of messages delivered & received in bytes.
    - event_type: PostfixMessageBytes
    commands:
    - run: cat /var/log/mail.log | pflogsumm | grep -A 1 'bytes received'
    split: horizontal
    set_header: [metricValue, messageBytes]
    regex_match: true
    split_by: \s+(\d+\w*)\s+(.*)
    #Read the number of messages held by the user.
    - event_type: PostfixHeldMessage
    commands:
    - run: echo "value:$(cat /var/mail/<USER> | grep -c 'Subject:')"
    split_by: ':'
    #Read the count of SASL authentication failure notifications.
    - event_type: PostfixSASLauthFailed
    commands:
    - run: echo "value:$(cat /var/log/mail.log | grep 'status=deferred (SASL authentication failed' | wc -l)"
    split_by: ':'
    #Read the count of bounced non-delivery notifications.
    - event_type: PostfixBounceNondeliveryNotification
    commands:
    - run: echo "value:$(cat /var/log/mail.log | grep 'postfix/bounce' | wc -l)"
    split_by: ':'
    #Read the number of messages passed through the email delivery process.
    - event_type: PostfixEmailDeliveryProcess
    commands:
    - run: echo "PICKUPvalue:$(cat /var/log/mail.log | grep 'pickup' | wc -l)"
    split_by: ':'
    - run: echo "CLEANUPvalue:$(cat /var/log/mail.log | grep 'cleanup' | wc -l)"
    split_by: ':'
    #Read the number of message inserted in mail queue.
    - event_type: PostfixMessageInsertedinMailQ
    commands:
    - run: echo "Ivalue:$(cat /var/log/mail.log | grep 'queue active'| wc -l)"
    split_by: ':'
    #Read the number of message handled by SMTP process.
    - event_type: PostfixMessageHandledBySMTP
    commands:
    - run: echo "SENTmsg:$(cat /var/log/mail.log | grep 'status=sent' | grep "postfix/smtp" | wc -l)"
    split_by: ':'
    - run: echo "BOUNCEDmsg:$(cat /var/log/mail.log | grep 'status=bounced' | grep "postfix/smtp" | wc -l)"
    split_by: ':'
    - run: echo "DEFERREDmsg:$(cat /var/log/mail.log | grep 'status=deferred' | grep "postfix/smtp" | wc -l)"
    split_by: ':'
    #Read the number of message removed from mail queue.
    - event_type: PostfixMessageRemovedFromMailQ
    commands:
    - run: echo "Rvalue:$(cat /var/log/mail.log | grep 'removed'| wc -l)"
    split_by: ':'
    #Read the number of SMTPD connection.
    - event_type: PostfixSMTPDconnection
    commands:
    - run: echo "value:$(cat /var/log/mail.log | grep ' connect from' | wc -l)"
    split_by: ':'
    #Read the number of SMTPD disconnection.
    - event_type: PostfixSMTPDdisconnection
    commands:
    - run: echo "value:$(cat /var/log/mail.log | grep 'disconnect from' | wc -l)"
    split_by: ':'
    #Read the number of SMTP connection.
    - event_type: PostfixSMTPconnection
    commands:
    - run: echo "value:$(cat /var/log/mail.log | grep ' connect to' | wc -l)"
    split_by: ':'
    #Read the number of SMTP disconnection.
    - event_type: PostfixSMTPdisconnection
    commands:
    - run: echo "value:$(cat /var/log/mail.log | grep 'disconnect to' | wc -l)"
    split_by: ':'
    #Read the number of connection timed out.
    - event_type: PostfixSMTPDtimedOut
    commands:
    - run: echo "value:$(cat /var/log/mail.log | grep 'timeout after CONNECT' | wc -l)"
    split_by: ':'
    #Read the number of connection lost.
    - event_type: PostfixSMTPDconnectionLost
    commands:
    - run: echo "value:$(cat /var/log/mail.log | grep 'lost connection' | wc -l)"
    split_by: ':'
    #Read the per-hour traffic report.
    - event_type: PostfixMessagePerHourReport
    commands:
    - run: cat /var/log/mail.log | pflogsumm -d today | grep -i 'Per-Hour Traffic Summary' -A 27
    split: horizontal
    header_split_by: \s+(\w+)\s+(\w+)\s+(\w+)\s+(\w+)\s+(\w+)\s+(.*)
    set_header:
    [
    time,
    received.perhour,
    delivered.perhour,
    deferred.perhour,
    bounced.perhour,
    rejected.perhour,
    ]
    regex_match: true
    split_by: \s+(\d+-\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)
    #Read the per-day traffic summary.
    - event_type: PostfixMessageTrafficPerDay
    commands:
    - run: cat /var/log/mail.log | pflogsumm --zero_fill | grep -C 12 'Per-Day Traffic Summary' -B 0 -A 8 | sed '/Per-Hour Traffic Daily Average/q'
    split: horizontal
    header_split_by: \s+(\w+)\s+(\w+)\s+(\w+)\s+(\w+)\s+(\w+)\s+(.*)
    set_header:
    [date, received, delivered, deferred, bounced, rejected]
    regex_match: true
    split_by: \s+(\w+\s+\d+\s+\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)
    #Read the host/domain summary: message delivery & received.
    - event_type: PostfixHostSummary
    commands:
    - run: cat /var/log/mail.log | pflogsumm | grep -i 'Host/Domain Summary':' Message Delivery' -A 8 | sed -n '2,9p'
    split: horizontal
    header_split_by: \s+(\w+\s+\w+)\s+(\w+)\s+(\w+)\s+(\w+\s+\w+)\s+(\w+\s+\w+)\s+(.*.)
    set_header:
    [sentCount, bytesDelivered, defers, avgDaily, maxDaily, host]
    regex_match: true
    split_by: \s+(\d+)\s+(\d+\w*)\s+(\d+)\s+(\d+.\d+\s+\w)\s+(\d+.\d+\s+\w)\s+(.*)
    - run: cat /var/log/mail.log | pflogsumm | grep -A 15 'Host/Domain Summary':' Messages Received' | sed '/Senders by message count/q'
    split: horizontal
    header_split_by: \s+(\w+\s+\w+)\s+(\w+)\s+(.*.)
    set_header: [msgCount, bytesReceived, hostDetail]
    regex_match: true
    split_by: \s+(\d+)\s+(\d+\w*)\s+(.*)
    #Read the senders & recipients with message count.
    - event_type: PostfixSenderRecipientMessageCount
    commands:
    - run: cat /var/log/mail.log | pflogsumm | grep -C 11 'Senders by message count' -B 1 -A 9 | sed '/Recipients by message count/q'
    split: horizontal
    header_split_by: (.*.)
    set_header: [sender.msgCount, senders]
    regex_match: true
    split_by: \s+(\d+)\s+(.*)
    - run: cat /var/log/mail.log | pflogsumm | grep -C 11 'Recipients by message count' -B 1 -A 9 | sed '/Senders by message size/q'
    split: horizontal
    header_split_by: (.*.)
    set_header: [recipient.msgCount, recipients]
    regex_match: true
    split_by: \s+(\d+)\s+(.*)
    #Read the daemon message details.
    - event_type: PostfixDaemonMessage
    commands:
    - run: cat /var/log/mail.log | pflogsumm | grep -A 10 'Master daemon messages'
    split: horizontal
    set_header: [daemon.msgCount, daemonMessage]
    regex_match: true
    split_by: \s*(\d+)\s+(\w+.*.)
    #Read the message deferral details.
    - event_type: PostfixDeferralMessage
    commands:
    - run: cat /var/log/mail.log | pflogsumm | grep -A 15 'message deferral detail' | sed '/message bounce detail (by relay)/q'
    split: horizontal
    header_split_by: (\s+\w+\s+.*)
    set_header: [deferral.msgCount, deferralMessage]
    regex_match: true
    split_by: \s*(\d+)\s+(\w+.*.)
    #Read the warning message details.
    - event_type: PostfixWarningMessage
    commands:
    - run: cat /var/log/mail.log | pflogsumm | grep -v 'mail_queue_enter' | grep -C 100 'Warnings' -B 1 -A 10 | sed '/Fatal Errors/q'
    split: horizontal
    header_split_by: \s+(\w+)\s+(.*)
    set_header: [Warning.msgCount, warningMessage]
    regex_match: true
    split_by: \s*(\d+)\s\s\s(.*.)
    #Read the error message details.
    - event_type: PostfixErrorMessage
    commands:
    - run: cat /var/log/mail.log | pflogsumm | grep -C 15 'Fatal Errors' -B 1 -A 10 | sed '/Panics/q'
    split: horizontal
    header_split_by: \s+(\w+)\s+(.*)
    set_header: [Fatal.msgCount, fatalMessage]
    regex_match: true
    split_by: \s*(\d+)\s\s\s(.*.)
    #Read the message bounce details.
    - event_type: PostfixBounceMessage
    commands:
    - run: cat /var/log/mail.log | pflogsumm | grep -A 10 'message bounce detail (by relay)' | sed '/message reject detail/q'
    split: horizontal
    header_split_by: \s+(\w+)\s+(.*)
    set_header: [Bounce.msgCount, bounceMessage]
    regex_match: true
    split_by: \s*(\d+)\s\s\s(.*.)

    Se você preferir fazer o seu próprio, certifique-se de que seu arquivo yaml siga o padrão acima. Edite o seguinte atributo conforme necessário:

  • EVENT_TYPE: Uma tabela de banco de dados New Relic que você pode consultar usando NRQL.
  • COMMAND: O comando usado para imprimir métricas no terminal.

Encaminhe seu log do Postfix para o New Relic

Siga estas etapas para encaminhar o log do Postfix para New Relic:

  1. Crie um arquivo denominado logging.yml no diretório do agente de infraestrutura:

    bash
    $
    touch /etc/newrelic-infra/logging.d/logging.yml
  2. Adicione o seguinte trecho ao arquivo logging.yml :

    logs:
    - name: mail.log
    file: /var/log/mail.log
    attributes:
    logtype: postfix_maillog

Reinicie o agente de infraestrutura

Use as instruções em nossos documentos do agente de infraestrutura para reiniciar seu agente de infraestrutura. Este é um comando básico que deve funcionar para a maioria das pessoas:

bash
$
sudo systemctl restart newrelic-infra.service

Encontre e use dados

Siga estas etapas para usar nosso modelo dashboard pré-construído para visualizar facilmente seus dados Postfix:

  1. Vá para

    one.newrelic.com

    e clique em

    + Integrations & Agents

    .

  2. Clique na guia

    Dashboards

    .

  3. Na caixa de pesquisa, digite Postfix.

  4. Ao ver nosso dashboard pré-construído, clique nele para instalá-lo em sua conta.

    Seu dashboard Postfix é um painel personalizado. Acesse-o na interface Dashboards . Para obter documentos sobre como usar e editar o painel, consulte nossos documentos dashboard .

    Para obter mais informações sobre como encontrar e usar seus dados, consulte Compreender os dados de integração. Aqui estão alguns exemplos de consulta NRQL para dados Postfix:

Qual é o próximo?

Para saber mais sobre como construir uma consulta NRQL e gerar um painel, confira estes documentos:

  • Introdução ao criador de consulta para criação de consultas básicas e avançadas.

  • Introdução aos dashboards para personalizar seu dashboard e realizar diversas ações.

  • Gerencie seu dashboard para ajustar o

    modo de exibição ou para adicionar mais conteúdo ao dashboard.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.