Telegraf数据采集系统之Nginx配置

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

前言

Telegraf是一个用Golang写的开源数据收集Agent,基于插件驱动。本身提供的输入和输出插件非常丰富,当然有需求也可以自行编写(需要重新编译)。Telegraf是influxdata公司的时间序列平台TICK技术栈中的“T”,主要用于收集时间序列型数据,比如服务器CPU指标、内存指标、各种IoT设备产生的数据等等。后面抽空会介绍TICK栈中的其他技术及其应用。

下面介绍Telegraf如何配置nginx

  1. telegraf可以采集不同服务器的硬件数据并上报influxdb数据库,持久化保存!!!

<必须在influxdb中配置文件中配置对应的用户和数据库>,如:linux系统服务及nginx、redis、mq、zk等中间件服务;

  1. telegraf支持分布式服务监控,也是在多台服务器部署telegraf服务,并采集数据上报influxdb数据库;

  2. 监控nginx服务配置说明:

[root@localhost /]#  vim /etc/telegraf/telegraf.conf

[[inputs.nginx]]   
    urls = ["http://localhost/nginx_status"] 
[[inputs.logparser]] 
    files = ["/var/log/nginx/access.log"] 
    from_beginning = true name_override = "nginx_access_log" 
[inputs.logparser.grok]  
patterns = ["%{COMBINED_LOG_FORMAT}"]
复制代码

    

  1. 配置服务器nginx的状态访问,查看nginx -V是否支持TLS SNI support enabled

打开nginx.conf配置,添加以下内容:

location /nginx-status { 
    stub_status on; 
    access_log off; 
} 
# 在80或者443端口下的服务,nginx -t 测试, nginx -s reload 静态加载
复制代码

[root@localhost conf]# curl 41.112.110.134:8111/nginx-status  # 至于配置的端口8011可以自定义

Active connections: 5  
server accepts handled requests 
29533 29533 166307  
Reading: 0 Writing: 1 Waiting: 4 
复制代码
tips:解释nginx参数意义:
Active connections – 表示Nginx正在处理的活动连接数为6个 

server  2 表示Nginx启动到现在共处理了640个连接

accepts 2 表示Nginx启动到现在共成功创建640次握手

handled requests 1 表示总共处理了6747次请求

reading — 读取客户端的连接数. 

writing — 响应数据到客户端的数量 

waiting — 开启 keep-alive 的情况下,这个值等于 active – (reading+writing), 意思就是 Nginx 已经处理完正在等候下一次请求指令的驻留连接
复制代码

总结

关于Telegraf更多用法,请参考学习github地址

猜你喜欢

转载自juejin.im/post/7017771389276913695