Notes: 1.start≤end 2.startand":"isnotrequiredifstart=0如果start=0则start和":"不需要 3.ifrangeisofformat"start:"andendisnotspecified,assumeendisinfinity如果区间的格式为"start:"且没有指定end,则假定end为无限大 4.tospecifynegativeinfinity,use"~"指定负无限大使用~nagios安装 5.alertisraisedifmetricisoutsidestartandendrange(inclusiveofendpoints)如果度量标准超出start或end区间(包括)报警发生 6.ifrangestartswith"@",thenalertifinsidethisrange(inclusiveofendpoints)如果区间以@开始,则当度量标准在区间内(包含)时报警发生 Note:Notallpluginsarecodedtoexpectrangesinthisformatyet.Therewillbesomeworkinprovidingmultiplemetrics.注意:使用这种格式,并非所有的插件都被编码为预期的区间。它需要一些工作来提供多个度量标准。
Table3.Exampleranges区间实例 [td] | | | <0or>10,(outsidetherangeof{0..10})超出0-10区间开源监控软件 | | <10,(outside{10..∞})超出10-∞区间 | | >10,(outsidetherangeof{-∞..10})超出-∞-10区间 | | <10or>20,(outsidetherangeof{10..20})超出10-20区间 | | ≥10and≤20,(insidetherangeof{10..20})在10-20区间 | | <0or>10,(outsidetherangeof{0..10})超出0-10区间 |
Table4.Commandlineexamples命令行实例 [td] | | | Criticalif"stuff"isover20,elsewarnifover10(willbecriticalif"stuff"islessthan0) 如果stuff高于20则critical,否则如果超过10则warning(如果stuff低于0则critical) | | Sameasabove.Negative"stuff"isOK同上,负stuff为正常值 | | Criticalif"stuff"isover20,elsewarnif"stuff"isbelow10(willbecriticalif"stuff"islessthan0)如果stuff高于20则critical,否则如果超过10则warning(如果stuff低于0则critical) | | Criticalif"stuff"islessthan1如果stuff超过1则critical | | Criticalif"stuff"isabove10;Warnif"stuff"isabovezero 如果stuff高于10则critical,高于0则warning,负数为正常nagios配置 | | Theonlynoncriticalrangeis5:6只有5-6区间为非critical | | Criticalif"stuff"is10to20如果stuff为10-20则critical(似乎文档有误!) |
2.6.Performancedata性能数据 PerformancedataisdefinedbyNagiosas"everythingafterthe|ofthepluginoutput"-pleaserefertoNagiosdocumentationforinformationoncapturingthisdatatologfiles.However,itistheresponsibilityofthepluginwritertoensuretheperformancedataisina"Nagiosplugins"format.Thisistheexpectedformat:性能数据被Nagios定义为“|之后的输出部分”—请参考Nagios文档信息来捕获这些数据到日志文件。不管怎样,插件编写人员的职责是,确保性能数据满足“Nagios插件”格式。下面是预期的格式: 'label'=value[UOM];[warn];[crit];[min];[max] Notes: 1.spaceseparatedlistoflabel/valuepairs空格分隔label/value对 2.labelcancontainanycharacters其中label可以包含任意字符 3.thesinglequotesforthelabelareoptional.Requiredifspaces,=or'areinthelabel单引号可选。包含空格,等号或单引号时单引号为必须。 4.labellengthisarbitrary,butideallythefirst19charactersareunique(duetoalimitationinRRD).BeawareofalimitationintheamountofdatathatNRPEreturnstoNagios其中label的长度为任意的,但是比较理想的前19个字符应该是不重复的(由于RRD的限制)。须知NRPE返回给Nagios的数据的限制。 5.tospecifyaquotecharacter,usetwosinglequotes要指定一个单引号,使用两个单引号 6.warn,crit,minormaxmaybenull(forexample,ifthethresholdisnotdefinedorminandmaxdonotapply).Trailingunfilledsemicolonscanbedropped其中warn,crit,min,max也可为null(比如临界值没有被定义或者最小最大值没有被应用)。后面空的分号可以省略 7.minandmaxarenotrequiredifUOM=%其中min和max是不需要的,如果UOM为% 8.value,minandmaxinclass[-0-9.].MustallbethesameUOM??看不懂监控软件 9.warnandcritareintherangeformat(see Section2.5).MustbethesameUOM 10.UOM(unitofmeasurement)isoneof: a.nounitspecified-assumeanumber(intorfloat)ofthings(eg,users,processes,loadaverages) b.s-seconds(alsous,ms) c.%-percentage d.B-bytes(alsoKB,MB,TB) e.c-acontinouscounter(suchasbytestransmittedonaninterface) ItisuptothirdpartyprogramstoconverttheNagiospluginsperformancedataintographs.
2.7.Translations Ifpossible,usetranslationtoolsforalloutputtorespecttheuser'slanguagesettings.See Section8.4forguidelinesforthecoreplugins.
3.SystemCommandsandAuxiliaryFiles 3.1.Don'texecutesystemcommandswithoutspecifyingtheirfullpath在没有指定完整路径的情况下不执行系统命令 Don'tuseexec(),popen(),etc.toexecuteexternalcommandswithoutexplicityusingthefullpathoftheexternalprogram.在没有明确指定一个外部程序的完整路径的情况下,不要使用exec(),popen()等函数来执行外部命令nagios培训 Doingotherwisemakesthepluginvulnerabletohijackingbyatrojanhorseearlierinthesearchpath.Seethemainplugindistributionforexamplesonhowthisisdone.否则会使得插件很脆弱而很容易被木马劫持。查看主插件分发实例,这些实例说明了这些是怎么发生的。 3.2.Usespopen()ifexternalcommandsmustbeexecuted使用spopen(),如果外部命令必须执行 Ifyouhavetoexecuteexternalcommandsfromwithinyourpluginandyou'rewritingitinC,usethespopen()functionthatKarlDeBisschophaswritten.如果你必须在你的插件内部执行外部命令,并且你是在用C写插件,使用KarlDeBisschop编写的spopen()函数nagios培训 Thecodeforspopen()andspclose()isincludedwiththecoreplugindistribution.函数spopen()和spclose()的代码已经在核心插件发布中被包含。 3.3.Don'tmaketempfilesunlessabsolutelyrequired如果不是绝对需要不要使用临时文件
|