2010年8月9日

[AWStats] [解法] Error: Command for pipe 'xxx/logresolvemerge.pl xxx.log failed, Setup may be wrong. 問題

最近發現 AWStats 更新統計資料檔耗時很久,現在都要拖到早上 8 點多才能完成,因此就調整了執行 AWStats 統計資料檔更新的 cron job,把執行時間往前移,沒想到改好以後連續兩天 AWStats 都沒有正確更新,查看執行結果以後發現如下的 log (這是自己把 awstats.pl 的 output 另存的 log,預設不會儲存):

Mon Aug  9 01:31:06 CST 2010 Start analyzing [mySite]
==================================================
==================================================
Create/Update database for config "/path/to/awstats.[mySite].conf" by AWStats version 7.0 (build 1.969)
From data in log file "/path/to/logresolvemerge.pl /path/to/logs |"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Error: Command for pipe '/path/to/logresolvemerge.pl /path/to/logs2 |' failed
Setup ('/path/to/awstats.[mySite].conf' file, web server or permissions) may be wrong.
Check config file, permissions and AWStats documentation (in 'docs' directory).
Mon Aug  9 01:31:07 CST 2010 Finish analyzing [mySite]
==================================================
==================================================

如果根據 awstats.pl 的 output 去查看 config file 內容、檔案存取權限,或者 AWStats 的文件恐怕也找不出甚麼頭緒,後來我發現每天要分析的 log 檔根本沒有被抓下來,因為我把 cron job 的執行時間移到比 log server 準備好 log 的時間更早了!

接下來就可以很合理的懷疑,是不是「當 log 檔不存在時」awstats.pl 就會產生以上的 output?經過測試 (執行 /path/to/awstats.pl -update -DatabaseBreak=month -config= [mySite] 指令),果然當 log 檔不存在時,awstats.pl 就會產生以上的 output!

這個錯誤訊息跟 config 檔的內容、檔案存取權限等等是完全沒關係的 ...

2 則留言:

匿名 提到...

Actually, this sometimes was caused by mode not right for log directory. we should change it to 755. more info here awstats installation and configuration guide on linux centos

Unknown 提到...

Thanks for your feedback! It's always less error-prone to follow the installation guide step by step.

Google Spreadsheet 裡用規則運算式

最近因為工作關係,遇到要用 Google Form 及 Google Sheet 所以研究了 Google Sheet 裡的一些 function 怎麼用 首先,分享一下如何在 Google Sheet 裡用規則運算 :D