Всем привет!
Имеется небольшая онлайн игра, с очень простой системой: купил дерево -> собрал урожай -> продал урожай. Необходимо отслеживать и записывать все действия пользователей в результате которых менялся баланс аккаунта, то есть необходимо знать когда, с какого ip, какое действие было совершено, насколько был изменен баланс акаунта и сколько он составил после этого. Сначала подумал о записи в БД после каждой операции, но таблица выйдет слишком большая, поэтому подумал о записи в файл, при этом создать отдельный файл для каждого пользователя, в результате написал функцию:
public static function addLog($user, $event)
{
$file = \Config::LOG_PATH . $user['id'] . '.log';
$time = date('Y.m.d H:i:s');
$ip = $_SERVER['REMOTE_ADDR'];
$coins = (int) $user['coins'];
$log = "{$time}: {$ip}: {$coins}: {$event}\n";
file_put_contents($file, $log, FILE_APPEND);
return true;
}
Хотелось бы знать насколько это правильно, не слишком ли простой/грубый/тупой способ?