Subversion Repositories php-qbpwcf

Rev

Rev 121 | Rev 140 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 121 Rev 130
Line 25944... Line 25944...
25944
	#$result["argu"],所使用的參數.
25944
	#$result["argu"],所使用的參數.
25945
	#$result["content"],執行的結果.
25945
	#$result["content"],執行的結果.
25946
	#必填參數:
25946
	#必填參數:
25947
	#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑.
25947
	#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑.
25948
	$conf["fileArgu"]=__FILE__;
25948
	$conf["fileArgu"]=__FILE__;
25949
	#$conf["name"],字串,服務名稱.
25949
	#$conf["name"],字串,服務名稱,要檢查的服務名稱.
25950
	$conf["name"]="";
25950
	$conf["name"]="";
25951
	#可省略參數:
25951
	#可省略參數:
25952
	#$conf["username"],字串,要用什麼使用者來執行,預設為root使用者
25952
	#$conf["username"],字串,要用什麼使用者來執行,預設為root使用者
25953
	#$conf["username"]="";
25953
	#$conf["username"]="";
25954
	#$conf["password"],字串,使用者的密碼,預設不使用.
25954
	#$conf["password"],字串,使用者的密碼,預設不使用.
25955
	#$conf["password"]="";
25955
	#$conf["password"]="";
25956
	#$conf["checkListen"],陣列,用來判斷服務是否有正確啟動的條件,一個元素代表,其中要有一個socket info符合之,若元素的key為"ip",則其數值為[ipv4/ipv6]:port:protocol(tcp/udp);若元素的key為"addr",則其數值為unix domain socket 的位置與名稱;若元素的key為"name",則其數值為程序名稱.
25956
	#$conf["checkListen"],陣列,用來判斷服務是否有正確啟動的條件,一個元素代表,其中要有一個socket info符合之,若元素的key為"ip",則其數值為[ipv4/ipv6]:port/protocol(tcp/udp);若元素的key為"addr",則其數值為unix domain socket 的位置與名稱;若元素的key為"name",則其數值為程序名稱.
25957
	#$conf["checkListen"]=array(array("ip"=>169.254.1.1:443/tcp,"addr"=>/usr/lib/qbpwcf/qbpwcf-usock.sock,"name"=>"addr"),"name"=>"httpd");
25957
	#$conf["checkListen"]=array(array("ip"=>169.254.1.1:443/tcp,"addr"=>/usr/lib/qbpwcf/qbpwcf-usock.sock,"name"=>"addr"),"name"=>"httpd");
25958
	#$conf["interval"],字串,檢查沒問題後,要多少秒後再檢查一次,預設為30秒,亦即"30".
25958
	#$conf["interval"],字串,檢查沒問題後,要多少秒後再檢查一次,預設為30秒,亦即"30".
25959
	#$conf["interval"]="30";
25959
	#$conf["interval"]="30";
25960
	#$conf["reportOnly"],字串,"true"代表不「啟動/重新啟動」服務,只是輸出訊息表示服務有正常或需要處理;預設為"false"代表直接「啟動/重新啟動」.
25960
	#$conf["reportOnly"],字串,"true"代表不「啟動/重新啟動」服務,只是輸出訊息表示服務有正常或需要處理;預設為"false"代表直接「啟動/重新啟動」.
25961
	#$conf["reportOnly"]="true";
25961
	#$conf["reportOnly"]="true";
Line 27233... Line 27233...
27233
	#回傳結果:
27233
	#回傳結果:
27234
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
27234
	#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
27235
	#$result["error"],錯誤訊息.
27235
	#$result["error"],錯誤訊息.
27236
	#$result["function"],當前執行的函式名稱.
27236
	#$result["function"],當前執行的函式名稱.
27237
	#$result["argu"],所使用的參數.
27237
	#$result["argu"],所使用的參數.
27238
	#$result["content"],執行的結果.
27238
	#$result["content"],運行 cmd::keepServiceUp 的回傳結果,僅當參數$conf["keepServiceUp"]為"true"時,才會有該回傳結果.
27239
	#必填參數:
27239
	#必填參數:
27240
	#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑.
27240
	#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑.
27241
	$conf["fileArgu"]=__FILE__;
27241
	$conf["fileArgu"]=__FILE__;
27242
	#$conf["name"],字串,服務名稱,實際產生的system名稱會加上".service".
27242
	#$conf["name"],字串,服務名稱,實際產生的system名稱會加上".service".
27243
	$conf["name"]="";
27243
	$conf["name"]="";
Line 27248... Line 27248...
27248
	#$conf["params"]=array("");
27248
	#$conf["params"]=array("");
27249
	#$conf["enable"],字串,預設為"true",代表該服務為enable.
27249
	#$conf["enable"],字串,預設為"true",代表該服務為enable.
27250
	#$conf["enable"]="true";
27250
	#$conf["enable"]="true";
27251
	#$conf["startNow"],字串,預設為"true",代表該服務要立刻執行.
27251
	#$conf["startNow"],字串,預設為"true",代表該服務要立刻執行.
27252
	#$conf["startNow"]="true";
27252
	#$conf["startNow"]="true";
-
 
27253
	#$conf["keepServiceUp"],字串,是否要另外增加確保服務有保持啟動的服務,預設為"false"代表否;反之為"true"代表是.
-
 
27254
	#$conf["keepServiceUp"]="false";
-
 
27255
	#$conf["cmd::keepServiceUp"]["checkListen"],陣列,用來判斷服務是否有正確啟動的條件,一個元素代表,其中要有一個socket info符合之,若元素的key為"ip",則其數值為[ipv4/ipv6]:port/protocol(tcp/udp);若元素的key為"addr",則其數值為unix domain socket 的位置與名稱;若元素的key為"name",則其數值為程序名稱.
-
 
27256
	#$conf["cmd::keepServiceUp"]["checkListen"]=array(array("ip"=>169.254.1.1:443/tcp,"addr"=>/usr/lib/qbpwcf/qbpwcf-usock.sock,"name"=>"addr"),"name"=>"httpd");
-
 
27257
	#$conf["cmd::keepServiceUp"]["interval"],字串,檢查沒問題後,要多少秒後再檢查一次,預設為30秒,亦即"30".
-
 
27258
	#$conf["cmd::keepServiceUp"]["interval"]="30";
27253
	#參考資料:
27259
	#參考資料:
27254
	#無.
27260
	#無.
27255
	#備註:
27261
	#備註:
27256
	#無.
27262
	#無.
27257
	*/
27263
	*/
Line 27317... Line 27323...
27317
		#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
27323
		#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
27318
		#$conf["canNotBeEmpty"]=array();
27324
		#$conf["canNotBeEmpty"]=array();
27319
		#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
27325
		#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
27320
		#$conf["canBeEmpty"]=array();
27326
		#$conf["canBeEmpty"]=array();
27321
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
27327
		#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
27322
		$conf["variableCheck::checkArguments"]["skipableVariableCanNotBeEmpty"]=array("params","enable","startNow","description");
27328
		$conf["variableCheck::checkArguments"]["skipableVariableCanNotBeEmpty"]=array("params","enable","startNow","description","keepServiceUp","cmd::keepServiceUp");
27323
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
27329
		#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
27324
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("params","enable","startNow","description");
27330
		$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("params","enable","startNow","description","keepServiceUp","cmd::keepServiceUp");
27325
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
27331
		#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
27326
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("array","string","string","string");
27332
		$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("array","string","string","string","string","array");
27327
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$c)onf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
27333
		#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$c)onf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
27328
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array(null,"true","true","service description.");
27334
		$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array(null,"true","true","service description.","false",null);
27329
		#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
27335
		#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
27330
		#$conf["disallowAllSkipableVarIsEmpty"]="";
27336
		#$conf["disallowAllSkipableVarIsEmpty"]="";
27331
		#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
27337
		#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
27332
		#$conf["disallowAllSkipableVarIsEmptyArray"]="";
27338
		#$conf["disallowAllSkipableVarIsEmptyArray"]="";
27333
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
27339
		#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
Line 27731... Line 27737...
27731
				return $result;
27737
				return $result;
27732
 
27738
 
27733
				}#if end
27739
				}#if end
27734
		
27740
		
27735
			}#if end
27741
			}#if end
-
 
27742
		
-
 
27743
		#如果 keepServiceUp 為 "true"
-
 
27744
		if($conf["keepServiceUp"]==="true"){
-
 
27745
			
-
 
27746
			#檢查用於 cmd::keepServiceUp 的參數
-
 
27747
			#函式說明:
-
 
27748
			#檢查必填與可省略參數,可省略參數可指定預設要給與什麼數值內容。
-
 
27749
			#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
-
 
27750
			#$reuslt["error"],執行不正常結束的錯訊息陣列.
-
 
27751
			#$result["function"],當前執行的函式名稱.
-
 
27752
			#$result["argu"],設置給予的參數.
-
 
27753
			#$result["passed"],識別要檢查的全體變數是否存在以及型態是否正確的變數,"true"代表檢查全部通過;"false"代表檢查不通過
-
 
27754
			#$result[$shouldBeCheckedVarName]["varExist"],所檢查的變數是否存在,"false"代表不存在;"true"代表存在
-
 
27755
			#$result[$shouldBeCheckedVarName]["varType"],所檢查的變數型態是否正確,"false"代表錯誤;"true"代表正確
-
 
27756
			#$result[$shouldBeCheckedVarName]["error"],每個參數設定的錯誤訊息
-
 
27757
			#$result["shouldNotBeEmpty"],不應該為空字串或控陣列的變數.
-
 
27758
			#$result["argu"],字串陣列,目前輸入的參數名稱陣列.
-
 
27759
			#$result["legalVarName"],字串陣列,合法可用的參數名稱陣列.
-
 
27760
			#$result["notNeedVar"],字串陣列,多餘的參數名稱.
-
 
27761
			#必填寫的參數:
-
 
27762
			#$conf["varInput"],陣列變數,要檢查的陣列變數,請在要檢查的參數前面加上&,這樣變動的結果才能被套用。
-
 
27763
			$conf["variableCheck::checkArguments"]["varInput"]=&$conf["cmd::keepServiceUp"];
-
 
27764
			#$conf["referenceVarKey"],字串,$conf參數後面的key值,用於移除不要的參考陣列.
-
 
27765
			$conf["variableCheck::checkArguments"]["referenceVarKey"]="variableCheck::checkArguments";
-
 
27766
			#可以省略的參數:
-
 
27767
			#$conf["mustBeFilledVariableName"],爲必填參數的變數名稱陣列,形態爲陣列變數,元素數量需要跟"mustBeFilledVariableType"參數的元素數量一致,例如: $conf["mustBeFilledVariableName"] = array("id","account","password");
-
 
27768
			$conf["variableCheck::checkArguments"]["mustBeFilledVariableName"]=array("");
-
 
27769
			#$conf["mustBeFilledVariableType"],爲必填參數的變數陣列應該爲何種變數形態,形態爲陣列,元素數量需要跟"mustBeFilledVariableName"參數的元素數量一致,例如: $conf["mustBeFilledVariableType"] = array("string",integer,"double","resource","object"); , null代表不指定變數形態.
-
 
27770
			$conf["variableCheck::checkArguments"]["mustBeFilledVariableType"]=array("");
-
 
27771
			#$conf["canBeEmptyString"],字串,必填變數內容如果是空字串就不能算是有設置的話,請設為"false",預設爲"true",可以為空字串.
-
 
27772
			$conf["variableCheck::checkArguments"]["canBeEmptyString"]="false";
-
 
27773
			#$conf["canNotBeEmpty"],字串陣列,哪些必填參數的內容不得為空字串或空陣列,僅當$conf["canBeEmptyString"]為"true"時會生效.
-
 
27774
			#$conf["canNotBeEmpty"]=array();
-
 
27775
			#$conf["canBeEmpty"],字串陣列,哪些必填參數的內容可為空字串或空陣列,僅當$conf["canBeEmptyString"]為"false"時會生效.
-
 
27776
			#$conf["canBeEmpty"]=array();
-
 
27777
			#$conf["skipableVariableCanNotBeEmpty"],字串陣列,哪些可省略參數不可以為空字串或空陣列.
-
 
27778
			$conf["variableCheck::checkArguments"]["skipableVariableCanNotBeEmpty"]=array("checkListen","interval");
-
 
27779
			#$conf["skipableVariableName"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableName"] = array("id","account","password");
-
 
27780
			$conf["variableCheck::checkArguments"]["skipableVariableName"]=array("checkListen","interval");
-
 
27781
			#$conf["skipableVariableType"],陣列字串,爲可省略參數的變數名稱陣列,形態爲陣列變數,例如: $conf["skipableVariableType"] = array("string",integer,"double");
-
 
27782
			$conf["variableCheck::checkArguments"]["skipableVariableType"]=array("array","string");
-
 
27783
			#$conf["skipableVarDefaultValue"],字串陣列,每個不存在的可省略變數要初始化為什麼,null與代表不指定,若預設值是參數之一,請將$c)onf["mustBeFilledVar"]改成"\$conf["\mustBeFilledVar\"]".
-
 
27784
			$conf["variableCheck::checkArguments"]["skipableVarDefaultValue"]=array(null,null);
-
 
27785
			#$conf["disallowAllSkipableVarIsEmpty"],字串,是否允許每個可省略參數都為空字串,預設為"true"允許,反之為"false".
-
 
27786
			#$conf["disallowAllSkipableVarIsEmpty"]="";
-
 
27787
			#$conf["disallowAllSkipableVarIsEmptyArray"],字串,是否允許每個可省略參數都為空陣列,預設為"true"允許,反之為"false".
-
 
27788
			#$conf["disallowAllSkipableVarIsEmptyArray"]="";
-
 
27789
			#$conf["arrayCountEqualCheck"],字串陣列,為檢查哪些陣列參數的元素數量要一樣,$conf["arrayCountEqualCheck"][$i]=array()為第$i組key為哪些的變數其元素數量要相等.
-
 
27790
			#$conf["arrayCountEqualCheck"][]=array();
-
 
27791
			#參考資料來源:
-
 
27792
			#array_keys=>http://php.net/manual/en/function.array-keys.php
-
 
27793
			$checkArguments=variableCheck::checkArguments($conf["variableCheck::checkArguments"]);
-
 
27794
			unset($conf["variableCheck::checkArguments"]);
-
 
27795
 
-
 
27796
			#如果檢查參數失敗
-
 
27797
			if($checkArguments["status"]==="false"){
-
 
27798
 
-
 
27799
				#設置執行失敗
-
 
27800
				$result["status"]="false";
-
 
27801
 
-
 
27802
				#設置錯誤訊息
-
 
27803
				$result["error"]=$checkArguments;
-
 
27804
 
-
 
27805
				#回傳結果
-
 
27806
				return $result;
-
 
27807
 
-
 
27808
				}#if end
-
 
27809
 
-
 
27810
			#如果檢查參數失敗
-
 
27811
			if($checkArguments["passed"]==="false"){
-
 
27812
 
-
 
27813
				#設置執行失敗
-
 
27814
				$result["status"]="false";
-
 
27815
 
-
 
27816
				#設置錯誤訊息
-
 
27817
				$result["error"]=$checkArguments;
-
 
27818
 
-
 
27819
				#回傳結果
-
 
27820
				return $result;
-
 
27821
 
-
 
27822
				}#if end
-
 
27823
		
-
 
27824
			#要執行的php程式內容
-
 
27825
			$phpScript2run=<<<'PHP'
-
 
27826
		
-
 
27827
#用於確保服務在線的程式 - start
-
 
27828
		
-
 
27829
#函式說明:
-
 
27830
#執行 systemd 程序來確保服務是運行中.
-
 
27831
#回傳結果:
-
 
27832
#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
-
 
27833
#$result["error"],錯誤訊息.
-
 
27834
#$result["function"],當前執行的函式名稱.
-
 
27835
#$result["argu"],所使用的參數.
-
 
27836
#$result["content"],執行的結果.
-
 
27837
#必填參數:
-
 
27838
#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑.
-
 
27839
$conf["cmd::keepServiceUp"]["fileArgu"]=$conf["fileArgu"];
-
 
27840
#$conf["name"],字串,服務名稱.
-
 
27841
$conf["cmd::keepServiceUp"]["name"]=$conf["name"];
-
 
27842
#可省略參數:
-
 
27843
#$conf["username"],字串,要用什麼使用者來執行,預設為root使用者
-
 
27844
#$conf["username"]="";
-
 
27845
#$conf["password"],字串,使用者的密碼,預設不使用.
-
 
27846
#$conf["password"]="";
-
 
27847
#$conf["checkListen"],陣列,用來判斷服務是否有正確啟動的條件,一個元素代表,其中要有一個socket info符合之,若元素的key為"ip",則其數值為[ipv4/ipv6]:port:protocol(tcp/udp);若元素的key為"addr",則其數值為unix domain socket 的位置與名稱;若元素的key為"name",則其數值為程序名稱.
-
 
27848
#$conf["checkListen"]=array(array("ip"=>169.254.1.1:443/tcp,"addr"=>/usr/lib/qbpwcf/qbpwcf-usock.sock,"name"=>"addr"),"name"=>"httpd");
-
 
27849
#$conf["interval"],字串,檢查沒問題後,要多少秒後再檢查一次,預設為30秒,亦即"30".
-
 
27850
#$conf["interval"]="30";
-
 
27851
#$conf["reportOnly"],字串,"true"代表不「啟動/重新啟動」服務,只是輸出訊息表示服務有正常或需要處理;預設為"false"代表直接「啟動/重新啟動」.
-
 
27852
#$conf["reportOnly"]="true";
-
 
27853
#$conf["verbose"],字串,預設為"false",若為"true"則會印出過程訊息.
-
 
27854
$conf["cmd::keepServiceUp"]["verbose"]="true";
-
 
27855
#$conf["onlyWhenEnable"],字串,預設為"true",代表若服務為enable才會將其變成運行中;反之為"false".
-
 
27856
#$conf["onlyWhenEnable"]="false";
-
 
27857
#參考資料:
-
 
27858
#無.
-
 
27859
#備註:
-
 
27860
#無.
-
 
27861
$keepServiceUp=cmd::keepServiceUp($conf["cmd::keepServiceUp"]);
-
 
27862
unset($conf["cmd::keepServiceUp"]);
-
 
27863
 
-
 
27864
#如果執行異常
-
 
27865
if($keepServiceUp["status"]==="false"){
-
 
27866
 
-
 
27867
	#設置執行失敗
-
 
27868
	$result["status"]="false";
-
 
27869
 
-
 
27870
	#設置錯誤訊息
-
 
27871
	$result["error"]=$keepServiceUp;
-
 
27872
 
-
 
27873
	#回傳結果
-
 
27874
	return $result;
-
 
27875
 
-
 
27876
	}#if end
-
 
27877
 
-
 
27878
#用於確保服務在線的程式 - end
-
 
27879
 
-
 
27880
PHP;
-
 
27881
			
-
 
27882
			#遞迴呼叫,建立用於確保 $conf[name] 服務在線的服務
-
 
27883
			#函式說明:
-
 
27884
			#將要執行的程式變成透過 systemd 來運行.
-
 
27885
			#回傳結果:
-
 
27886
			#$result["status"],執行是否正常,"true"代表正常,"false"代表不正常.
-
 
27887
			#$result["error"],錯誤訊息.
-
 
27888
			#$result["function"],當前執行的函式名稱.
-
 
27889
			#$result["argu"],所使用的參數.
-
 
27890
			#$result["content"],執行的結果.
-
 
27891
			#必填參數:
-
 
27892
			#$conf["fileArgu"],字串,php變數__FILE__的內容,亦即該檔案在檔案系統的絕對路徑.
-
 
27893
			$paramsOfRegisterService["fileArgu"]=__FILE__;
-
 
27894
			#$conf["name"],字串,服務名稱,實際產生的system名稱會加上".service".
-
 
27895
			$paramsOfRegisterService["name"]=$conf["name"]."-keep";
-
 
27896
			#$conf["cmd"],字串,要執行的指令.
-
 
27897
			$paramsOfRegisterService["cmd"]="php";
-
 
27898
			#可省略參數:
-
 
27899
			#$conf["params"],字串陣列,指令要使用的參數.
-
 
27900
			$paramsOfRegisterService["params"]=array("-r",$phpScript2run);
-
 
27901
			#$conf["enable"],字串,預設為"true",代表該服務為enable.
-
 
27902
			#$conf["enable"]="true";
-
 
27903
			#$conf["startNow"],字串,預設為"true",代表該服務要立刻執行.
-
 
27904
			#$conf["startNow"]="true";
-
 
27905
			#$conf["keepServiceUp"],字串,是否要另外增加確保服務有保持啟動的服務,預設為"false"代表否;反之為"true"代表是.
-
 
27906
			#$conf["keepServiceUp"]="false";
27736
					
27907
			#$conf["cmd::keepServiceUp"]["checkListen"],陣列,用來判斷服務是否有正確啟動的條件,一個元素代表,其中要有一個socket info符合之,若元素的key為"ip",則其數值為[ipv4/ipv6]:port:protocol(tcp/udp);若元素的key為"addr",則其數值為unix domain socket 的位置與名稱;若元素的key為"name",則其數值為程序名稱.
-
 
27908
			#$conf["cmd::keepServiceUp"]["checkListen"]=array(array("ip"=>169.254.1.1:443/tcp,"addr"=>/usr/lib/qbpwcf/qbpwcf-usock.sock,"name"=>"addr"),"name"=>"httpd");
-
 
27909
			#$conf["cmd::keepServiceUp"]["interval"],字串,檢查沒問題後,要多少秒後再檢查一次,預設為30秒,亦即"30".
-
 
27910
			#$conf["cmd::keepServiceUp"]["interval"]="30";
-
 
27911
			#參考資料:
-
 
27912
			#無.
-
 
27913
			#備註:
-
 
27914
			#無.
-
 
27915
			$registerService=cmd::registerService($paramsOfRegisterService);
-
 
27916
		
-
 
27917
			#如果執行異常
-
 
27918
			if($registerService["status"]==="false"){
-
 
27919
 
-
 
27920
				#設置執行失敗
-
 
27921
				$result["status"]="false";
-
 
27922
 
-
 
27923
				#設置錯誤訊息
-
 
27924
				$result["error"]=$registerService;
-
 
27925
 
-
 
27926
				#回傳結果
-
 
27927
				return $result;
-
 
27928
 
-
 
27929
				}#if end
-
 
27930
		
-
 
27931
			#記錄運行 cmd::keepServiceUp 的回傳結果
-
 
27932
			$result["content"]=$registerService;
-
 
27933
		
-
 
27934
			}#if end
-
 
27935
		
27737
		#設置執行正常
27936
		#設置執行正常
27738
		$result["status"]="true";
27937
		$result["status"]="true";
27739
		
27938
		
27740
		#回傳結果
27939
		#回傳結果
27741
		return $result;
27940
		return $result;