# yamllint disable rule:line-length
---
- id: 'notify-email'
  meta:
    name: 'Email'
    link: ''
    categories:
      - notify.agent
    icon_filename: 'email.png'
  keywords:
    - email
  overview:
    notification_description: |
      Send notifications via Email using Netdata's Agent alert notification feature, which supports dozens of endpoints, user roles, and more.
    notification_limitations: ''
  setup:
    prerequisites:
      list:
        - title: ''
          description: |
            - A working sendmail command is required for email alerts to work. Almost all MTAs provide a sendmail interface. Netdata sends all emails as user netdata, so make sure your sendmail works for local users.
            - Access to the terminal where Netdata Agent is running
            - When running Netdata with Docker Compose the emails are sent with `msmtp`, and you need a basic configuration for it to work. 
              
              - Add a [msmtprc](https://marlam.de/msmtp/msmtprc.txt) config file on your Docker root folder, and edit it according to your needs.
              - Link it into your Netdata container with this:
              
                ```yaml
                    volumes:
                      - /path/to/netdata-docker/msmtprc:/etc/msmtprc:ro
                ```
              
              - Update your container with `docker compose up -d`.

    configuration:
      file:
        name: 'health_alarm_notify.conf'
      options:
        description: 'The following options can be defined for this notification'
        folding:
          title: 'Config Options'
          enabled: true
        list:
          - name: 'EMAIL_SENDER'
            default_value: 'netdata'
            description: "You can change `EMAIL_SENDER` to the email address sending the notifications."
            required: false
          - name: 'SEND_EMAIL'
            default_value: 'YES'
            description: "Set `SEND_EMAIL` to YES"
            required: true
          - name: 'DEFAULT_RECIPIENT_EMAIL'
            default_value: 'root'
            description: "Set `DEFAULT_RECIPIENT_EMAIL` to the email address you want the email to be sent by default. You can define multiple email addresses like this: `alarms@example.com` `systems@example.com`."
            required: true
            detailed_description: |
              All roles will default to this variable if left unconfigured.
              The `DEFAULT_RECIPIENT_CUSTOM` can be edited in the following entries at the bottom of the same file:
              ```text
              role_recipients_email[sysadmin]="systems@example.com"
              role_recipients_email[domainadmin]="domains@example.com"
              role_recipients_email[dba]="databases@example.com systems@example.com"
              role_recipients_email[webmaster]="marketing@example.com development@example.com"
              role_recipients_email[proxyadmin]="proxy-admin@example.com"
              role_recipients_email[sitemgr]="sites@example.com"
              ```
      examples:
        folding:
          enabled: true
          title: ''
        list:
          - name: 'Basic Configuration'
            folding:
              enabled: false
            description: ''
            config: |
              #------------------------------------------------------------------------------
              # email global notification options

              EMAIL_SENDER="example@domain.com"
              SEND_EMAIL="YES"
              DEFAULT_RECIPIENT_EMAIL="recipient@example.com"
  troubleshooting:
    problems:
      list: []
