ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: piped logging from Nginx to MySQL



2009/12/16 Anton Yuzhaninov <citrin@xxxxxxxxx>:
> Ihalainen Nickolay wrote:
>
>> Вариант с tail конешно хорош, но зачем эти бешенные гигабайты писать на диск?
>> gzip поможет с этой проблемой, однако, он будет дважды использовать
>> cpu: для записи на диск и для чтения с него.
>
> Запись логов из nginx на диск линейная, и в таком режиме можно писать много
> создавая небольшую нагрузку на диск.
>
> А вот mysql на каждую строчку которую в него insert-ят будет делать кучу 
> сиков и
> создаст на диск нагрузку гораздо больше.
сишный или перловый парсер лога вообще может на диск/базу не писать.
Насколько я понимаю база нужна не для хранения, а для анализа. делая
анализ на лету а не по крону можно сильно экономить процессор и
дисковую полосу. запрещение | в логах это запрет стрелять, под
предлогом, что выстрел в собственную ногу это опасно.

Хотя стрелять в ногу никто не запрещает:
/etc/init.d/nginx stop
rm /var/log/access.log
mkfifo /var/log/nginx/access.log
(tail -f /var/log/nginx/access.log | /usr/local/bin/logtomysql ) &
/etc/init.d/nginx start

опять же, что если хочется ловить типовые запросы или медленные? тогда
5% от всех записей вполне можно добавлять в базу используя кольцевой
буфер и polling без задержек в nginx.
или пайпы работают медленней чем файлы?
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.