例如,為“客戶帳戶建立”事件建立事件處理程式。此處理程式將從環境變數處接收客戶名以及該客戶的登入名。簡單而言,我們將使用一個名為
的外殼指令碼,如下所示:test-handler.sh
#!/bin/bash
echo "--------------" >> /tmp/event_handler.log
/bin/date >> /tmp/event_handler.log # 事件日期和時間相關資訊
/usr/bin/id >> /tmp/event_handler.log # 為確保控制而執行指令碼的使用者相關資訊
echo "client created" >> /tmp/event_handler.log # 已建立客戶帳戶相關資訊
echo "名稱:${NEW_CONTACT_NAME}" >> /tmp/event_handler.log # 客戶名稱
echo "登入名:${NEW_LOGIN_NAME}" >> /tmp/event_handler.log # 客戶登入名
echo "--------------" >> /tmp/event_handler.log
此指令碼將某些資訊列印到一個檔案上,因此我們可以控制其執行(此指令碼以後台模式執行,所以我們不能把資訊輸出到 stdout/stderr)。
假設我們的指令碼位於目錄 /parallels_plesk_panel_installation_directory/bin
(例如)。那麼我們可以使用控制面板透過建立一個事件處理程式來註冊該指令碼:
當為單個事件分配多個處理程式時,您可以指定處理程式執行的順序,並設定不同的優先順序(數值越高,優先順序越高)。
/usr/local/psa/bin/test-handler.sh
。注意:在此指令碼中,我們已指定變數 $NEW_CONTACT_NAME 和 $NEW_LOGIN_NAME。在執行處理程式之前,將分別用已建立的用戶端的名字和登入名取代它們。可用變數的完整清單將在後面的部分中提供。請記住,透過移除操作,未設定 $NEW_xxx 類型的變數。透過建立操作,未設定 $OLD_xxx 類型的參數。
現在,如果您登入到 Parallels Plesk Panel 並建立了一個新客戶(在“聯絡人姓名”欄位中輸入“Some Client”,在“登入欄位”中輸入“some_client”),那麼該事件處理程式將被呼叫,並且以下記錄將被新增至 /tmp/event_handler.log
中:
Fri Mar 16 15:57:25 NOVT 2008
uid=0(root) gid=0(root) groups=0(root)
client created
名稱:一
些客戶
登入
名:
some_client
如果您想指定一或多個事件處理程式,請為其他處理程式重複上述操作即可。
如需設定事件處理程式所用的參數模板完整清單,請參閱 Parallels 網站上的《Parallels Plesk Panel 進階管理指南》。