Како конфигурисати евидентирање и ротацију евиденција у Nginx-у на Ubuntu VPS-у

Како конфигурисати евидентирање и ротацију евиденција у Nginx-у на Ubuntu VPS-у

Увод

Као системски администратор, конфигурисање ефикасног евидентирања и ротације евиденција је од суштинског значаја за обезбеђивање безбедности и доброг функционисања вашег веб сервера. Nginx, популарни веб сервер и proxy, нуди флексибилне опције евидентирања које вам омогућавају да забележите и пратите приступ вашем сајту и активности сервера. Поред тога, ротација евиденција је неопходна за управљање растућим датотекама евиденција и спречавање претицања капацитета на диску. Овај водич корак по корак ће вас провести кроз процес конфигурисања евидентирања и ротације евиденција у Nginx-у на Ubuntu VPS-у.

Конфигурисање евидентирања у Nginx-у

1. Уредите фајл конфигурације Nginx-а:

– Користите било који текстовни уређивач по вашем избору (нпр. nano, vi, emacs) да бисте отворили фајл /etc/nginx/nginx.conf.

– Додајте следећи блок http заснивајући се на вашим захтевима за евидентирање:


http {

...

Конфигурација евидентирања

access_log /var/log/nginx/access.log combined;
error_log /var/log/nginx/error.log;

...

}

– У горњем примеру:

access_log директива дефинише локацију и формат за евиденцију приступа.
error_log директива дефинише локацију и формат за евиденцију грешака.
combined формат евиденције је стандардни формат који бележи информације као што су IP адреса, време, URI, код одговора и величина бајта.

2. Дефинисање нивоа евидентирања:

– За прецизнију контролу над евидентирањем, можете дефинисати нивое евидентирања користећи log_level директиву. Нивои евидентирања распоређени су од најнижег до највишег:

debug
info
notice
warn
error
crit

– На пример, да бисте забележили све евиденцијске поруке о грешци и упозорењу, додајте следеће:


http {

...

log_level warn;

...

}

3. Поново покрените Nginx:

– Када завршите са конфигурисањем, поново покрените Nginx сервер да бисте применили промене:


sudo systemctl restart nginx

Конфигурисање ротације евиденција

1. Инсталирајте logrotate:

– Logrotate је корисна апликација која аутоматизује ротацију евиденција. Инсталирајте га користећи следећу команду:


sudo apt install logrotate

2. Конфигуришите logrotate:

– Отворите фајл конфигурације /etc/logrotate.d/nginx користећи текстовни уређивач по вашем избору.
– Додајте следећи блок конфигурације:


/var/log/nginx/*.log {
weekly
rotate 4
compress
missingok
notifempty
create 644 nginx nginx
}

– У горњем примеру:

weekly означава да ће ротација бити извршена недељно.
rotate 4 задржава последње четири ротиране евиденције.
compress компримује ротиране евиденције за уштеду простора на диску.
missingok спречава logrotate да се прекине ако не постоје евиденцијски фајлови.
notifempty спречава logrotate да ротира празне евиденцијске фајлове.
create 644 nginx nginx креира нови празан евиденцијски фајл ако не постоји.

3. Подесите cron задатке:

– Додајте следећи ред у crontab (користите crontab -e) да извршите ротацију евиденција током недељне промене дана:


0 0 0 /usr/sbin/logrotate /etc/logrotate.conf

Закључак

Конфигурисањем евидентирања и ротације евиденција у Nginx-у на Ubuntu VPS-у, можете ефикасно забележити и пратити приступ вашем сајту и активности сервера. Ротација евиденција осигурава управљање растућим датотекама евиденција и спречава претицање капацитета на диску. Имплементирањем ових конфигурација, можете побољшати безбедност свог сервера, олакшати решавање проблема и осигурати глатко функционисање веб апликација.

Често постављана питања

1. Шта је logrotate?

– Logrotate је апликација која аутоматизује ротацију евиденција.

2. Зашто је ротација евиденција важна?

– Ротација евиденција спречава претицање капацитета на диску и омогућава ефикасније управљање датотекама евиденција.

3. Како могу да проверим статус евидентирања у Nginx-у?

– Можете користити nginx -T команду да проверите статус конфигурације евидентирања.

4. Како могу да дефинишем прилагођене формате евиденције?

– Можете користити log_format директиву да дефинишете прилагођене формате евиденције за Nginx.

5. Које су различите опције нивоа евидентирања?

– Nginx подржава следеће нивое евидентирања: debug, info, notice, warn, error и crit.

6. Који су параметри ротације евиденција које могу да конфигуришем помоћу logrotate?

– Важни параметри ротације евиденција које можете да конфигуришете помоћу logrotate укључују период ротације, број ротираних евиденција које треба задржати, компресију и руковање са празним евиденцијским фајловима.

7. Како могу да ротирам евиденције на дневном нивоу уместо недељног?

– У конфигурацији logrotate, можете да замените weekly са daily да бисте ротирали евиденције на дневном нивоу.

8. Шта ако не желим да компримујем ротиране евиденције?

– Уклоните compress опцију из конфигурације logrotate да бисте онемогућили компресију ротираних евиденција.

9. Како могу да додатно подесим logrotate за потребе свог сервера?

– Опширна документација о logrotate-у је доступна на званичном веб сајту Logrotate-а.

10. Где могу да пронађем додатне ресурсе за евидентирање и ротацију евиденција у Nginx-у?

– Можете се обратити званичној документацији Nginx-а и [документацији Logrotate-а](https://www.log

  Др.Фоне-ов комплет алата за пренос, поправку, резервну копију, опоравак и још много тога!