我有一个繁忙的网站日志增长非常快。 我想知道是否有办法每天“分裂”日志文件,而不使用外部工具。 编辑:我的错,我在Windows服务器2003年,Apache版本2.0.64。
我有由Apache生成的https_acces_log日志文件,某个Web应用程序将不需要的数据logging到文件中。 我不能阻止应用程序logging数据,所以我想写一个perl / python脚本,它将获取Apache输出的数据,并运行一个正则expression式来实时replace数据。 假设Perl是正确的工具,那么到目前为止我就是在这里。 脚本现在不产生输出。 帮助任何人? $|=1; # Use unbuffered output while (<STDIN>) # Loop through STDIN { $Msg = $_; # Capture the line of input if ($Msg =~ m/&passwd=\w+GET/ ) # Look for the string I don't want { $Msg =~ s/&passwd=\w+GET/&password=XXXXXXGET/g; print $Msg; # Print it } else { print $Msg\n; […]
我刚刚注意到我们网站的联系表格被打破了。 我不知道这是多久,我可能错过了重要的电子邮件。 是否有可能从Apache的日志中恢复POST数据? 编辑 :错误报警…我的Google Apps帐户被搞乱了。 尽pipe如此,得到答案会很有意思;)
我可以在我的Apache服务器上看到多个error_log文件。 例如:error_log,error_log.1,error_log.2,error_log.3,error_log.4 .. 我想最初单个文件是用名称error_log创build的。 然后,在对单个文件进行一些限制之后,error_log文件的所有内容将被移动到error_log.1,并将新的错误插入到error_log中。 我想了解什么是文件大小的限制,或者当服务器决定为error_log创build新的错误文件。 我想这个必须configuration? 另外,我注意到在例子中提到的所有文件的文件大小是不同的。 请帮我理解这个过程如何工作?
我想减less我的Apache访问日志的大小,并需要从js | css | xml | png | gif&more之类的日志中排除静态文件。 我parsing访问日志来跟踪用户活动和网站数据。 我已经尝试了DonNotLog apache指令,但没有工作,可能是我的代码的一些configuration问题:( 我的Apacheconfiguration是 – SetEnvIf Request_URI "(jpg|css)" DontLog LogFormat "%v:%p %h %l %u \"%{%s}t\" %D \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\" %{username}n %{sessionID}n" vhost_combined DontLog
我们把Apache设置为在RedHat框中以www用户身份运行,但是它的日志是以root用户身份编写的,因为进程本身以root用户身份运行。 看来运行的最佳方式是1)以非root用户的身份运行rotatelogs,2)将日志放在为用户提供适当权限的地方。 可以这样做吗? 我在这里没有看到一个方法: https://httpd.apache.org/docs/2.2/programs/rotatelogs.html
我希望能够将error_log显示为网页,以便同事(无根权限)可以查看此问题,以解决PHP开发问题。 在我的CentOS 5.x机器上,错误日志位于:/ var / log / httpd / error_log,目录只有root权限。 我会写一个CGI脚本来显示日志,但是当它运行在apache进程中时,这不是root,所以日志文件不能被访问。 (试过了)。 令我感到困惑的是,即使包含的目录是根访问权限,apache也可以通过写入来logging错误。 我怎么能达到我的目标? 或者你可以提出一个替代scheme吗?
我正在通过我的Apache日志试图debugging的东西,我注意到我的日志中的以下内容: IP被删除1 – – [17 / Oct / 2011:08:58:51 -0400]“GET / HTTP / 1.0”200 1506“ – ”“Go http package” IP去掉2 – – [17 / Oct / 2011:08:58:51 -0400]“GET / HTTP / 1.0”200 1506“ – ”“Go http package” IP被删除1 – – [17 / Oct / 2011:08:58:52 -0400]“GET / HTTP / 1.0”200 1506“ – ”“Go http package” […]
所以我几个月前把我所有的网站都转到亚马逊的EC2服务上,今天我注意到我的驱动能力在90%以上。 做了一点挖掘,似乎大部分由apache创build的access.log文件正在使用。 我想知道什么是最好的方法来处理这个问题。 我的膝盖反应是编写一个每天运行的小脚本(或者每周,每月,任何),将它们全部压缩并放在其他地方,以备将来我需要时 – 很可能是亚马逊的S3。 这是最好的方法,还是有其他人正在使用的标准做法,我应该遵循? 编辑:要回答评论者,这个服务器目前正在运行的Linux – Ubuntu是精确的
我有在Ubuntu的Linux上安装的Apache 2.2.22服务器。 我在端口443上创build了一个虚拟主机,我希望所有的telnet指示都能在访问日志中列出。 所以例如,如果我telnet到端口443上的端口,我什么也没有写,它会在几秒钟后断开连接,然后在访问日志中显示一个指示。 192.168.1.140 – – [15/Jul/2013:11:40:19 +0300] "-" 408 0 "-" "-" 但如果我telnet端口443,键入一些垃圾文本,它断开我我看到没有迹象表明我试图连接的访问日志。 这是我在Apacheconfiguration文件中的访问日志指令: CustomLog ${APACHE_LOG_DIR}/apache-ssl-access.log combined 我怎么才能修复它,即使当我telnet到该端口和键入垃圾,我仍然会看到有人试图连接的迹象? 我有reqtimeout模块启用。 谢谢。