One of the most important things in the world of servers is assembly / storage / performance analysis of different services logs (log-files). Syslogd program, that accepts messages from various services and rides them it into the files is traditionally used for this purpose. As a rule syslogd functionality is quite enough, but it often happens that more flexibility is needed in the organization of logs storage. And here syslog-ng comes to your rescue. Its main difference from the standard syslog is the possibility to manage logs in a very flexible way. Here you are some examples of syslog-ng advantages: message filtering by predefined patterns, easy setup of logs duplication to remote servers (I call it a central repository). Another feature of syslog-ng allows you to collect and filter messages from services that can't send them to the standard syslog (for example, a web-server, apache/nginx, which have their own built in log system).