| Server IP : 193.86.120.172 / Your IP : 216.73.216.67 Web Server : Apache/2.4.63 (Unix) System : Linux JServices 3.10.108 #86003 SMP Wed Oct 22 13:20:46 CST 2025 x86_64 User : kubec ( 1026) PHP Version : 8.2.28 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/local/plugin/notification/ |
Upload File : |
#!/bin/bash
# Copyright (c) 2019 Synology Inc. All rights reserved.
SYNOMIB_PKG_NAME="Syno.ActiveInsight"
SYNOMIB_PKG_VERSION="1.0"
SYNOMIB_PKG_VENDOR="Synology Inc."
SYNOMIB_PKG_MODVER="1.0"
SYNOMIB_RESOURCE_MONITOR="/var/packages/ActiveInsight/target/bin/synomibresourcemonitor"
WHITE_LIST=(
"DiskStatusUnc"
"EBoxHDEcc"
"EBoxHDEccRaidDegraded"
"EboxFanResume"
"EboxFanStop"
"HDEcc"
"HDEccRaidDegraded"
"ImproperShutdown"
"ImproperShutdownFrequently"
"InternalFanResume"
"InternalFanStop"
"OOM"
"RedundantPowerRecoveredProvide"
"RedundantPowerStopProvide"
"TPLUNReachHardLimitPW"
"TPLUNReachSoftLimit"
"ext4_fs_err"
"file_cksum_err"
"VolumeCrashedGeneral"
"RaidGroupCrashed"
"RaidGroupDegraded"
"SSDCacheCrashed"
"SSDCacheDegraded"
"SSDCacheMissing"
"SSDCacheCrashedV2"
"SSDCacheDegradedV2"
"DiskTemperatureAbnormal"
"OverheatShutdownDisk"
"DataVolumeFull"
"DataVolumeLowCapacity"
"DiskStatusWarning"
"DiskStatusCritical"
"DiskStatusFailing"
)
FORBIDDEN_METADATA_KEYS=(
"%COMPANY_NAME%"
"%HOSTNAME%"
"%IP_ADDR%"
"%HTTP_URL%"
"%DATE%"
"%TIME%"
"%OSNAME%"
"%HOST_SN%"
"%DISKSTATION%"
"%HTTPS_URL%"
)
IsEventKeyInWhiteList() {
local event_key="$1"
for element in "${WHITE_LIST[@]}"; do
if [[ "$element" == "$event_key" ]]; then
return 0
fi
done
return 1
}
case $1 in
--sdk-mod-ver)
/bin/echo "${SYNOMIB_PKG_MODVER}"
;;
--name)
/bin/echo "${SYNOMIB_PKG_NAME}"
;;
--pkg-ver)
/bin/echo "${SYNOMIB_PKG_VERSION}"
;;
--vendor)
/bin/echo "${SYNOMIB_PKG_VENDOR}"
;;
--pre)
exit 0
;;
--post)
app="${PACKAGE}"
appVersion="${VERSION%%-*}"
eventKey="${KEY}"
if [[ "${PACKAGE}" != "dsm" ]]; then
exit 0
fi
if ! IsEventKeyInWhiteList "${eventKey}"; then
exit 0
fi
license=$(/var/packages/ActiveInsight/target/bin/synomibresourcemonitor license)
if [[ "${license}" != "PREMIUM" ]]; then
exit 0
fi
filteredParameters="${PARAMETERS}"
for key in "${FORBIDDEN_METADATA_KEYS[@]}"; do
filteredParameters=$(echo "$filteredParameters" | jq -c "del(.\"$key\")")
done
"${SYNOMIB_RESOURCE_MONITOR}" send-event --app "${app}" --app_version "${appVersion}" --event_key "${eventKey}" --metadata "${filteredParameters}"
;;
*)
/bin/echo "Usage: $0 --sdk-mod-ver|--name|--pkg-ver|--vendor|--pre|--post"
;;
esac