首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >生成用于日志旋转测试的Nginx日志文件条目

生成用于日志旋转测试的Nginx日志文件条目
EN

Webmasters Stack Exchange用户
提问于 2020-09-22 14:39:01
回答 1查看 472关注 0票数 1

如何为测试服务器上的一个或多个测试(刻录机)域生成Nginx日志文件数据?我想从本质上模拟一个正常的流量被记录的实时网站,但没有提供一个合法的网站。

我已经开始学习logrotate,我正在为我的服务器上的站点调整它。为了更充分地理解它是如何工作的,我理想地希望复制日志文件条目,就像测试域是活动站点一样,而不需要向更多的用户打开域,因为它们本质上是用于此目的的一次性域。

我可以完全(根)访问我的VPS,我可以按我的意愿设置Nginx,测试域都是web端的,而不是内部的,而且我的日志文件随着时间的推移而变得越来越大了(…)。因此,需要logrotate

我不需要传统意义上的基准测试、并发测试或负载测试工具,因为我不想压倒服务器,所以像absiege这样可以在滴滴滴滴模式下运行的工具可能是一种研究的途径。

EN

回答 1

Webmasters Stack Exchange用户

回答已采纳

发布于 2020-09-23 16:19:20

你当然可以使用像absiege之类的东西--但这似乎是为了获得很少的好处,至少考虑到你想要实现的目标。

如果我是你,我只会创建一些随机/空文件。给他们正确的名字,把他们放在正确的位置,logrotate应该正常地做好它的工作--它根本不关心文件的内容是什么,这是有意义的,因为日志文件对于不同的服务,甚至对于同一服务的不同用户,看起来可能不同。

最简单的是,这样的事情可能对你来说就足够了:

touch /var/log/nginx/access.log

或者,如果您想获得一点兴趣,您可以将日期/时间附加到日志文件中,这样您就可以跟踪日志实际上是何时旋转的。您可以将这样的内容放到您的crontab中,让它每分钟/小时运行一次/每小时运行一次/什么的:

echo `date` >> /var/log/nginx/access.log

我想,如果你想让你的假日志看起来更像真实的日志,你可以这样做:

代码语言:javascript
复制
# Generate Random IP Address
IP_ADDRESS="$(( $RANDOM % 254 + 1 )).$(( $RANDOM % 254 + 1 )).$(( $RANDOM % 254 + 1 )).$(( $RANDOM % 254 + 1 ))"
# Get the current date/time
NOW=$(date +"%d/%b/%Y:%H:%M:%S")
# Append a fake entry to the log file
echo "$IP_ADDRESS - - [$NOW +0000] \"GET / HTTP/2.0\" 200 5316 \"https://example.com/\" \"Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36\" \"-\"" >> /var/log/nginx/access.log

上面的代码将使用随机生成的IP地址和当前日期/时间创建如下所示的行:

79.139.188.5 - - [23/Sep/2020:16:07:54 +0000] "GET / HTTP/2.0" 200 5316 "https://example.com/" "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36" "-"

然而,在我看来,让日志看起来像真正的日志似乎有点过分,而且在我看来,它只会使调试变得更加复杂,而不仅仅是将日期/时间附加到文件中。

尽管如此,如果您要根据文件大小旋转日志,您可以使用类似于truncate命令的东西来生成各种大小的文件。例如,此命令创建一个4MB文件:

truncate -s 4M /var/log/nginx/access.log

显然,这些选项都没有真正模拟Nginx日志,但同样,这对于测试logrotate并不是必要的。最后,您可能还发现使用--force选项对logrotate很有帮助,这样您就可以立即看到日志将如何旋转。(见:https://www.shellhacks.com/logrotate-force-log-rotation/)。

祝好运!

票数 2
EN
页面原文内容由Webmasters Stack Exchange提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://webmasters.stackexchange.com/questions/131534

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档