Oracle/Listener: trace file 及 log file 異常增加
使用者來電表示 /db 的空間被用完了, 查出是 listener 的 trace file 及 log file 的 size 暴增...., trace file 約莫已用了 6GB
-rw-r--r-- 1 oracle dba 6359755059 1月 19 10:20 listener.trc
-rw-r--r-- 1 oracle dba 122592751 1月 19 10:22 listener.log
我直覺不外乎三個原因
1. connect 激增
2. hacker
3. 變更 listenr 的 log level
原因三很容易排除, 原因二及原因一由 log 中就可以找到, 果不其然, 不但找到是哪一個 IP , 也找到從今年開始的出現 connect 次數暴走, 從每一至數分鐘一次, 變成每分鐘數次, 問題還是回到 AP 層, 使用者後來查出那台是出勤系統, 要將資料寫入DB失敗後就持續的嘗試
但為什麼會失敗呢? 答案令人很無言, 因為 table 中儲存出勤日期是用6 bytes 的中式日期, 到了民國一百年後, 就出問題了, 這是我遇到的第一支百年蟲.
為什麼寫入失敗沒有人發現呢? 因為還沒有領一月份的薪水. 呵 ! 呵 ! 呵 !
-rw-r--r-- 1 oracle dba 6359755059 1月 19 10:20 listener.trc
-rw-r--r-- 1 oracle dba 122592751 1月 19 10:22 listener.log
我直覺不外乎三個原因
1. connect 激增
2. hacker
3. 變更 listenr 的 log level
原因三很容易排除, 原因二及原因一由 log 中就可以找到, 果不其然, 不但找到是哪一個 IP , 也找到從今年開始的出現 connect 次數暴走, 從每一至數分鐘一次, 變成每分鐘數次, 問題還是回到 AP 層, 使用者後來查出那台是出勤系統, 要將資料寫入DB失敗後就持續的嘗試
但為什麼會失敗呢? 答案令人很無言, 因為 table 中儲存出勤日期是用6 bytes 的中式日期, 到了民國一百年後, 就出問題了, 這是我遇到的第一支百年蟲.
為什麼寫入失敗沒有人發現呢? 因為還沒有領一月份的薪水. 呵 ! 呵 ! 呵 !
留言
張貼留言