当前位置:首页 > 休闲 > nginx端口都要加上访问日志

nginx端口都要加上访问日志

2026-10-17 05:44:42 [热点] 来源:力不从心网

nginx的口都access_log默认只写在http块里,server块不写就继承——很多人栽在这上面。加上上周帮一个电商客户排查问题,访问他们新上的日志活动页面半夜卡成PPT,查了半天,口都发现那个server块压根没开访问日志。加上所有请求都像掉进黑洞,访问连个影子都留不下。日志

你得理解nginx的口都配置继承逻辑。http块是加上全局的,server块如果没单独写access_log,访问就沿用http里的日志。但一旦某个server块里写了别的口都日志路径,其他没写的加上server就麻烦了——它们会继承那个被改过的配置,而不是访问你最初设的默认值。这坑我踩过不止一次。

具体到端口,80和443要分开记。别图省事全塞一个文件里。我见过有人把80端口和443端口的日志混着写,结果排查HTTPS证书问题时,得在一堆HTTP明文请求里翻半天。分开写,每个端口一个日志文件,出问题直接grep对应端口,效率翻倍。

日志格式也别偷懒。默认的combined格式够用,但如果是API服务,我建议加上$request_time和$upstream_response_time。有一次客户说接口慢,我看日志里$request_time全是0.8秒以上,但$upstream_response_time只有0.1秒——说明瓶颈在nginx和上游之间的网络,而不是后端代码。这俩字段不写,这种问题得靠猜。

还有个细节,日志要带端口号本身。比如log_format里加上$server_port,这样即使你多个server块共用同一个日志文件,也能一眼看出请求打在哪个端口上。别嫌冗余,生产环境出问题的时候,多一个字段就多一条线索。

有人觉得访问日志占磁盘,想省。省可以,但你得知道省的是什么。我见过一个团队把日志级别调到warn,结果线上出故障时,连最基本的请求记录都没有,只能靠猜。访问日志是你排查问题的第一手现场,省了这个,等于蒙着眼睛修车。

实操层面,每个server块里都明确写一行access_log,别依赖继承。哪怕路径跟http块一样,也写出来。这样后来接手的人一看就知道这个端口有日志,不用去翻父配置。我习惯这么写:

server {  listen 8080; access_log /var/log/nginx/8080.access.log main; ... } 

最后说一句,日志轮转也要跟上。不轮转的话,文件涨到几个GB,nginx写日志都变慢,影响性能。logrotate配上,按天切分,保留30天,够了。

端口没日志,出问题就是两眼一抹黑。写上行代码的事,别等出了事故再补。

(责任编辑:休闲)

推荐文章
  • 文件读取漏洞

    文件读取漏洞 一个午后,某甲方运维把一份日志文件甩到我面前——里面密密麻麻全是同一个IP的请求,每一条都在问同一个参数:?file=。那是个下载功能,用户传文件名,服务端拼路径,读文件,返回内容。 问题出在没过滤. ...[详细]
  • 郑州做个物联网开发

    郑州做个物联网开发 去年秋天在郑州高新区一家做智能水表的公司待了三天,车间里堆着刚贴片完的PCBA板子,测试架上几十块表同时跑着流量数据。老板老周指着屏幕上一串跳动的数字说,这玩意儿要是搁五年前,得拉专线才能传回来,现在 ...[详细]
  • 2021个人信息泄露事件

    2021个人信息泄露事件 2021年6月,一个叫"数据交易市场"的Telegram频道突然涌进大量中国公民信息。姓名、身份证号、手机号、家庭住址,甚至精确到门牌号。打包出售,十万条起卖,价格按"新鲜度"浮动。有人在评论区问:" ...[详细]
  • 近代密码向生活的渗透

    近代密码向生活的渗透 你手机里的解锁图案,本质上是九宫格上的一个短密码。它和二战时恩尼格玛机的转子设置,共享同一套数学逻辑——有限状态下的排列组合。只不过前者用来防室友偷看,后者用来防德军潜艇。 2013年斯诺登曝光“棱镜 ...[详细]
  • 网购优惠券

    网购优惠券 凌晨十二点零七分,我蹲在厨房地板上,手机屏幕的光映着脸。手指在三个购物APP之间来回切换,计算器开着,草稿纸上写满了各种组合。就差三块钱,就差三块钱就能凑满399减50的券。冰箱嗡嗡响,我忽然觉得荒谬 ...[详细]
  • 网络平台快三骗局揭秘案例

    网络平台快三骗局揭秘案例 老陈把最后两万块转进那个“导师”给的账户时,手机屏幕上的数字跳了一下,余额从六位数变成了三位数。他盯着那串数字看了很久,脑子里嗡嗡响,像有台老式冰箱在耳边启动。三小时前,他还在群里看别人晒盈利截图,那 ...[详细]
  • 漏洞案例

    漏洞案例 2021年冬天,Log4j2的那个漏洞——CVE-2021-44228——把半个互联网搅得鸡飞狗跳。一个叫`${jndi:ldap://...}`的字符串,塞进任何能被日志记录的地方,就能让服务器主动 ...[详细]
  • l临夏盛河检测

    l临夏盛河检测 ```html 临夏盛河检测 body { font-family: "Microsoft YaHei", "PingFang SC", sans-serif; line-height: 1 ...[详细]
  • 网安网站

    网安网站 凌晨三点,某安全公司的值班群里炸了锅。一个客户的数据库被勒索软件锁死,屏幕上跳出血红色的倒计时——72小时,不交比特币就销毁所有备份。技术员老张连着喝了三杯浓缩咖啡,盯着流量日志里的异常外连IP,突然 ...[详细]
  • 监控网址

    监控网址 去年冬天,我在一家做跨境电商的小公司帮忙。老板让我盯着一个竞品网站,看他们什么时候上新、什么时候改价。我一开始手动刷,一天刷十几次,眼睛都快瞎了。后来同事扔给我一个脚本,说“你挂上就行”。那是我第一次 ...[详细]
热点阅读