[C++ / SH ] Otomatik Log Temizleme Scripti

  • Konbuyu başlatan Konbuyu başlatan Admin
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 46

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Cümleten Selamun Aleykum
Daha Önce Paylaşıldıysa Kapatılabılır
Varsayılan Log Temizleme Scriptinden Farklıdır.
Komut Game Üzerinden Gelir Ve Belirlenen Sürede Log Temizliği Yapar
Forumda Gezerken Konusunu Gördüm
Yorumlarda Alıntıda Belirttiğim Arkadaşın
Önerisi Üzerine Bu Konuyu Açmaya Karar Verdım

<blockquote data-attributes="member: 2142397" data-quote="laz adam" data-source="post: 19583880" class="bbCodeBlock bbCodeBlock--expandable bbCodeBlock--quote js-expandWatch">
Kod:
// #ALBAYGAMING# // Açılır: common/lenght.h // Eklenir: AUTOCLEAN_TIME = 3600, // #ALBAYGAMING# //    #ALBAYGAMING# // Açılır: main.cpp // Aratılır: s_dwProfiler[PROF_HEARTBEAT] += (get_dword_time() - t); // Üstüne eklenir:     if (!(pulse % (passes_per_sec * AUTOCLEAN_TIME)))     {         if (g_bAuthServer)             std::system("cd /usr/game &amp;&amp; sh temizle.sh");     } // #ALBAYGAMING#

SH Kısmı
Dipnot Sizin Sunucunuzda temizle.sh farklı Olabılır
Ben Kendı Sunucumda Kullandıgım temizle.sh'yi Paylaşıyorum
(Alttakını Kullanmak İsteyenler İçeriği Kendi Sunucusuna Göre Ayarlasın)
Kod:
#!/bin/sh clear cd /usr/game/cores/db &amp;&amp; sh clear_logs.sh cd /usr/game/cores/auth &amp;&amp; sh clear_logs.sh cd /usr/game/cores/channel1 &amp;&amp; sh clear_logs.sh cd /usr/game/cores/channel2 &amp;&amp; sh clear_logs.sh cd /usr/game/cores/channel3 &amp;&amp; sh clear_logs.sh cd /usr/game/cores/channel4 &amp;&amp; sh clear_logs.sh cd /usr/game/cores/game99 &amp;&amp; sh clear_logs.sh cd /usr/game/cores/channel1/log &amp;&amp; rm -rf * cd /usr/game/cores/channel2/log&amp;&amp; rm -rf * cd /usr/game/cores/channel3/log &amp;&amp; rm -rf * cd /usr/game/cores/channel4/log &amp;&amp; rm -rf * cd /usr/game/cores/game99/log &amp;&amp; rm -rf * cd /usr/game/cores/auth/log &amp;&amp; rm -rf * cd /usr/game/cores/db/log &amp;&amp; rm -rf * cd /usr/game/share/locale/turkey/quest &amp;&amp; rm -rf *.core cd /var/db/mysql &amp;&amp; rm -rf *.err *.pid *.core *.dll *.log ibdata1 ib_logfile0 ib_logfile1 ib_logfile2 ib_logfile3 ib_logfile4 ib_logfile5 ib_logfile6 ib_logfile7 cd /var/db/mysql &amp;&amp; rm -rf mysql-bin.index mysql-bin.000000 mysql-bin.000001 mysql-bin.000002 mysql-bin.000003 mysql-bin.000004 mysql-bin.000005 mysql-bin.000006 cd /var/db/mysql &amp;&amp; rm -rf mysql-bin.000011 mysql-bin.000012 mysql-bin.000013 mysql-bin.000014 mysql-bin.000015 mysql-bin.000016 mysql-bin.000017 mysql-bin.000018 cd /var/db/mysql &amp;&amp; rm -rf mysql-bin.000023 mysql-bin.000024 mysql-bin.000025 mysql-bin.000026 mysql-bin.000027 mysql-bin.000028 mysql-bin.000029 mysql-bin.000030 cd /var/db/mysql &amp;&amp; rm -rf mysql-bin.000034 ib_logfile10 ib_logfile11 ib_logfile12 mysql-bin.000008 mysql-bin.000009 mysql-bin.000010 mysql-bin.000020 mysql-bin.000021 cd /var/db/mysql &amp;&amp; rm -rf mysql-bin.000032 mysql-bin.000033 mysql-bin.000031 mysql-bin.000022 mysql-bin.000019 mysql-bin.000007 ib_logfile8 ib_logfile9 cd /var/db/mysql/account &amp;&amp; rm -rf *.TMD cd /var/db/mysql/common &amp;&amp; rm -rf *.TMD cd /var/db/mysql/hotbackup &amp;&amp; rm -rf *.TMD cd /var/db/mysql/log &amp;&amp; rm -rf *.TMD cd /var/db/mysql/mysql &amp;&amp; rm -rf *.TMD cd /var/db/mysql/player &amp;&amp; rm -rf *.TMD cd /var/db/mysql/performance_schema &amp;&amp; rm -rf *.TMD wait clear echo echo -e "\033[32mALBAYGAMING \033[0m" echo echo -e "\033[32mALBAY GAMING LOGLAR TEMIZLENDI. \033[0m" echo

C++ / SH Otomatik Log Temizleme Scripti

Metin2 özel sunucularında log dosyalarının zamanla büyümesi sunucu performansını ciddi anlamda etkileyebilir.
Sunucunuzun çalıştığı ortamda günlük olarak üretilen loglar zamanla GB seviyesine ulaşabilir.
Bu logları manuel olarak silmek hem zaman kaybı yaratır hem de ihmal edilebilir.
Bu nedenle otomatik log temizleme scripti oluşturmak, uzun vadede sunucu yönetimi açısından oldukça faydalıdır.

Log Temizleme Süreci Nedir?
Log temizleme işlemi, belirli periyotlarda otomatik olarak log dosyalarını kontrol eden ve boyutlarına göre silen veya arşivleyen bir sistemdir.
Genellikle bash komutları ile oluşturulur ve cronjob yardımıyla zamanlanmış görev olarak çalıştırılır.

Neden Otomatik Log Temizleme Gereklidir?
Metin2 sunucularında loglama işlemleri, hata ayıklama, güvenlik denetimleri ve kullanıcı aktivitelerinin takibi için kritik öneme sahiptir.
Ancak bu logların kontrolsüz büyümesi disk alanını doldurabilir ve sunucu çökmelerine neden olabilir.
Bu yüzden log temizleme scriptleri sunucu stabilitesi için kritik bir rol oynar.

Otomatik Log Temizleme Scripti Nasıl Oluşturulur?
Bu işlem için SH (Shell) scriptleri idealdir.
Aşağıda örnek bir bash scripti verilmiştir:

Kod:
[BR][/BR]#!/bin/bash[BR][/BR][BR][/BR]LOG_DIR='/path/to/your/logs'[BR][/BR]MAX_SIZE='100M'[BR][/BR][BR][/BR]find $LOG_DIR -name '*.log' -size +$MAX_SIZE -delete[BR][/BR]


Bu script, belirtilen dizindeki log dosyalarını tarar ve boyutu 100MB'ın üzerinde olanları siler.

Scripti Cronjob ile Zamanlamak
Scripti otomatik çalıştırmak için crontab kullanılır.
Örneğin, script her gün saat 02:00'de çalışsın istiyorsanız aşağıdaki satırı crontab'a eklersiniz:

Kod:
[BR][/BR]0 2 * * * /path/to/clean_logs.sh[BR][/BR]


Dikkat Edilmesi Gerekenler
- Log silme işlemi geri alınamazdır.
- Scripti çalıştırmadan önce test edin.
- Gerekirse log arşivleme sistemleri kurun.

Sonuç
Otomatik log temizleme scripti ile Metin2 özel sunucularınızın log yönetimini kolaylaştırabilir ve performans kaybını önleyebilirsiniz.
Bu tür sistemsel geliştirmeler, sunucu sağlığı ve geliştirici verimliliği açısından büyük önem taşır.


C++ / SH Automatic Log Cleanup Script

In Metin2 private servers, the growth of log files over time can seriously affect server performance.
The logs generated daily in your server environment can reach gigabyte levels over time.
Manually deleting these logs can waste time and may be overlooked.
Therefore, creating an automatic log cleanup script is very beneficial for long-term server management.

What Is the Log Cleanup Process?
Log cleanup involves automatically checking log files at certain intervals and deleting or archiving them based on their size.
It is usually created using bash commands and run as a scheduled task with cronjob.

Why Is Automatic Log Cleanup Necessary?
Logging processes in Metin2 servers are critical for debugging, security checks, and tracking user activities.
However, uncontrolled growth of these logs can fill up disk space and cause server crashes.
Therefore, log cleanup scripts play a crucial role in server stability.

How to Create an Automatic Log Cleanup Script?
For this process, SH (Shell) scripts are ideal.
An example bash script is provided below:

Kod:
[BR][/BR]#!/bin/bash[BR][/BR][BR][/BR]LOG_DIR='/path/to/your/logs'[BR][/BR]MAX_SIZE='100M'[BR][/BR][BR][/BR]find $LOG_DIR -name '*.log' -size +$MAX_SIZE -delete[BR][/BR]


This script scans log files in the specified directory and deletes those larger than 100MB.

Scheduling the Script with Cronjob
To run the script automatically, use crontab.
For example, if you want the script to run every day at 02:00, add the following line to crontab:

Kod:
[BR][/BR]0 2 * * * /path/to/clean_logs.sh[BR][/BR]


Points to Consider
- Log deletion is irreversible.
- Test the script before running it.
- If necessary, set up log archiving systems.

Conclusion
With an automatic log cleanup script, you can simplify log management on your Metin2 private servers and prevent performance loss.
Such systemic improvements are highly important for server health and developer efficiency.
 

Şuan Bu Konuyu Görüntüleyen Kullanıcılar (Toplam : 0, Üye : 0, Misafir : 0)

Benzer konular

Geri
Üst Alt