您可以執行實體伺服器中的自訂指令碼,並收集自訂資料,然後可以將這些資料當作度量來使用。
必要條件
- 使用自訂指令碼執行的所有指令碼都必須輸出單一整數值。如果輸出不是單一整數值,使用者介面則會顯示錯誤。
- 自訂指令碼使用 Telegraf 的 exec 外掛程式在端點虛擬機器的作業系統上執行指令碼。指令碼由在作業系統上安裝了 Telegraf 代理程式的使用者執行。確保使用者可以執行自訂指令碼。
程序
- 執行範例指令碼後,更新目標實體伺服器中的 Telegraf 組態。在 http.conf 檔案中新增下列內容。
備註: 準確地更新「<>」中的資訊。
[[inputs.exec]]
name_prefix = "executescript."
name_override = "output"
commands = ["<prefix> <script path which should be run> <argument>"]
data_format = "value"
data_type = "integer"
timeout = "300s"
[inputs.exec.tags]
file_path = "script path which should be run"
script_name = "<custom_script_name> on <hostname>"
範例
- 例如,對於 Windows Server,請在指令碼前面新增 powershell -File 前置詞。script path which should be run 是要在實體伺服器中執行的自訂指令碼。WIN-3VI8MSB5B5D 是 http.conf 檔案中提及的 hostname 內容值。Memory.ps1 on WIN-3VI8MSB5B5D 是將在自訂指令碼物件下收集的度量名稱。範例如下:
[[inputs.exec]]
name_prefix = "executescript."
name_override = "output"
commands = ["powershell -File C:\\\\opt\\\\Scripts\\\\Memory.ps1"]
data_format = "value"
data_type = "integer"
timeout = "300s"
[inputs.exec.tags]
file_path = "C:\\opt\\Scripts\\Memory.ps1"
script_name = "Memory.ps1 on WIN-3VI8MSB5B5D"
- 例如,對於 Linux 伺服器,您可以將 python2.7、/bin/bash 或 perl 等作為可能的前置詞新增至指令碼。script path which should be run 是要在實體伺服器中執行的自訂指令碼。OEL7-OpenSourceTelegraf 是 http.conf 檔案中提及的 hostname 內容值。argument.py on OEL7-OpenSourceTelegraf 是將在自訂指令碼物件下收集的度量名稱。範例如下:
[[inputs.exec]]
name_prefix = "executescript."
commands = ["python2.7 /opt/scripts/python/argument.py 100"]
data_format = "value"
data_type = "integer"
timeout = "300s"
[inputs.exec.tags]
file_path = "/opt/scripts/python/argument.py"
script_name = "argument.py on OEL7-OpenSourceTelegraf"
備註: 請勿變更任何其他 Telegraf 組態,因為這可能會導致意外的行為。
- 重新啟動 Telegraf 並等待 10 分鐘,以取得資料。
下一步
您可以透過
vRealize Operations 使用者介面,從
度量索引標籤中選取相關物件以檢視度量。
- 從左側面板中,導覽至。
- 按一下右窗格中的作業系統環境物件。
- 導覽至度量索引標籤,然後選取對應的作業系統物件。
- 在作業系統物件下,您將找到自訂指令碼物件。