首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >teg nginx访问量-错误率-延迟grafana展示

teg nginx访问量-错误率-延迟grafana展示

作者头像
葫芦
发布于 2019-10-16 03:14:57
发布于 2019-10-16 03:14:57
1.4K0
举报
文章被收录于专栏:葫芦葫芦

nginx访问量-错误率-延迟grafana展示

nginx配置:

conf/nginx.conf

代码语言:javascript
AI代码解释
复制
......
http{
......
log_format brown_json  '{"time_local":"$time_iso8601","remote_addr":"$remote_addr","request_status":"$status",'
'"upstream_status":"$upstream_status","request_time":$request_time,"upstream_time":"$upstream_response_time",'
'"body_sent":"$body_bytes_sent","server":"$host","upstream_addr":"$upstream_addr","source_host":"$hostname",'
'"request":"$request","http_referer":"$http_referer","http_user_agent":"$http_user_agent",'
'"http_x_forwarded_for":"$http_x_forwarded_for","globalTicket":"$globalTicket", "remote_port":"$remote_port", "scheme":"$scheme","http_X_Forwarded_Proto":"$http_X_Forwarded_Proto"}';
......
}
server{
......
include upstream/*.conf;
include vhost.d/k8s/*.conf;
......
}

conf/vhost.d/bthlt.com/k8s/api.bthlt.com.conf

代码语言:javascript
AI代码解释
复制
server {
    listen      80;
    server_name api.bthlt.com;

    access_log  /data/log/elk/api.bthlt.com.access.log brown_json;
    error_log  /data/log/nginx/api.bthlt.com.error.log;

    add_header globalticket $globalTicket;
    #proxy_set_header X-Real-IP $remote_addr;
    add_header Access-Control-Allow-Headers globalTicket;
    add_header Access-Control-Max-Age  86400;
    add_header 'Access-Control-Allow-Origin' '*';
    add_header 'Access-Control-Allow-Credentials' 'true';
    add_header 'Access-Control-Allow-Headers' 'Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,X-Requested-With';
    add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS';

    location ~ /\. {
        deny  all;
    }

    location / {
         proxy_redirect off;
         set $globalTicket $pid-$msec-$remote_addr-$request_length-$connection;
         proxy_set_header globalTicket $globalTicket;
         proxy_set_header Host $host:$server_port;
         proxy_http_version 1.1;
         proxy_set_header Connection "";
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         proxy_pass http://k8s_node;
     }

}

conf/upstream/upstream_k8s_node.conf

代码语言:javascript
AI代码解释
复制
upstream k8s_node {
      server 10.1.1.2 id=103 weight=10;
      server 10.1.1.5 id=103 weight=10;
      server 10.1.1.7 id=103 weight=10;
      server 10.1.1.20 id=103 weight=10;
      server 10.1.1.22 id=103 weight=10;
      server 10.1.1.23 id=103 weight=10;
      server 10.1.1.25 id=103 weight=10;
      server 10.1.1.26 id=103 weight=10;
      server 10.1.1.29 id=103 weight=10;
    keepalive 100;
    check interval=3000 rise=2 fall=5 timeout=1000 type=tcp;
}

logstash配置:

/data/log/elk/api.bthlt.com.access.log

代码语言:javascript
AI代码解释
复制
{"time_local":"2019-10-15T13:38:20+08:00","remote_addr":"118.118.118.118","request_status":"200","upstream_status":"200","request_time":0.016,"upstream_time":"0.016","body_sent":"1668","server":"api.bthlt.comm","upstream_addr":"10.10.10.10:80","source_host":"sh-private-nginx-online-01","request":"POST /api3/ec/navigation/page/getPageModule HTTP/1.1","http_referer":"https://bthlt.com/test/test/test-frame.html","http_user_agent":"Mozilla/5.0 (Linux; Android 9; ANE-LX2 Build/HUAWEIANE-L22; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/75.0.3770.143 Mobile Safari/537.36 MicroMessenger/7.0.7.1521(0x27000739) Process/appbrand0 NetType/WIFI Language/zh_CN","http_x_forwarded_for":"103.103.103.103, 103.103.103.103, 118.118.118.118","globalTicket":"28297-1571117900.169-118.118.118.118-1017-1609372566", "remote_port":"29323", "scheme":"http","http_X_Forwarded_Proto":"https"}

/usr/local/logstash-2.4.0/conf/nginx_access.conf

代码语言:javascript
AI代码解释
复制
input {
  file {
    type => "nginx_access"
    path => ["/data/log/elk/*log"]
    sincedb_path => "/usr/local/logstash-2.4.0/sincedb/shipper"
    codec => json {}
    }
}

filter {
    mutate {
        split => ["request" ," "]
        add_field => ["request_method", "%{request[0]}"]
        add_field => ["request_url", "%{request[1]}"]
        add_field => ["request_schema", "%{request[2]}"]
        remove_field => ["request"]
    }

    mutate {
        split => ["http_x_forwarded_for" ,","]
        add_field => ["real_ip", "%{http_x_forwarded_for[0]}"]
    }

  if [real_ip] != "-" {
    geoip {
        source => "real_ip"
        target => "geoip"
        database => "/usr/local/logstash-2.4.0/geodb/GeoLiteCity.dat"
        add_field => [ "[geoip][coordinates]", "%{[geoip][longitude]}" ]
        add_field => [ "[geoip][coordinates]", "%{[geoip][latitude]}"  ]
    }

    mutate {
        convert => [ "[geoip][coordinates]", "float"]
      }
    }
}

output {
  elasticsearch {
      hosts => ["10.1.1.1:9200","10.1.1.2:9200","10.1.1.3:9200"]
      index => "logstash-saas-router-internet-%{+YYYY.MM.dd}"
      flush_size => 2000
      idle_flush_time => 5
      workers => 24
      codec => json {}
  }
}

supervisor启动

代码语言:javascript
AI代码解释
复制
日志采集
[program:logstash-nginx]
environment=LS_HEAP_SIZE=2000m
numprocs=1
command=/usr/local/logstash-2.4.0/bin/logstash -f /usr/local/logstash-2.4.0/conf/nginx_access.conf -l /usr/local/logstash-2.4.0/log/nginx_access.log
autostart=true
autorestart=true
stderr_logfile=/usr/local/logstash-2.4.0/log/logstash.nginx.err
stdout_logfile=/usr/local/logstash-2.4.0/log/logstash.nginx.stout
nodaemon=false

grafana配置:

datasource:添加elasticsearch源代理模式 dashbord:

访问量统计:

  1. add graph
  2. Metrics

A.Query: server.raw="api.bthlt.com", Metrics: Count(), Group by: Date Histogram(@timestamp), Alias: api.bthlt.com 

错误率统计:

  1. add graph
  2. Metrics;

A. Query: request_status:[ 400 TO 499], Metrics: Count(), Group by: Date Histogram(@timestamp), Alias: request_status:[ 400 TO 499 ]

B. Query: request_status:[ 400 TO 499], Metrics: Count(), Group by: Date Histogram(@timestamp), Alias: request_status:[ 400 TO 499 ]

延迟统计:

  1. add graph
  2. Metrics

A.Query: request_time:>0.5, Metrics: Count(), Group by: Date Histogram(@timestamp), Alias: request_time:>0.5

B.Query: request_time:>0.7, Metrics: Count(), Group by: Date Histogram(@timestamp), Alias: request_time:>0.7

C.Query: request_time:>1, Metrics: Count(), Group by: Date Histogram(@timestamp), Alias: request_time:>1 

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/10/15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
5G之争
西方针对华为不是一天两天。新西兰、澳大利亚均封杀华为设备、拒绝让华为参加该国建立5G移动网络投标;华为在英国的国际业务也面临所谓“技术担忧”,英国电信近日亦禁止华为参与竞标公司核心5G网络设备的供应合同。
小小詹同学
2018/12/25
7160
5G之争
纳尼? “美国允许华为参与5G标准”?
最开始看到这个标题的时候,我的第一反应就是:“这又是哪个沙雕无良媒体又在骗流量?”
鲜枣课堂
2020/05/11
4030
全球5G实力大比拼
当下5G正在成为一个越来越热的话题,为了打压中国5G的发展,世界上一些大国使出各种手段,很多早已经不局限于技术和经济手段,甚至出现绑架中国企业的高管的极端手腕。在这种情况下,大家可能会有巨大的好奇心,中国真的需要美国这样来打压吗?当今世界,究竟哪个国家的5G实力最强?
物流IT圈
2019/07/16
1.4K0
全球5G实力大比拼
从产品、芯片和通信网络技术三座大山看MWC的5G之变
各大厂商携5G成熟技术集中亮相MWC,更加注重应用的推广和展示。 移动互联网发展的迅猛之势让MWC展会已经有着不输CES的关注度,本届展会上,除了三星Galaxy S9等众多新产品之外,华为、爱立信、中兴等设备厂商则将更多的精力投注在了5G的身上。 而此次5G成熟技术及相关应用的集体亮相,也使得其成为MWC最大的看点。我们从通信的三座大山----产品、芯片和通信网络技术方面,来看看今年的5G发展到了哪个阶段? MWC2018:5G产业链元素“集体”亮相 ·产品:除了手机,各类5G产品扎堆 不出所料,今年的M
镁客网
2018/05/29
5290
5G技术的相关知识
第五代移动电话行动通信标准,也称第五代移动通信技术,外语缩写:5G。也是4G之后的延伸,正在研究中,5G网络的理论下行速度为10Gb/s(相当于下载速度1.25GB/s)。5G与2G、3G、4G系统不同,它是对现有无线接入技术的技术演进与新增补充性无线接入技术集成后的解决方案的总称,5G将是一个真正意义上的融合网络,这个融合统一的标准将提供人与人、人与物、物与物之间高速、安全、自由的连接。
用户5777378
2019/07/08
1.2K0
5G技术的相关知识
从纯技术角度解析:5G“军备竞赛”中美实力对比
近日,德国表示5G网络建设不会对华为进行区别对待,理由是如果欧洲禁止华为设备,那么欧洲的5G将会落后于中国和美国。自美国颁布禁令以来,各国纷纷站队,中美5G大战瞬间“狼烟四起”,更有甚者将其称之为划时代的“军备竞赛”,只不过核心从传统武器换到了对5G网络的主宰,不论是“战争”还是“竞赛”,这场关于5G的较量已经开启,谁会最终拔得头筹,下面从各个角度来分析。
SDNLAB
2019/05/07
1.4K0
从纯技术角度解析:5G“军备竞赛”中美实力对比
WiMAX战争回忆录
WiMAX,就是Worldwide Interoperability for Microwave Access,全球微波互联接入。名字有点长,它还有另外一个名字,简单多了,就5个数字——802.16。
鲜枣课堂
2019/07/22
5310
爱立信(中国)商业咨询部总经理袁道唯:大数据作为运营商面向未来主体业务的战略观运营观
<数据猿导读> 爱立信(中国)商业咨询部总经理袁道唯在2016年中国通信大数据大会上发表了以“大数据作为运营商面向未来主体业务的战略观运营观”为主题的演讲。在袁道唯在演讲中明确表示,大数据作为未来运营
数据猿
2018/04/19
1.1K0
爱立信(中国)商业咨询部总经理袁道唯:大数据作为运营商面向未来主体业务的战略观运营观
对话《浪潮之巅》作者吴军:5G来了,新的商业发展机会在哪里?
点击上方“腾讯大讲堂”,“星标或置顶公众号” 关键时刻,第一时间送达 来源 / 腾讯科技 (ID: qqtech) 作者 / 李海丹 随着各个国家都在加大对5G的研发投入,以及陆续商用测试,5G俨然已经成为了2019年最重要的技术风口。 5G的应用场景有哪些? 通信厂商、互联网企业如何在5G时代改变? 中国在5G时代,应该做些什么? 嘉宾简介: 吴军,“文津图书奖”得主、硅谷风险投资人、约翰·霍普金斯大学工学院董事;毕业于清华大学、美国约翰·霍普金斯大学,计算机科学博士。于2002年加入谷歌
腾讯大讲堂
2019/07/05
8200
对话《浪潮之巅》作者吴军:5G来了,新的商业发展机会在哪里?
FDD 4G牌照,又一个夜壶,也只是春梦!
昨日,工信部向中国电信和中国联通发放另一种4G网络制式-FDD经营许可,这意味着中国移动、联通、电信全面进入4G时代,也是开年后工业和信息行业监管部门调控经济的重要举措,确实关系到国计民生,引发全民关注,意义重大。但这是否就是2015年经济复苏的兴奋剂,中国联通中国电信挑战中国移动4G领导者地位的必杀技呢?如此之重任,一张4G牌照是否就能担当并不负众望?或者又只是一场单相思的意淫?
曾响铃
2018/08/20
4720
5G商用倒计时,你关心的都在这儿丨科技云·视角
从运营商争分夺秒推进5G网络建设,到各大手机厂商加紧研发5G手机,再到相关产业层面的技术拓展,种种迹象已经表明5G时代即将到来。
科技云报道
2022/04/14
3330
20年逆袭5G之首!论团战,没人打得过中国通信!
过去这一年,大家翘首以待的5G商用终于在全球范围内铺开。去年4月,韩国成为世界第一个商用5G的国家,中国也于2019年6月6日颁发了4张5G牌照。
Bug开发工程师
2020/03/06
5380
20年逆袭5G之首!论团战,没人打得过中国通信!
错过4G还要错过5G?中国联通需要奋起直追赛马会
围绕中国联通smh12345最新年度财报各种维度的报道和分析甚嚣尘上,不足而论。令人欣喜的是中国联通能够能困境中取得较好的成绩,即便使用了不利于企业自身长远发展的策略。2018年已成过去,然而在2019年的5G商用元年,中国联通计划用于5G建设的少量资金或许又将使其重蹈过往的覆辙。
用户4899758
2019/03/20
5160
5G牌照发放,智能互连时代开启
2019年6月10日,工信部向中国电信、中国移动、中国联通、中国广电正式发放5G商用牌照。这是全球5G发展的标志性事件——中国5G时代正式开启。
用户5860209
2019/07/23
4060
5G牌照发放,智能互连时代开启
从1G到5G,从回顾过去到展望未来
始于20世纪80年代的蜂窝式移动通信,只用了30多年的时间,就实现了在全世界的普及。如今,手机是人们随身携带的使用频率最高的工具。手机改变了人类的沟通方式,改变了人类生活、工作和娱乐的方式,甚至改变了人类自己。
边缘计算
2021/07/23
5540
为什么5G标准的制定,是一个“你死我活”的竞争?
2019年是5G商用元年,但是通过新闻报道我们知道,6G的研发已经提上了日程。为什么5G还没有大范围铺开,6G的研发就已经开始了呢?
边缘计算
2020/03/02
7050
2019中国5G及应用排行
导读:2019年6月6日,工信部正式发放5G商用牌照。但此前,5G已经在一些应用场景中展现他的价值。
IT阅读排行榜
2019/06/18
9680
2019中国5G及应用排行
1G到5G的分野之战,通信洗牌即将开始
有人的地方就有江湖,通信江湖上,充斥着“尔虞我诈”,从模拟信号到数字信号,从1G、2G、3G、4G到如今甚嚣尘上的5G,站对了队是平步青云,站错了队就是“万劫不复”。
镁客网
2019/03/18
7910
1G到5G的分野之战,通信洗牌即将开始
刚刚,5G商用牌照正式发布,一共四张!
2019年6月6日,据央视报道,工信部向中国电信、中国移动、中国联通、中国广电发放第五代移动通信业务牌照(即5G商用牌照)。此举标志中国电信产业正式进入5G时代。
Python数据科学
2019/06/14
5750
刚刚,5G商用牌照正式发布,一共四张!
寻找5G新爆点
5G毕竟代表着世界最先进的通信技术,它的到来必然会催生新的行业爆发,我们期待5G对视频内容、云游戏等行业的变革,以及产生的新技术服务。
边缘计算
2020/02/26
5140
推荐阅读
相关推荐
5G之争
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
首页
学习
活动
专区
圈层
工具
MCP广场
首页
学习
活动
专区
圈层
工具
MCP广场