2

We have that nice/awesome Fogbugz tools that is running on our production server. The problem is that this server handles more than 400 domain names and more than 20 real websites.

The logs are already pretty heavy, and since we've installed Fogbugz, there's a very nice process called heartbeat that is called every 15 seconds!! Just imagine the size of our logs now... polluted with tons of lines like:

GET /fogbugz/heartbeat.asp HTTP/1.1" 302 223 "-" "FogBugz Maintenance Service 7.1"

(see http://fogbugz.stackexchange.com/questions/794/what-does-the-fogbugz-maintenance-service-actually-do)

We're running the latest Apache httpd server version. Is there any way to ignore just this specific request, and not to log it?

mod_log_config may be an option but I didn't find a good answer.

3 Answers 3

4

I've not tested this, but, if you set an environment variable you should be able to switch which file it logs to:

SetEnvIf Request_URI "/fogbugz/heartbeat\.asp$" is_heartbeat_request=1
CustomLog /var/log/httpd/heartbeat_log combined env=is_heartbeat_request
CustomLog /var/log/httpd/access_log combined env=!is_heartbeat_request
0
2

I don't have time to dig up the configs I used to do something like this in the past, but my memory is that you can use the File directive to turn logging off for just one file. I think it would look something like this

<Directory /path/to/dir/holding/file>
  <Files heartbeat.asp>
    CustomLog/dev/null
  </Files>
</Directory>

It might be worth looking at the logging module to see if there's a command to turn off logging instead of logging to /dev/null...

1
  • Maybe this directive: "TransferLog /dev/null" ? ? Dec 17, 2010 at 14:58
0

Look at this section from the link you provided. You can follow the log file name by a pipe and program name to receive the log requests before logging them. So, you can use grep -v heartbeat.asp to filter the matched requests

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .