Компьютер

ЧП Куликов Михаил Михайлович

Тел:

+380-(50)-589-55-02

Loading
Мы в социальных сетях...

    -  Вконтакте
    -  Facebook
    -  Google+
    -  Twitter
    -  LiveJournal
    -  Я.ру
    -  Одноклассники
    -  RSS
    -  Мой Круг
    -  YouTube
Прочее...

/images/certificate_small.png

Анализ: траст сайта it-kmm.com
Внимание!!! Заработал на 100% новый сервис.

Управляем логами

Ubuntu Linux, как и другие linux-дистрибутивы имеет такое свойство, как детальное документирование всех действий системы, т.е. логированию. Иногда пользователям подробные и большие лог-файлы совершенно ненужны, иногда пользователи жалуются на большой объем этих файлов. Что можно предпринять? Ответ прост - настроить свою систему, особенно правила ведения логов.

Итак, первым делом определите программу-источник наибольшего количества записей в логах. Для этого вам необходимо просто просмотреть часто повторяющиеся последние записи в лог-файлах. Проанализируйте сообщения - возможно они говорят о неправильной настройке приложения. Если все нормально с приложением, то ищем файлы конфигурации этого приложения и отключаем ведение логов или выбираем менее детальный уровень логирования.

Второй этап - настройка ротации лог-файлов. Тут мы зададим все параметры самих лог-файлов и действий над ними.

Обработкой логов занимается программа logrotate, которая вызывается ежедневно как задание cron (cron - запускает запланированные задание в указанное время). Принцип работы ее прост - logrotate осуществляет ротацию, сжатие, удалением лог-файлов и отсылкой их по почте.

Что такое ротация? Простыми словами - это механизм управления логами, который разбивает логи на несколько кусков-файлов в зависимости от периода времени и(или) размера логов. При этом более новые "сдвигают" старые логи на одну позицию, а самый последний удаляется (в большинстве случаев). Чтобы посмотреть на примере - откройте папку и посмотрите на имена файлов и вы увидите что-то вроде этого - syslog syslog.0 syslog.1.gz syslog.2.gz syslog.3.gz syslog.4.gz, где syslog - это текущий лог-файл, syslog.0 - лог-файл прошлой недели, syslog.1.gz - логи 2-недельной давности и т.д. При следующей ротации файл syslog.4.gz будет удален, syslog.3.gz будет переименован в syslog.4.gz, syslog.2.gz - в syslog.3.gz, syslog.1.gz - в syslog.2.gz, syslog.0 в syslog.1.gz, syslog - в syslog.0, а в файл syslog будет очищен для новых логов.

Задавая параметры logrotate мы можем контролировать хранение логов. Конфигурация для logrotate находится в файле /etc/logrotate.conf - посмотрим на него повнимательней.

# see "man logrotate" for details
# rotate log files weekly
weekly

# keep 4 weeks worth of backlogs
rotate 4

# create new (empty) log files after rotating old ones
create

# uncomment this if you want your log files compressed
#compress

# packages drop log rotation information into this directory
include /etc/logrotate.d

# no packages own wtmp, or btmp -- we'll rotate them here
/var/log/wtmp {
    missingok
    monthly
    create 0664 root utmp
    rotate 1
}

/var/log/btmp {
    missingok
    monthly
    create 0660 root utmp
    rotate 1
}

# system-specific logs may be configured here

Это значения по умолчанию, т.е. в этом файле хранятся правила ведения лог-файлов для всех программ за исключением указанных (читай ниже ниже).

Идем по параметрам:

weekly - означает, что ротация будет осуществляться раз в неделю, может быть указано monthly (daily) - раз в месяц (раз в день);

rotate 4 - сколько раз делать ротацию логов перед их удалением или пересылкой по почте, если указано 0 - то старая версия сразу удаляется или пересылается по почте;

size 1000 - при превышении указанного размера лог-файла будет произведена ротация, размер можно указывать и так: 1000k, 5M, т.е. в килобайтах и мегабайтах.

create - после ротации сразу будет создан пустой лог-файл;

compress - если указана эта директива, то лог-файлы после ротации будут сжиматься.

include /etc/logrotate.d - указываем путь, в котором будут храниться правила ротации для логов других программ, которым не подходят значения по умолчанию, откройте любой файл из указанной папки и вы увидите, что правила там задаются так-же как и правила по умолчанию.

Это основные директивы, более подробно, если есть желание или необходимость, вы можете посмотреть набрав команду:

man logrotate

И вы узнаете, что можно запускать перед ротацией и после нее свой скрипт обработки, сжимать своим алгоритмом и прочее.

Думаю, что приведенной выше информации хватит для приведения в порядок размеров своих лог-фалов.

http://ubuntueasy.com/administrirovanie/upravljaem-logami.



Комментарии к посту «Управляем логами»

Комментариев пока нет, будьте первым.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

*

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

DT

Курсы валют:

UAH

1 USD = 28.490 28.169
1 EUR = 33.784 33.223
1 RUR = 00.400 00.360

Антивирусы в формате SaaS
Подписаться письмом

Спонсоры...

SP:   LF:   PP:  

ubuntu == © Куликов М.М. (2011)
Сертифицированный партнер Dr.Web Free secondary DNS uaRating Rambler's Top100 Рейтинг@Mail.ru bigmir)net TOP 100 Яндекс цитирования Ranker Рейтинг сайта в веб-каталоге misto.zp.ua TOP.zp.ua