V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
handsomeroger
V2EX  ›  NGINX

关于 nginx 日志一个奇怪的问题

  •  
  •   handsomeroger · 2020-07-07 22:20:20 +08:00 via Android · 2248 次点击
    这是一个创建于 1600 天前的主题,其中的信息可能已经有所发展或是发生改变。
    今天在测试环境部署了一套 elk,想着测试把 nginx 日志打到 elk 里做图形化展示分析。
    部署完成后 vim 了 access.log 手动造了一些日志数据,wq 退出后,发现刷新测试站点就不会有新日志生成了,此时 nginx 是正常的,只是不会生成日志了。需要 reload nginx 后,刷新站点才会有新日志生成,不知道这是什么原理。
    9 条回复    2020-07-08 15:51:38 +08:00
    crystom
        1
    crystom  
       2020-07-07 22:24:12 +08:00
    vi 编辑之后,文件的 inode 变了
    crystom
        2
    crystom  
       2020-07-07 22:24:39 +08:00
    ls -i access.log 可以验证试试
    handsomeroger
        3
    handsomeroger  
    OP
       2020-07-07 22:28:59 +08:00 via Android
    我到家试试
    handsomeroger
        4
    handsomeroger  
    OP
       2020-07-07 23:03:07 +08:00
    @crystom vim 以后 inode 确实变了,看来 nginx 写入日志是指定 inode 写入的?
    xuanbg
        5
    xuanbg  
       2020-07-08 08:36:48 +08:00
    测试日志用 vi 改 access.log ?楼主脑洞真大。。。。。。我这就只会想到 curl http://localhost/xxx
    crystom
        6
    crystom  
       2020-07-08 11:07:59 +08:00
    @handsomeroger 这就是基础知识问题了,正常 C-unix 程序都是打开文件再写入,那就是根据 inode 写入的吧
    handsomeroger
        7
    handsomeroger  
    OP
       2020-07-08 12:59:08 +08:00
    @xuanbg 我需要摘取日志里的特殊字段做分析,访问测试 nginx 没法生成这个字段,都是 "-" 只能手动造。
    defunct9
        8
    defunct9  
       2020-07-08 14:42:18 +08:00
    echo "xxxx" >> access.log
    julyclyde
        9
    julyclyde  
       2020-07-08 15:51:38 +08:00
    很经典的错误
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2775 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 11:39 · PVG 19:39 · LAX 03:39 · JFK 06:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.