問題摘要:由於內部錯誤,某些由 Sun 提供的叢集代理程式使用 LOG_USER 設備而非使用 LOG_DAEMON 將訊息寫入系統日誌檔 (請參閱 syslog(3C))。在配置為預設 syslog 設定 (請參閱 syslog.conf(4)) 的叢集上,嚴重性為 LOG_WARNING 或 LOG_NOTICE 的訊息通常會寫入系統日誌檔,而不會輸出。只有那些寫為 shell 程序檔的代理程式代碼才會出現此問題。
解決方法:
以下解決方法適用於編寫 shell 程序檔的代理程式開發人員:
在 shell 程序檔中,將設備明確傳送至 scds_sylog:
facility=`scha_cluster_get -O SYSLOG_FACILITY
'scds_syslog -p ${facility}.error -m "error message"
以下解決方法適用於叢集管理員:
在所有叢集節點上 /etc/syslog.conf 檔案接近開頭的部分加入以下項目:
user.warning /var/adm/messages
此項目致使 user.warning 訊息得以記錄。您可以為 user.notice 訊息加入相似的項目,但這沒有必要,並且可能會致使日誌填充過快 (依賴於正在運行的應用程式混合)。