如何讓Apache按天來生成日誌

2021-08-29 11:02:44 字數 1122 閱讀 4938

首先要說的是,如標題所示,我已經找到了如何讓apache按天來產生日誌的方法了。但是,先說點題外話,現在發現溝通和交流真的很重要,有些問題也許對你來說很棘手、很麻煩,但對別人來說或許只是a piece of cake,我所要說的是,當你遇到問題時,應該及時和身邊的人進行交流,不要自己悶著去找,相信你最終肯定能解決問題,但是如果有一種更有效率的方式來解決你遇到的問題,那何樂而不為呢?也許別人能提供的只是乙個方法,或者只是乙個思路,甚至簡單到就是一句話,但或許這對你來說就已經足夠了。拿我自己來說吧,當我不知道怎麼讓apache按天來生成日誌的時候,我首先想到的和別人一樣,那就是上google去找一下,也找到了很多方法,我就照著做了一些,可是發現有的可行性還不是很好,所以我就想有沒有一種更好的方式呢,於是我決定去問身邊的同事,因為公司裡面有很多對linux很熟的同事,問的結果是,他們告訴我可以用logrotate來做,因為他們通常都是這麼做的,於是我在一台linux上輸入了man logrotate,它的使用文件很快就呈現在了眼前,大體看了一下就明白了。下面言歸正傳:

假如你的apache的安裝目錄為/usr/local/apache_test/它的日誌檔案在/usr/local/apache_test/logs/下面,通常訪問日誌為access_log,那麼如何來做呢?

1.在/etc/logrotate.d/目錄下建立乙個檔案rotate_apache,執行命令touch rotate_apache(注:該檔案用來告訴logrotate如何來按天輪循生成日誌檔案)

2.編輯該檔案vi rotate_apache,輸入以下內容:

/usr/local/apache_test/logs/access_log

3.ok了,就這麼簡單,之後你就會發現在apache的日誌目錄下會每天都產生乙個檔案,檔名如下:

access_log.1.gz

access_log.2.gz

....................

這個工具(logrotate)以一種靈活的方式來對系統中的日誌進行統一的管理,工作原理是這樣的:它本身被加到了linux系統中的crontab中(但是我們從crontab -l中是看不到的),所以預設就會每天去執行一次,執行的配置檔案為/etc/logrotate.conf,它會通過裡面定義的內容來執行日誌的切換工作,裡面有好多可選的配置方式和引數。具體的內容請參照:

apache下實現按天記錄日誌切割

apache作為web伺服器,弱長時間執行,會導致日誌檔案累計過大,進而影響問題定位效率,需要修改apache的httpd.conf配置檔案,實現按天記錄日誌。在配置檔案中找到,並注釋 errorlog logs error log customlog logs access log common ...

如何讓執行緒按順序執行

join waits for this thread to die.等待此執行緒結束 join long millis waits at most milliseconds for this thread to die.a timeout of 0 means to wait forever.設定加...

如何讓多執行緒按順序執行

上面我們是在子執行緒中指定join 方法,我們還可以在主線程中通過join 方法讓主線程阻塞等待以達到指定順序執行的目的 package printabc.method1 第一種方法,使用object的wait和notifyall方法 public class testprint else try ...