IP: 188.40.57.132:7777
Would you like to react to this message? Create an account in a few clicks or log in to continue.

IP: 188.40.57.132:7777


 
HomeLatest imagesTražiRegistracijaLogin

 

 *Rotacija Server Loga*

Go down 
AutorPoruka
Ryan_Cooper
Admin



Broj komentara : 68
Points : 124
Reputation : 1
Join date : 2009-07-17

*Rotacija Server Loga* Empty
KomentarNaslov komentara: *Rotacija Server Loga*   *Rotacija Server Loga* I_icon_minitimeThu Aug 06, 2009 11:51 am

Rotacija Server Loga

Tko god je imao SA:MP Server zna da log (zapisnik) zna biti jako dugacak.To ne utjece na performanse servera ali je veoma tesko to citati i slati ga preko FTP-a.

Ova skripta sluzi tome da promjeni log na tocno vrijeme i datum. Onda je mozete namjestiti da se pokrene na kraju svakog dana.Nakon sto je napravljena izmjena na logu, bit ce spremljen u log direktorij.


Windows Verzija

Morate copy i paste ovaj kod u .bat datoteku ( primjer: logrotate.bat ) i onda ga morate spremiti u server direktorij.

Ovo ce uciniti da se server zaustavi i pokrene ponovo. Ako ne zelite da se to dogodi maknite taskkill i pocetne linije ( start lines ), ali imajte na umu da se server mora zaustaviti ako zelite da rotacija zapisnika radi kako treba.


Kod:

@echo off

set ServerDirectory="C:\sampserver"
set ServerName="samp-server.exe"

for /f "tokens=1-3 delims=/- " %%a in ('date /t') do set XDate=%%a-%%b-%%c

if not exist %ServerDirectory%\log mkdir %ServerDirectory%\log

echo Daily log rotator for SA-MP Servers by KingJ
echo Will rename the current log file to today's date (%DATE%)
echo and place it in the log folder.
echo.
echo Ensure the server is not running.
echo.
echo This makes the server logs easier to manage
echo.
echo Stopping server...
taskkill /f /im "%ServerName%"
echo Renaming log file to server_log_%XDate%.txt
rename %ServerDirectory%\server_log.txt server_log_%XDate%.txt
echo Moving log to log folder...
move %ServerDirectory%\server_log_%XDate%.txt %ServerDirectory%\log
echo Starting Server...
start %ServerDirectory%\%ServerName%
echo.
echo Log rotation complete



Zapamtite da morate namjestiti %ServerDirectory% prema direktoriju di se nalazi vas server.

Da bi automatizirali rotaciju loga, moramo se koristiti sa Windows Task Schedulerom. Kliknite na START-CONTROL PANEL-SCHEDULED TASKS. Dvostruki klik na ADD SCHEDULED TASK. U prozorcicu koji se zatim prikaze kliknite NEXT i nakon toga BROWSE i pronajdite lokaciju .bat datoteke. Izaberite da se ta ''zadaca'' obavlja DAILY, zatim kliknite NEXT i namjestite vrijeme na 23:59 ili bilo koje drugo doba dana ako vam vise tako odgovara.
Zatim kliknite NEXT i ako vas upita username ili password upisite ga, a ako ga nemate ili ne koristite ostavite polja praznima.Konacno kliknite FINISH i sve je gotovo.

Svaki dan u izabrano doba dana,skripta ce raditi i rotirat ce vas log, smanjujuci mu na taj nacin velicinu i olaksavajuci vam snalazenje u tom zapisniku!



Linux Verzija

Spremite ovo kao logrotate.sh

Prvi nacin:

Kod:

#!/bin/sh

logfile=server_log.txt
timestamp=$(date --utc +%s)
thedate=date
logdir=./logs/

if [ ! -d $logdir ]
then
mkdir $logdir
fi

cat $logfile > $logdir/server.$timestamp.txt
echo "[logs] Refreshed at UNIX TS: $thedate" > $logfile


Ovo se moze koristiti dok je server online dakle dok je upaljen.


Drugi nacin:


Kod:

FILE=server_log.txt
NOW=$(ls -l --time-style="+%b %e, %Y %k%M" $FILE | awk '{ print $6"-"$7"-"$8 }' | sed -e 's/,//g')
cp $FILE ./logs/"$NOW.$FILE"
rm -f ./server_log.txt


Server mora biti offline tj mora biti ugasen.

Dodajte jos komandu u Crontab da bi automatizirali proces.


NAPOMENA: Svaki pokusaj i svako kopiranje ovog teksta ili dijela ovog teksta strogo ce se kaznjavati!
Na vrh Go down
https://bosnianmafia-samp.bosnianforum.com
 
*Rotacija Server Loga*
Na vrh 
Stranica 1/1

Permissions in this forum:Ne možete odgovoriti na teme ili komentare u ovom forumu
IP: 188.40.57.132:7777 :: *Skripting* :: Naućite skriptati uz nas-
Idi na: