从F5负载均衡器拉取HTTP代码

我的环境是4台运行Nginx的Ubuntu 14.04服务器,位于F5 Load Balancer之后。 他们正在向Datadog发送指标,并通过SNMP将F5的指标也发送给Datadog。

开发团队要求能够监控HTTP代码。 我不能从服务器端的Nginx中获取它们,因为这只能通过Nginx Plus来实现。 我曾经考虑过通过阅读访问日志来构build一些内部解决scheme,而不是什么,但是并不真的想要走下去。 所以接下来我看着F5,但一直无法抓住他们。

这个OID返回值为0: sysStatHttpRequests::1.3.6.1.4.1.3375.2.1.1.2.1.56

我知道的是不正确的,因为我一秒钟在VIP上发送大约1000个HTTP请求。 以下内容也返回0的值:

 sysFastHttpStatResp2xxCnt 1.3.6.1.4.1.3375.2.1.1.2.14.16 sysFastHttpStatResp3xxCnt 1.3.6.1.4.1.3375.2.1.1.2.14.17 sysFastHttpStatResp4xxCnt 1.3.6.1.4.1.3375.2.1.1.2.14.18 sysFastHttpStatResp5xxCnt 1.3.6.1.4.1.3375.2.1.1.2.14.19 

SNMP正在工作,因为我能够拉动其他指标,如吞吐量,连接等…任何人有任何想法如何拉这个环境中的HTTP代码指标? 或者,也许我完全错过了我需要在F5上设置的东西,以便做到这一点。

  • F5 Big-IP 3900
  • 版本:12.1.1

编辑:解决了我自己的问题。 必须在F5上configurationAVR,然后将HTTPconfiguration文件应用于虚拟服务器。

如果您没有应用fastHTTPconfiguration文件,则不会在该oid上看到统计信息。 正常的HTTPconfiguration文件使用这些oid:

 [root@ltm3:Active:Standalone] mibs # snmptranslate -On F5-BIGIP-SYSTEM-MIB::sysHttpStatResp2xxCnt .1.3.6.1.4.1.3375.2.1.1.2.4.3 [root@ltm3:Active:Standalone] mibs # snmptranslate -On F5-BIGIP-SYSTEM-MIB::sysHttpStatResp3xxCnt .1.3.6.1.4.1.3375.2.1.1.2.4.4 [root@ltm3:Active:Standalone] mibs # snmptranslate -On F5-BIGIP-SYSTEM-MIB::sysHttpStatResp4xxCnt .1.3.6.1.4.1.3375.2.1.1.2.4.5 

如果我在重置统计信息并检查2xx oid后对本地vip执行10k次,我会看到:

 [root@ltm3:Active:Standalone] mibs # snmpget -v 2c -c public localhost .1.3.6.1.4.1.3375.2.1.1.2.4.3.0 F5-BIGIP-SYSTEM-MIB::sysHttpStatResp2xxCnt.0 = Counter64: 10000 

为了让F5开始收集有关HTTP响应代码的指标,我必须在F5上configurationAVR模块。 然后,我只需要将默认的HTTPconfiguration文件应用于我的虚拟服务器池。 有关HTTP代码的统计信息,我们将被跟踪,我可以通过SNMP获取这些统计信息并发送给Datadog。