summaryrefslogtreecommitdiffstats
path: root/src/health/notifications/ntfy/metadata.yaml
blob: 90ce3f6cde610c8947726a048c6424e5cb46a36e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# yamllint disable rule:line-length
---
- id: 'notify-ntfy'
  meta:
    name: 'ntfy'
    link: 'https://ntfy.sh/'
    categories:
      - notify.agent
    icon_filename: 'ntfy.svg'
  keywords:
    - ntfy
  overview:
    notification_description: |
      [ntfy](https://ntfy.sh/) (pronounce: notify) is a simple HTTP-based [pub-sub](https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern) notification service. It allows you to send notifications to your phone or desktop via scripts from any computer, entirely without signup, cost or setup. It's also [open source](https://github.com/binwiederhier/ntfy) if you want to run your own server.
      You can send alerts to an ntfy server using Netdata's Agent alert notification feature, which supports dozens of endpoints, user roles, and more.
    notification_limitations: ''
  setup:
    prerequisites:
      list:
        - title: ''
          description: |
            - (Optional) A [self-hosted ntfy server](https://docs.ntfy.sh/faq/#can-i-self-host-it), in case you don't want to use https://ntfy.sh
            - A new [topic](https://ntfy.sh/#subscribe) for the notifications to be published to
            - Access to the terminal where Netdata Agent is running
    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: 'SEND_NTFY'
            default_value: 'YES'
            description: "Set `SEND_NTFY` to YES"
            required: true
          - name: 'DEFAULT_RECIPIENT_NTFY'
            default_value: ''
            description: "URL formed by the server-topic combination you want the alert notifications to be sent to. Unless hosting your own server, the server should always be set to https://ntfy.sh."
            required: true
            detailed_description: |
              You can define multiple recipient URLs like this: `https://SERVER1/TOPIC1` `https://SERVER2/TOPIC2`

              All roles will default to this variable if left unconfigured.

              You can then have different servers and/or topics per role, by editing DEFAULT_RECIPIENT_NTFY with the server-topic combination you want, in the following entries at the bottom of the same file:
              ```text
              role_recipients_ntfy[sysadmin]="https://SERVER1/TOPIC1"
              role_recipients_ntfy[domainadmin]="https://SERVER2/TOPIC2"
              role_recipients_ntfy[dba]="https://SERVER3/TOPIC3"
              role_recipients_ntfy[webmaster]="https://SERVER4/TOPIC4"
              role_recipients_ntfy[proxyadmin]="https://SERVER5/TOPIC5"
              role_recipients_ntfy[sitemgr]="https://SERVER6/TOPIC6"
              ```
          - name: 'NTFY_USERNAME'
            default_value: ''
            description: "The username for netdata to use to authenticate with an ntfy server."
            required: false
            detailed_description: |
              Only useful on self-hosted ntfy instances. See [users and roles](https://docs.ntfy.sh/config/#users-and-roles) for details.
              Ensure that your user has proper read/write access to the provided topic in `DEFAULT_RECIPIENT_NTFY`
          - name: 'NTFY_PASSWORD'
            default_value: ''
            description: "The password for netdata to use to authenticate with an ntfy server."
            required: false
            detailed_description: |
              Only useful on self-hosted ntfy instances. See [users and roles](https://docs.ntfy.sh/config/#users-and-roles) for details.
              Ensure that your user has proper read/write access to the provided topic in `DEFAULT_RECIPIENT_NTFY`
          - name: 'NTFY_ACCESS_TOKEN'
            default_value: ''
            description: "The access token for netdata to use to authenticate with an ntfy server."
            required: false
            detailed_description: |
              This can be used in place of `NTFY_USERNAME` and `NTFY_PASSWORD` to authenticate with a self-hosted ntfy instance. See [access tokens](https://docs.ntfy.sh/config/?h=access+to#access-tokens) for details.
              Ensure that the token user has proper read/write access to the provided topic in `DEFAULT_RECIPIENT_NTFY`
      examples:
        folding:
          enabled: true
          title: ''
        list:
          - name: 'Basic Configuration'
            folding:
              enabled: false
            description: ''
            config: |
              SEND_NTFY="YES"
              DEFAULT_RECIPIENT_NTFY="https://ntfy.sh/netdata-X7seHg7d3Tw9zGOk https://ntfy.sh/netdata-oIPm4IK1IlUtlA30"
  troubleshooting:
    problems:
      list: []