监控方式
更新时间:2020-05-11 17:55:57
使用外部监控软件
MailStore Nagios / Icinga-Plugin
该Scripts脚本压缩包包括check_mailstore.py插件。插件会检查给定时间段内运行的配置文件数或已归档的电子邮件数。至少需要MailStore Server 8。除非另有说明,否则脚本是根据MIT许可条件发布的。安装
Python API包必须安装。根据您的发行版,您可能必须安装python-argparse软件包。 该插件将连接到MailStore Server管理API。因此,必须在MailStore服务器服务配置中启用它。用法
可以在Nagios / Icinga中定义监视配置文件成功执行的检查,如下所示:define command { command_name check_mailstore command_line /usr/local/lib/nagios/plugins/check_mailstore.py --host $ARG1$ --username $ARG2$ --password $ARG3$ -s since:$ARG4$ --status $ARG5$ -c $ARG6$ -w $ARG7$ --search $ARG8$ }适当的服务定义可能如下所示:
define service { host_name mailstoreserver service_description MailStore Succeeded Profiles check_command check_mailstore!mailstoreserver!admin!sUp3rs3CcR6ET3!1H!succeeded!8!10!profiles use generic-service }此测试检查在最后一个小时(-s1 since:1H)中是否成功执行了10个以上的任务(--status成功)。
注意:监视SPE实例时,必须使用服务提供商的管理员凭据,该凭据用于登录到SPE管理控制台。
参量
该插件支持以下参数。--help|--h
显示帮助页面。
--host HOST
MailStore服务器的主机名或IP地址。 --port PORT MailStore管理API接受连接的TCP端口。默认值为8463。
--username USERNAME|--user USERNAME
登录MailStore服务器的用户名。这必须是MailStore管理员。
--password PASSWORD|--pass PASSWORD
用户密码。
--start STARTTIME|-s STARTTIME
指定检查周期的开始时间。开始时间必须以YYYY-mm-ddTHH:MM:SS的格式给出(例如2013-01-01T00:00:00)。该末端参数必须给出。或者,也可以使用以下格式的时间段:XY,其中X是数字,Y是以下字母之一:Y(年),m(月),d(天),H(小时),M (分钟)S(秒)。示例-s since:90M(最近90分钟)。
--end ENDTIME|-e ENDTIME
指定时间段的结束时间。格式为YYYY-mm-ddTHH:MM:SS(例如2013-02-28T23:59:59)。在--start中使用since时,不需要此参数。
--timezone TIMEZONE
MailStore Server以UTC时间存储日期。可以使用此参数调整插件的输出。默认情况下,使用$ local。这对应于MailStore Server操作系统的时区设置。使用API命令GetTimeZones可以显示可能的值。在大多数情况下,不需要此参数。
--machinename MACHINENAME
按MACHINENAME过滤结果。当监视不同计算机的本地配置文件的结果时,这很有用。
--filteruser USERNAME
按USERNAME过滤结果。当监视不同用户的配置文件的结果时,这很有用。
--profile PROFILE
通过归档配置文件过滤结果,必须提供归档配置文件的ID。可以使用API方法GetProfiles检索配置文件的ID 。或者,您可以在MailStore Client中选择配置文件,然后按Ctrl + Shift + P获取原始配置文件详细信息。
--status STATUS
按状态过滤结果。可能的值是成功,失败,取消,断开连接,threadAbort,completedWithWarnings和completedWithErrors。可以通过在#前面加上否定状态。默认设置成功。如果要获取所有概要文件的结果,而不管其状态如何,请使用#all。
--search [profiles|emails]
指定是否检查返回的配置文件数或已归档的邮件数,默认为个人资料。
--warning WARNING|-w WARNING
警告阈值。
--critical CRITICAL|-c CRITICAL
临界阈值。
--compare COMPARE
指定如何将警告和关键值与结果数量进行比较。可能的值是lt,le,eq,ge,gt(小于,小于或等于,等于,大于或等于,大于)。默认值为le(小于或等于)。
--DEBUG
如果给出,则匹配结果将打印到标准输出。这仅对调试有用。
其他例子
check_mailstore.py --host 192.168.0.1 --username admin --password sUp3rs3CcR6ET3 -s "since:1d" -c 20 -w 22 --search profiles --status="succeeded" --compare lt
如果在最后一天(-s "since:1d")内成功运行(--status "successed")小于20个(-c 20)配置文件(--search profile)。当发现成功运行的配置文件少于22个,则会发出警告。
check_mailstore.py --host 192.168.0.1 --username admin --password sUp3rs3CcR6ET3 -s "since:1d" -c 5 -w 2 --search profiles --status="#succeeded" --compare gt
如果在最后一天(-s "since:1d")内未成功运行(--status "#succeeded")超过5个(-c 5)配置文件(--search profile)。当发现未成功运行的配置文件超过2个,则会发出警告。
check_mailstore.py --host 192.168.0.1 --username admin --password sUp3rs3CcR6ET3 -s "since:1d" -c 5 -w 20 --search emails --profile 7
如果在一天内ID为7的配置文件(--profile 7)存档的电子邮件(--search emails)少于5封(-c 5)。当电子邮件归档少于20封时发出警告,则会发出警告。
监视许可用户
所述check_mailstorelicence来自Scripts脚本压缩包,可被用来监测在邮件存储现有用户使用Nagios / Icinga。不能使用任何外部参数,所有配置都必须在文件内部完成。如果您从外部源同步用户,并且一步创建的用户数量超过免费许可证数量,则此监视将不会发出警报,因为它仅检查现有用户,而不检查应创建的用户。 命令定义:define command { command_name check_mailstorelicence command_line /usr/local/lib/nagios/plugins/check_mailstorelicence.py --host $ARG1$ --password $ARG2$ --licensed $ARG3$ --warning $ARG4$ --critical $ARG5$ }
Nagios / Icinga与NSClient ++
如果您的网络中已经在使用监视软件,例如Nagios / Icinga,Zabbix或HP OpenView,则建议监视Windows任务计划程序的结果。 本示例要求在文件NSC.ini的[NRPE]部分中设置参数allow_arguments = 1。在公共环境中,另一种更安全的方法是在[ 外部别名]]下定义别名。 在Nagios / Icinga下,相应的服务检查如下所示:define service { use generic-service host_name mailstore.mydomain.tld service_description Scheduled Tasks check_command check_nrpe!CheckTaskSched!filter="exit_code ne 0" "syntax=%title%: %exit_code%" "crit=>0" }服务检查在Windows任务计划程序中列出所有计划任务的列表,这些任务的退出代码不等于零。如果有多个事件,则设置检查状态为“严重”。返回包含退出代码不等于零的所有任务及其退出代码的列表。