資源簡介
Nagios SNMP Plugins package contains two plugins to be used with Nagios
代碼片段和文件信息
/*************************************************************************
?*
?*?plugins?for?Nagios
?*
?*?(C)?2002-2008
?*???Henning?P.?Schmiedehausen
?*???INTERmeta?-?Gesellschaft?fuer?Mehrwertdienste?mbH
?*???Hutweide?15
?*???D-91054?Buckenhof
?*
?*************************************************************************
?*
?*?Checks?the?disks?for?a?given?host?via?snmp?and?the
?*?ucd?snmp?interface.
?*
?*************************************************************************
?*
?*?Distributed?under?GPL.
?*
?*?$Id:?disk_plugin.cv?1.6?2002/01/27?22:10:24?henning?Exp?$
?*
?*/
#include?“snmp_common.h“
#define?RCS_VERSION?“$Revision:?1.6?$?($Date:?2002/01/27?22:10:24?$)“
#define?DISK_INDEX_MIB???????“.1.3.6.1.4.1.2021.9.1.1“
#define?DISK_PATH_MIB????????“.1.3.6.1.4.1.2021.9.1.2“
#define?DISK_DEVICE_MIB??????“.1.3.6.1.4.1.2021.9.1.3“
#define?DISK_MINIMUM_MIB?????“.1.3.6.1.4.1.2021.9.1.4“
#define?DISK_MINPERCENT_MIB??“.1.3.6.1.4.1.2021.9.1.5“
#define?DISK_TOTAL_MIB???????“.1.3.6.1.4.1.2021.9.1.6“
#define?DISK_AVAIL_MIB???????“.1.3.6.1.4.1.2021.9.1.7“
#define?DISK_USED_MIB????????“.1.3.6.1.4.1.2021.9.1.8“
#define?DISK_PERCENT_MIB?????“.1.3.6.1.4.1.2021.9.1.9“
#define?DISK_PERCENTNODE_MIB?“.1.3.6.1.4.1.2021.9.1.10“
#define?DISK_ERRORFLAG_MIB???“.1.3.6.1.4.1.2021.9.1.100“
#define?DISK_ERRORMSG_MIB????“.1.3.6.1.4.1.2021.9.1.101“
int?report_disk(void);
int?main?(int?argc?char?*argv[])
{
??static?struct?option?long_options[]?=?{
????{?“help“??????no_argument???????0?‘h‘?}
????{?“version“???no_argument???????0?‘V‘?}
????{?“timeout“???required_argument?0?‘t‘?}
????{?“community“?required_argument?0?‘C‘?}
????{?“hostname“??required_argument?0?‘H‘?}
????{?“verbose“???no_argument???????0?‘v‘?}
????{?“list“??????no_argument???????0?‘l‘?}
????{?0?0?0?0?}
??};
??int?option_index?=?0;
??int?c;
??int?ret?=?STATE_UNKNOWN;
??bn?=?strdup(basename(argv[0]));
??version?=?VERSION;
#define?OPTS?“?hVvlt:c:w:C:H:“
??
??while(1)
??{
????c?=?getopt_long(argc?argv?OPTS?long_options?&option_index);
????if(c?==?-1?||?c?==?EOF)
??????break;
????switch(c)
????{
??????case?‘?‘:
??????case?‘h‘:
????????print_help();
????????exit(STATE_UNKNOWN);
??????case?‘V‘:
????????print_version();
????????exit(STATE_UNKNOWN);
??????case?‘t‘:
????????if(!is_integer(optarg))
????????{
??????????printf(“%s:?Timeout?interval?(%s)must?be?integer!\n“
?????????????????bn
?????????????????optarg);
??????????exit(STATE_UNKNOWN);
????????}
????????
????????timeout?=?atoi(optarg);
????????if(verbose)
??????????printf(“%s:?Timeout?set?to?%d\n“?bn?timeout);
????????break;
??????case?‘C‘:
????????community?=?strdup(optarg);
????????if(verbose)
??????????printf(“%s:?Community?set?to?%s\n“?bn?community);
????????
????????break;
??????case?‘H‘:
????????hostname?=?strdup(optarg);
????????if(verbose)
??????????printf(“%s:?Hostname?set?to?%s\n“?bn?hostname);
????????break;
??????case?‘v‘:
????????verbose?=?1;
????????printf(“%s:?Verbose?mode?activated\n“
- 上一篇:數字電路課程設計四位串行乘法器
- 下一篇:Debian學習筆記
評論
共有 條評論