PHP logs - mysql vs file

logging, php

Solution

Depends on what you want to do with those, I'd say :

- If you need to get data from the logs, storing them in MySQL might help

- If you only need to have some data you almost never use (but need in case of something illegal is done on your site, or stuff like that), a file might be well enough

To not slow things down too much, you can also use both (I've used that on some websites with a bit of traffic, where it wouldn't have been wise to store data in DB immediatly) :

- during the day, store the logs in a file

- and once a day (or once an hour, you get the idea), use a batch to parse those files, and put the data in Database

This way, you don't insert data in DB all the time ; and you can (provided a day or an hour has passed) do all the queries you need

Problem

I am in the process of setting up user action logging for my PHP site. Would you recommend storing them in mysql or in text/log files?

Original source