# $Id: smeserver-zabbix-agent.spec,v 1.34 2012/06/07 16:26:43 vip-ire Exp $ # Authority: vip-ire # Name: Daniel Berteaud %define name smeserver-zabbix-agent %define version 0.1 %define release 52 Summary: sme server integration of zabbix agent Name: %{name} Version: %{version} Release: %{release}%{?dist} License: GNU GPL version 2 URL: http://www.zabbix.com/ Group: SMEserver/addon Source: %{name}-%{version}.tar.gz Patch0: smeserver-zabbix-agent-0.1-hostname.patch Patch1: smeserver-zabbix-agent-0.1-template_rename.patch Patch2: smeserver-zabbix-agent-0.1-userparam_ext_ip.patch Patch3: smeserver-zabbix-agent-0.1-userparam_ups.patch Patch4: smeserver-zabbix-agent-0.1-userparam_mysql.patch Patch5: smeserver-zabbix-agent-0.1-userparam_usedMem.patch Patch6: smeserver-zabbix-agent-0.1-userparam_usedMem_brackets.patch Patch7: smeserver-zabbix-agent-0.1-userparam_usedMem_key.patch Patch8: smeserver-zabbix-agent-0.1-userparam_usedMem_Used.patch Patch9: smeserver-zabbix-agent-0.1-userparam_usedMem_Used2.patch Patch10: smeserver-zabbix-agent-0.1-userparam_MemStats.patch Patch11: smeserver-zabbix-agent-0.1-userparam_MemStatsTypo.patch Patch12: smeserver-zabbix-agent-0.1-userparam_Swap.patch Patch13: smeserver-zabbix-agent-0.1-userparam_Swap_key.patch Patch14: smeserver-zabbix-agent-0.1-userparam_removeUselessMemStats.patch Patch15: smeserver-zabbix-agent-0.1-userparam_pusedMem.patch Patch16: smeserver-zabbix-agent-0.1-userparam_upsCharge.patch Patch17: smeserver-zabbix-agent-0.1-disable_passive_mode.patch Patch18: smeserver-zabbix-agent-0.1-mail_in_stats.patch Patch19: smeserver-zabbix-agent-0.1-event_zabbix_agent_update.patch Patch20: smeserver-zabbix-agent-0.1-mail_in_stats_other_denied.patch Patch21: smeserver-zabbix-agent-0.1-fix_expand_sudoers.patch Patch22: smeserver-zabbix-agent-0.1-mail_out_stats.patch Patch23: smeserver-zabbix-agent-0.1-mail_out_stats_typo.patch Patch24: smeserver-zabbix-agent-0.1-mail_out_stats_ignore_local.patch Patch25: smeserver-zabbix-agent-0.1-net_stats.patch Patch26: smeserver-zabbix-agent-0.1-userparam_mysql_size.patch Patch27: smeserver-zabbix-agent-0.1-adjust_masq.patch Patch28: smeserver-zabbix-agent-0.1-timeout_comment.patch Patch29: smeserver-zabbix-agent-0.1-buffers.patch Patch30: smeserver-zabbix-agent-0.1-sudoers_mysql.patch Patch31: smeserver-zabbix-agent-0.1-mysql_size_fixe.patch Patch32: smeserver-zabbix-agent-0.1-userparam_swRaid_status.patch Patch33: smeserver-zabbix-agent-0.1-userparam_comment.patch Patch34: smeserver-zabbix-agent-0.1-userparam_megaraid.patch Patch35: smeserver-zabbix-agent-0.1-userparam_yum_updates.patch Patch36: smeserver-zabbix-agent-0.1-userparam_sensors.patch Patch37: smeserver-zabbix-agent-0.1-sensors_fixes.patch Patch38: smeserver-zabbix-agent-0.1-megaraid_parser.patch Patch39: smeserver-zabbix-agent-0.1-mail_stats_via_cron.patch Patch40: smeserver-zabbix-agent-0.1-mdstat_one_line.patch Patch41: smeserver-zabbix-agent-0.1-megaraid_parser_fix.patch Patch42: smeserver-zabbix-agent-0.1-cpu_num.patch Patch43: smeserver-zabbix-agent-0.1-megaraid_fix_raid10.patch Patch44: smeserver-zabbix-agent-0.1-userparam_smart.patch Patch45: smeserver-zabbix-agent-0.1-smart_missing_return.patch Patch46: smeserver-zabbix-agent-0.1-report_0_for_non_existing_drives.patch Patch47: smeserver-zabbix-agent-0.1-run_megaraid_parser_as_root.patch Patch48: smeserver-zabbix-agent-0.1-run_megaraid_parser_as_root2.patch Patch49: smeserver-zabbix-agent-0.1-several_ups.patch Patch50: smeserver-zabbix-agent-0.1-megaraid_options.patch Patch51: smeserver-zabbix-agent-0.1-new_qpsmtpd.patch Patch52: smeserver-zabbix-agent-0.1-megaraid_options_from_db.patch Patch53: smeserver-zabbix-agent-0.1-disable_megaraid_log.patch Patch54: smeserver-zabbix-agent-0.1-critical_vs_warning.patch Patch55: smeserver-zabbix-agent-0.1-userparam_squid.patch Patch56: smeserver-zabbix-agent-0.1-hostname_from_db.patch Patch57: smeserver-zabbix-agent-0.1-userparam_diskio.patch Patch58: smeserver-zabbix-agent-0.1-userparam_asterisk.patch Patch59: smeserver-zabbix-agent-0.1-userparam_lvm.patch Patch60: smeserver-zabbix-agent-0.1-add_usr_sbin_in_path.patch Patch61: smeserver-zabbix-agent-0.1-statusmail.patch Patch62: smeserver-zabbix-agent-0.1-configure_timeout.patch Patch63: smeserver-zabbix-agent-0.1-better_asterisk_monitoring.patch Patch64: smeserver-zabbix-agent-0.1-fix_closing_bracket.patch Patch65: smeserver-zabbix-agent-0.1-check_crt_expiration.patch BuildArchitectures: noarch BuildRequires: e-smith-devtools BuildRoot: /var/tmp/%{name}-%{version} Requires: e-smith-release >= 7.0 Requires: zabbix-agent Requires: smeserver-remoteuseraccess Requires: perl(IO::Socket) Requires: perl(Net::SSLeay) Requires: perl(Date::Parse) AutoReqProv: no %description smserver integration of zabbix agent. Zabbix is an entreprise-class open source distributed monitoring solution %changelog * Thu Jun 7 2012 Daniel B. - 0.1-52.sme - Add missing perl module in dependency * Thu Jun 7 2012 Daniel B. - 0.1-51.sme - Add certificate expiration script * Fri Oct 28 2011 Daniel B. - 0.1-50.sme - Fix a closing bracket in templates * Wed Oct 26 2011 Daniel B. - 0.1-49.sme - Add better asterisk monitoring capabilities * Fri Jul 08 2011 Daniel B. - 0.1-48.sme - Configure timeout from the DB (prop TimeOut) * Wed May 04 2011 Daniel B. 0.1-47 - Send status mail with some logs and active connexions (StatusMail prop) * Thu Sep 02 2010 Daniel B. 0.1-46 - Add /usr/sbin in path for check_lvm and check_asterisk * Thu Sep 02 2010 Daniel B. 0.1-45 - Add basic asterisk monitoring support - Add basic LVM monitoring support * Wed Aug 04 2010 Daniel B. 0.1-44 - Support up to 8 disks for I/O monitoring. Report valid 0 value for non existing ones to prevent errors in server's log * Wed Jun 23 2010 Daniel B. 0.1-43 - Possibility to set Hostname from the DB [SME: 6083] * Mon May 03 2010 Daniel B. 0.1-42 - disable MegaCli log (which can break monitoring if log file reaches 2GB) - report CRITICAL if both CRITICAL and WARNING are found - add Squid UserParameters (hit ratio, cache size, req per minute) * Wed Mar 17 2010 Daniel B. 0.1-41 - read megaraid options from the DB (number of spares, number of error to ignore) * Fri Mar 12 2010 Daniel B. 0.1-40 - update regex for incomming mail stats for newer qpsmtpd * Wed Feb 17 2010 Daniel B. 0.1-39 - update megaraid-parser.pl script with options to ignore some errors * Mon Jan 4 2010 Daniel B. 0.1-38 - Change UPS UserParameters to use wildcard, so you can monitor several UPS easily (require changes in the templates on the server side) * Sun Dec 6 2009 Daniel B. 0.1-37 - Call megaraid-parser.pl scripts with sudo in zabbix_agentd.conf * Wed Dec 2 2009 Daniel B. 0.1-36 - Run megaraid-parser.pl as root (with sudo) instead of granting zabbix user unrestricted access to MegaCli * Fri Sep 25 2009 Daniel B. 0.1-35 - Support up to 8 disks for smart monitoring. Report valid 0 value for non existing ones to prevent errors in server's log * Tue Sep 01 2009 Daniel B. 0.1-34 - Add missing return after smart parameters (if several disks are monitored) * Mon Aug 31 2009 Daniel B. 0.1-33 - Add system.smart UserParameter (monitor smart values for configured hard drives) * Wed Jul 08 2009 Daniel B. 0.1-32 - Fix megaraid-parser script to support RAID-10 arrays * Mon Jun 08 2009 Daniel B. 0.1-31 - Add cpu.number UserParameter (return the number of CPU on the host) * Wed May 06 2009 Daniel B. 0.1-30 - Create missing tmp directory * Mon Apr 26 2009 Daniel B. 0.1-29 - megaraid-parser.pl is now compatible with newer versions of MegaCli - Fix permission on megaraid-parser.pl script * Thu Apr 23 2009 Daniel B. 0.1-28 - improvements in sensors script - Add megaraid-parser.pl script to get more accurate MegaRaid conrolers informations - use a cronjob to parse mail logs so multiple zabbix server can be used. Also, it won't repport false value if your host has been unreachable for some time - change output of mdstat-parser.pl to report everything in one line (looks like megaraid-parser) * Mon Apr 20 2009 Daniel B. 0.1-27 - Add updates.available to retrieve the number of updates available with yum - Added sensors[*] key to retrieve sensors informations. The value are retrieved with the script /var/lib/zabbix/bin/sensors which can be customized. * Fri Mar 27 2009 Daniel B. 0.1-26 - Add raid.mega.status UserParameters to monitor status of MegaRaid based raid array * Tue Mar 24 2009 Daniel B. 0.1-25 - Add comments for each UserParameter for configuration on the server side (Type of information, unit, etc...) * Tue Mar 24 2009 Daniel B. 0.1-24 - Add raid.sw.status userparameter to report software raid array status - Remove tabs from spec - Permission cleanup on scripts * Wed Mar 18 2009 Daniel B. 0.1-23 - Correct mysql.size parameter (sudo -u mysql) * Mon Mar 09 2009 Daniel B. 0.1-22 - Fix typo in sudoers template (ZABBIX_AGENT_MYSQL) * Mon Mar 02 2009 Daniel B. 0.1-21 - Add smeserver-remoteuseraccess as a dependencie (sudoer templates issue) * Mon Mar 02 2009 Daniel B. 0.1-20 - Adjust masq service on zabbix-agent-update event - Add description of Timout directive - Add BufferSend and BufferSize directive to optimize agent <-> server communication * Sun Mar 01 2009 Daniel B. 0.1-19 - Add size of mysql data (mysql.size) * Fri Feb 20 2009 Daniel B. 0.1-18 - Add stats for InternalInterface and ExternalInterface * Tue Feb 17 2009 Daniel B. 0.1-17 - Ignore local delivery from outgoing mail stats * Tue Feb 17 2009 Daniel B. 0.1-16 - Fix a typo in mail.out.failure UserParameters * Tue Feb 17 2009 Daniel B. 0.1-15 - Add UserParameters for outhoing mails statistics * Tue Feb 17 2009 Daniel B. 0.1-14 - add missing other_denied UserParameters for mailStats - Fix expand-template for /etc/sudoers during zabbix-agent-update event * Tue Feb 17 2009 Daniel B. 0.1-13 - Add incoming mails statistics - Rename signal-event to zabbix-agent-update (to prevent a conflict on sudoers files which needs to be expanded for server and agent) * Wed Feb 11 2009 Daniel B. 0.1-12 - Remove Useless buffers and cache mem - Add vm.memory.size.pused (used memory in %) - Add ups.battery.charge for ups - Added "passive" db parameter - default access is private * Tue Feb 10 2009 Daniel B. 0.1-11 - Fix permissions on mysqladmin_status script * Tue Feb 10 2009 Daniel B. 0.1-10 - Change used swap key * Tue Feb 10 2009 Daniel B. 0.1-9 - Added userparameters for used swap space used in bytes * Tue Feb 10 2009 Daniel B. 0.1-8 - Correct a type in memory statistics (for cached memory) * Tue Feb 10 2009 Daniel B. 0.1-7 - Report also free, buffers and cached mem so stats are more accurate * Tue Feb 10 2009 Daniel B. 0.1-6 - substract cache/buffer from used mem * Tue Feb 10 2009 Daniel B. 0.1-5 - Change key name for used memory - Report Used mem instead of total * Tue Feb 10 2009 Daniel B. 0.1-4 - Escape brackets in template * Tue Feb 10 2009 Daniel B. 0.1-3 - Add UserParameters to repport amount of used memory * Mon Feb 9 2009 Daniel B. 0.1-2 - Add UserParameters to monitor real external IP, UPS status, mysql stats * Fri Feb 6 2009 Daniel B. 0.1-1 - add Hostname directive in zabbix_agentd.conf * Mon Feb 04 2009 Daniel B. 0.1-0 - initial release %prep %setup %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 %patch8 -p1 %patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 %patch13 -p1 %patch14 -p1 %patch15 -p1 %patch16 -p1 %patch17 -p1 %patch18 -p1 %patch19 -p1 %patch20 -p1 %patch21 -p1 %patch22 -p1 %patch23 -p1 %patch24 -p1 %patch25 -p1 %patch26 -p1 %patch27 -p1 %patch28 -p1 %patch29 -p1 %patch30 -p1 %patch31 -p1 %patch32 -p1 %patch33 -p1 %patch34 -p1 %patch35 -p1 %patch36 -p1 %patch37 -p1 %patch38 -p1 %patch39 -p1 %patch40 -p1 %patch41 -p1 %patch42 -p1 %patch43 -p1 %patch44 -p1 %patch45 -p1 %patch46 -p1 %patch47 -p1 %patch48 -p1 %patch49 -p1 %patch50 -p1 %patch51 -p1 %patch52 -p1 %patch53 -p1 %patch54 -p1 %patch55 -p1 %patch56 -p1 %patch57 -p1 %patch58 -p1 %patch59 -p1 %patch60 -p1 %patch61 -p1 %patch62 -p1 %patch63 -p1 %patch64 -p1 %patch65 -p1 %build %{__mkdir_p} root/var/lib/zabbix/tmp perl ./createlinks %install rm -rf $RPM_BUILD_ROOT (cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT) rm -f %{name}-%{version}-filelist /sbin/e-smith/genfilelist $RPM_BUILD_ROOT \ --file /var/lib/zabbix/bin/mysqladmin_status 'attr(0750,root,zabbix)' \ --file /var/lib/zabbix/bin/logtail.pl 'attr(0755,root,root)' \ --file /var/lib/zabbix/bin/mail_in.sh 'attr(0755,root,root)' \ --file /var/lib/zabbix/bin/mail_out.sh 'attr(0755,root,root)' \ --file /var/lib/zabbix/bin/mdstat-parser.pl 'attr(0755,root,root)' \ --file /var/lib/zabbix/bin/megaraid-parser.pl 'attr(0755,root,root)' \ --file /var/lib/zabbix/bin/parse_mail_in.pl 'attr(0755,root,root)' \ --file /var/lib/zabbix/bin/parse_mail_out.pl 'attr(0755,root,root)' \ --file /var/lib/zabbix/bin/sensors 'attr(0750,root,zabbix) %config(noreplace)' \ --file /var/lib/zabbix/bin/check_asterisk 'attr(0750,root,zabbix)' \ --file /var/lib/zabbix/bin/check_lvm 'attr(0755,root,root)' \ --file /var/lib/zabbix/bin/mailstatus.pl 'attr(0755,root,root)' \ --file /var/lib/zabbix/bin/cert_expire.pl 'attr(0755,root,root)' \ --dir /var/lib/zabbix/tmp 'attr(0750,zabbix,zabbix)' \ > %{name}-%{version}-filelist %files -f %{name}-%{version}-filelist %defattr(-,root,root) %clean rm -rf $RPM_BUILD_ROOT %postun #uninstall if [ $1 = 0 ] ; then /sbin/e-smith/db configuration setprop zabbix-agent status disabled /etc/init.d/zabbix-agent stop fi true