有没有办法将Nginx网站访问日志直接写入MySQL或其它的数据库里?

2012 年 12 月 11 日
 liuxurong
11674 次点击
所在节点    NGINX
16 条回复
wingoo
2012 年 12 月 11 日
隔段时间分析导入?
liwei
2012 年 12 月 11 日
这个工作没必要由nginx来做(而且可能会影响nginx的性能),可以用脚本分析日志然后再写入数据库。
enj0y
2012 年 12 月 11 日
我也觉得这会影响nginx的性能。而且你想想,访问你网站的人数多了,不管访问什么页面都像是一种CC攻击,这种的网站性能能好么。真心没必要。
voidman
2012 年 12 月 11 日
1楼的正解
ericFork
2012 年 12 月 11 日
用纯文本也没啥不好的,汇总到一个地方供分析即可
est
2012 年 12 月 11 日
其实LS说的影响性能的说法不存在。logging可以是一个unix pipe,或者udp这种fire-and-forget方式,甚至是异步的。

http://tengine.taobao.org/document/http_log.html

这个淘宝的nginx fork可以实现各种logging

个人比较推荐udp logging。用来多节点做日志聚合非常方便。
Livid
2012 年 12 月 11 日
Livid
2012 年 12 月 11 日
Fenng
2012 年 12 月 11 日
为毛要这么折腾呢?
plprapper
2012 年 12 月 12 日
nginx日志导入到 mysql里面 之后的处理更复杂 还不如用awk或者perl什么的呢
est
2012 年 12 月 12 日
@plprapper 一个例子,10G日志统计一下浏览器top 5的平均响应时间吧。你用 shellscript 搞一个试试?
ElmerZhang
2012 年 12 月 12 日
用syslog-ng或者rsyslog应该可以实现
plprapper
2012 年 12 月 12 日
@est 100G的apache日志我处理过,没感觉有什么问题。 mysql处理这个东西 我感觉完全不合适。
est
2012 年 12 月 12 日
@plprapper 计算个指标出来也一点问题没有?
plprapper
2012 年 12 月 12 日
不知道你指的指标是什么意思,我经常会通过apache日志统计各个url的pv uv rt等信息 awk里也有用很多 if else 正则 数组 substring什么的 我感觉性能还好 我的blog里面有关于写脚本处理日志的demo 你可以看看 。 10G日志你导入到mysql不知道你到底是神码硬件,能很流畅这样的东西。对UA这样的字段建索引,太折磨mysql了吧
10Buns
2017 年 6 月 20 日
@plprapper 求地址,0101.pro ? 跳转到奇怪的地方

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/54591

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX