Hello, Today I check few of my websites folder under my web server I found that most of the folders contains the file "error_log" at some folders it is in smaller size but in others its around 600-900 MB in size per file. My question is 1. Whether its wise to stop creation of that file by Apache? If yes then how to stop it? 2. Second question is can we stop it for only few websites? 3. And is that safe to delete error_log file? If yes how to search that file in SSH and how to delete it using one command as it would be really hard to delete one by one from each folder. EDIT about question 3: I found this command: cd /home find . -name error_log find . -name error_log -exe rm -f {} \; find . -name error_log the above commands will first find all files and list them, the next one will find all files and remove them, the last will confirm that all the error log files have been deleted. Code (markup): But the command below dont work: find . -name error_log -exe rm -f {} \; Code (markup): Please help me with this. Thank you! -Regards.
find /path/to/logs/error_log.* -mtime +3 -exec rm {}\; Try the above. mtime is added to basically to ensure it dose not delete anything over 3 days old. Deleting the current error_log without restarting apache could result in no logging, this being the reason to add a mtime to the log. Though it will delete all of the error_log.* files that are older. If you want to delete the current log just cat it out. cat > error_log Hope this helps.
1. Apache won't create those files unless you have defined somewhere in your websites configuration files. It is good to have error been logged somewhere to investigate in case any issues occur. You can set a cronjob to delete/empty those error_log files on a weekly basis. 2. Yes, you can. You have to check your websites configuration files. 3. Yes, it is safe but as said in the first point they are good to have incase any issues arise. The command you used is correct, the incorrect part was the 'exe' part. It should be 'exec' and not 'exe'