mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-12-27 03:19:35 +03:00
a6f6c881ff
This commit adds the zed_notify_ntfy() function and hooks it into zed_notify(). This will allow ZED to send notifications to ntfy.sh or a self-hosted Ntfy service, which can be received on a desktop or mobile device. It is configured with ZED_NTFY_TOPIC, ZED_NTFY_URL, and ZED_NTFY_ACCESS_TOKEN variables in zed.rc. Reviewed-by: @classabbyamp Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Dex Wood <slash2314@gmail.com> Closes #15584
172 lines
5.0 KiB
Plaintext
172 lines
5.0 KiB
Plaintext
##
|
||
# zed.rc – ZEDLET configuration.
|
||
##
|
||
# shellcheck disable=SC2034
|
||
|
||
##
|
||
# Absolute path to the debug output file.
|
||
#
|
||
#ZED_DEBUG_LOG="/tmp/zed.debug.log"
|
||
|
||
##
|
||
# Email address of the zpool administrator for receipt of notifications;
|
||
# multiple addresses can be specified if they are delimited by whitespace.
|
||
# Email will only be sent if ZED_EMAIL_ADDR is defined.
|
||
# Enabled by default; comment to disable.
|
||
#
|
||
ZED_EMAIL_ADDR="root"
|
||
|
||
##
|
||
# Name or path of executable responsible for sending notifications via email;
|
||
# the mail program must be capable of reading a message body from stdin.
|
||
# Email will only be sent if ZED_EMAIL_ADDR is defined.
|
||
#
|
||
#ZED_EMAIL_PROG="mail"
|
||
|
||
##
|
||
# Command-line options for ZED_EMAIL_PROG.
|
||
# The string @ADDRESS@ will be replaced with the recipient email address(es).
|
||
# The string @SUBJECT@ will be replaced with the notification subject;
|
||
# this should be protected with quotes to prevent word-splitting.
|
||
# Email will only be sent if ZED_EMAIL_ADDR is defined.
|
||
# If @SUBJECT@ was omited here, a "Subject: ..." header will be added to notification
|
||
#
|
||
#ZED_EMAIL_OPTS="-s '@SUBJECT@' @ADDRESS@"
|
||
|
||
##
|
||
# Default directory for zed lock files.
|
||
#
|
||
#ZED_LOCKDIR="/var/lock"
|
||
|
||
##
|
||
# Minimum number of seconds between notifications for a similar event.
|
||
#
|
||
#ZED_NOTIFY_INTERVAL_SECS=3600
|
||
|
||
##
|
||
# Notification verbosity.
|
||
# If set to 0, suppress notification if the pool is healthy.
|
||
# If set to 1, send notification regardless of pool health.
|
||
#
|
||
#ZED_NOTIFY_VERBOSE=0
|
||
|
||
##
|
||
# Send notifications for 'ereport.fs.zfs.data' events.
|
||
# Disabled by default, any non-empty value will enable the feature.
|
||
#
|
||
#ZED_NOTIFY_DATA=
|
||
|
||
##
|
||
# Pushbullet access token.
|
||
# This grants full access to your account -- protect it accordingly!
|
||
# <https://www.pushbullet.com/get-started>
|
||
# <https://www.pushbullet.com/account>
|
||
# Disabled by default; uncomment to enable.
|
||
#
|
||
#ZED_PUSHBULLET_ACCESS_TOKEN=""
|
||
|
||
##
|
||
# Pushbullet channel tag for push notification feeds that can be subscribed to.
|
||
# <https://www.pushbullet.com/my-channel>
|
||
# If not defined, push notifications will instead be sent to all devices
|
||
# associated with the account specified by the access token.
|
||
# Disabled by default; uncomment to enable.
|
||
#
|
||
#ZED_PUSHBULLET_CHANNEL_TAG=""
|
||
|
||
##
|
||
# Slack Webhook URL.
|
||
# This allows posting to the given channel and includes an access token.
|
||
# <https://api.slack.com/incoming-webhooks>
|
||
# Disabled by default; uncomment to enable.
|
||
#
|
||
#ZED_SLACK_WEBHOOK_URL=""
|
||
|
||
##
|
||
# Pushover token.
|
||
# This defines the application from which the notification will be sent.
|
||
# <https://pushover.net/api#registration>
|
||
# Disabled by default; uncomment to enable.
|
||
# ZED_PUSHOVER_USER, below, must also be configured.
|
||
#
|
||
#ZED_PUSHOVER_TOKEN=""
|
||
|
||
##
|
||
# Pushover user key.
|
||
# This defines which user or group will receive Pushover notifications.
|
||
# <https://pushover.net/api#identifiers>
|
||
# Disabled by default; uncomment to enable.
|
||
# ZED_PUSHOVER_TOKEN, above, must also be configured.
|
||
#ZED_PUSHOVER_USER=""
|
||
|
||
##
|
||
# Default directory for zed state files.
|
||
#
|
||
#ZED_RUNDIR="/var/run"
|
||
|
||
##
|
||
# Turn on/off enclosure LEDs when drives get DEGRADED/FAULTED. This works for
|
||
# device mapper and multipath devices as well. This works with JBOD enclosures
|
||
# and NVMe PCI drives (assuming they're supported by Linux in sysfs).
|
||
#
|
||
ZED_USE_ENCLOSURE_LEDS=1
|
||
|
||
##
|
||
# Run a scrub after every resilver
|
||
# Disabled by default, 1 to enable and 0 to disable.
|
||
#ZED_SCRUB_AFTER_RESILVER=0
|
||
|
||
##
|
||
# The syslog priority (e.g., specified as a "facility.level" pair).
|
||
#
|
||
#ZED_SYSLOG_PRIORITY="daemon.notice"
|
||
|
||
##
|
||
# The syslog tag for marking zed events.
|
||
#
|
||
#ZED_SYSLOG_TAG="zed"
|
||
|
||
##
|
||
# Which set of event subclasses to log
|
||
# By default, events from all subclasses are logged.
|
||
# If ZED_SYSLOG_SUBCLASS_INCLUDE is set, only subclasses
|
||
# matching the pattern are logged. Use the pipe symbol (|)
|
||
# or shell wildcards (*, ?) to match multiple subclasses.
|
||
# Otherwise, if ZED_SYSLOG_SUBCLASS_EXCLUDE is set, the
|
||
# matching subclasses are excluded from logging.
|
||
#ZED_SYSLOG_SUBCLASS_INCLUDE="checksum|scrub_*|vdev.*"
|
||
ZED_SYSLOG_SUBCLASS_EXCLUDE="history_event"
|
||
|
||
##
|
||
# Use GUIDs instead of names when logging pool and vdevs
|
||
# Disabled by default, 1 to enable and 0 to disable.
|
||
#ZED_SYSLOG_DISPLAY_GUIDS=1
|
||
|
||
##
|
||
# Power off the drive's slot in the enclosure if it becomes FAULTED. This can
|
||
# help silence misbehaving drives. This assumes your drive enclosure fully
|
||
# supports slot power control via sysfs.
|
||
#ZED_POWER_OFF_ENCLOSURE_SLOT_ON_FAULT=1
|
||
|
||
##
|
||
# Ntfy topic
|
||
# This defines which topic will receive the ntfy notification.
|
||
# <https://docs.ntfy.sh/publish/>
|
||
# Disabled by default; uncomment to enable.
|
||
#ZED_NTFY_TOPIC=""
|
||
|
||
##
|
||
# Ntfy access token (optional for public topics)
|
||
# This defines an access token which can be used
|
||
# to allow you to authenticate when sending to topics
|
||
# <https://docs.ntfy.sh/publish/#access-tokens>
|
||
# Disabled by default; uncomment to enable.
|
||
#ZED_NTFY_ACCESS_TOKEN=""
|
||
|
||
##
|
||
# Ntfy Service URL
|
||
# This defines which service the ntfy call will be directed toward
|
||
# <https://docs.ntfy.sh/install/>
|
||
# https://ntfy.sh by default; uncomment to enable an alternative service url.
|
||
#ZED_NTFY_URL="https://ntfy.sh"
|