MySQL лог SQL запросов

Добавьте следующие строки в MySQL конфиг(my.cnf), для того, что бы начать собирать логи запросов:

slow-query-log
log-output = TABLE
long_query_time = 1
general-log
expire_logs_days = 1

ну и примеры запросов для получения логов:

select * from mysql.general_log order by event_time desc limit 10;
select * from mysql.slow_log order by start_time desc limit 10;

Iptables, записываем log сообщения в отдельный файл

Обычно, сообщения от Iptables записываются в /var/log/messages файл. Хотя, вы можете изменить назначение. Используя специальный файл для хранения логов Iptables вам легче будет проводить последующий анализа.

И так, что бы наши логи писались в отдельный файл, открываем /etc/syslog.conf и добавляем:

kern.warning /var/log/iptables.log

Записываем и перезапускаем syslog:

/etc/init.d/syslog restart

Теперь можно включить логирование в iptables. Например будем логировать весь ssh трафик исходящий с сервера:

-A OUTPUT -p tcp -m tcp —dport 22 -j LOG —log-prefix «outgoing ssh:»

Настраиваем bash историю

Я достаточно много времени трачу в удаленных сессиях SSH на разных серверах, это значит, что я использую bash ежедневно и история bash очень важна. Вот несколько полезный настроек которыми я пользуюсь.

Первое, не сохранять дубликаты:

HISTCONTROL=ignoreboth

Есть несколько других полезных опций HISTCONTROL, например ignorespace, команды которые начинаются с пробела не будут сохраняться; erasedups, все предыдущие команды, которые совпадают с текущей будут удалены из истории.

Второе, это размер истории, в стандартных настройках HISTSIZE равно 500. Я обычно выставляю до 2000.

HISTSIZE=2000

Если вы поставите 0, то в истории ничего не будет сохраняться.

Третье, это имя файла истории, обычно это HISTFILE =~/.bash_history

Так же есть HISTIGNORE, вы можете через точку с запятой записать команды которые не должны попасть в историю

И последнее, как же установить эти значения? Вы можете добавить эти значения в персональный конфигурационный файл ~/.bashrc или в глобальный конфигурационный файл /etc/bashrc просто дописав например :

export HISTCONTROL=ignoreboth 
export HISTSIZE=2000

Естественно, что, для того, что бы ваши изменения вступили в силу, вам необходимо перезапустить вашу сессию. Для того, что бы проверить ваши текущие настройки, наберите команду env.

Самый простой и быстрый способ поиска это нажать Ctrl+r и набрать небольшой фрагмент команды.