Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am thinking of making a log server to track all requests that come to my website in someway different from apache logs and thus be able to create custom reporting system.
What is the best way to send such logging record from my web-server to the log-server and to preserve the performance of my webserver (I don't want to affect my web-server's performance). Also I am aware of some cases like getting the log server down, I don't want this to affect the web-server as well.
I was thinking in making web-service or to open a socket from web-server to log-server, but I think in case of server-down for log-server, this will affect my web-server. any idea is highly appreciated!

share|improve this question
Do you need logging records to be sent in real-time? – AlexD May 15 '11 at 7:44
no...i can keep it in a queue..Thanks for your question... i think i got an answer for it – Alaa Alomari May 15 '11 at 7:59

you probably want to look in to a syslog server.

share|improve this answer

i think beanstalk is the best way to handle such cases... simply you can add jobs to beanstalk with whatever data you want, and then the log server can read from beanstalkd tube

share|improve this answer

making a log server to track all someway different from apache logs

Without knowing what you actually want to start recording/analysing it's impossible to say what the best method of achieving this is. Maybe part of the solution is to change the log format. Maybe you need to pipe the logs elsewhere in real time to crunch the data. Maybe it'd be better / necessary to run a proxy in front of the webserver, maybe you could do the log analysis offline. Maybe you need an asynchronous message handling system between your application logic and the analyser. Maybe you just need to run a query on your database.

But you've not given us any clues as to what the current architecture is, what your budget is, what information you want to gather, what other constraints might apply....

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.