Nutanix Prism 中央監視
最終更新日 - 16年2026月XNUMX日
LogicMonitorは、Nutanix Prism Central向けのすぐに使える監視機能を提供します。この監視スイートは、Nutanix Prism Central v4 REST APIを活用して、Nutanixクラスタ、ハイパーバイザーホスト、および仮想マシンを監視します。
Nutanix APIの詳細については、以下を参照してください。 Nutanix v4 API Nutanix から。
LogicMonitor の Nutanix Prism Central 監視パッケージは、次のバージョンと互換性があります。
- Nutanix PC (Prism Central) 7.3 以降
- Nutanix AOS (Acropolis オペレーティング システム) 7.3 以降
- Nutanix AHV (Acropolis Hypervisor) 10.3 以降
Nutanix Prism Central Monitoringの要件
Nutanix Prism Central Monitoring を有効にするには、以下が必要です。
LogicMonitor_Collector_Snippetsデータソース- Nutanix Prism Central API へのアクセス (デフォルトではポート 9440)
- 読み取り専用権限を持つローカル Nutanix Prism Central ユーザー資格情報
推奨事項: 「Prism Viewer」権限を持つローカルアカウントを使用してください。詳細については、 組み込みロールリスト Nutanix から。
監視へのリソースの追加
Nutanix Prism Central リソースは、次の方法で監視に追加できます。
- Advanced NetScan を自動的に使用する(推奨)
- 手動でリソースを追加し、必要なプロパティを割り当てる
NetScan は検出を自動化し、階層的なリソース構成を維持するため、大規模または動的な Nutanix 環境には NetScan の使用を強くお勧めします。
警告: 超過を避けるため、NetScanを実行する前に、LogicMonitorライセンスが十分にあることを確認してください。不要なNutanixリソースが誤って追加されないように、NetScanフィルターを慎重にテストしてください。
Advanced NetScan を使用して Nutanix Prism Central リソースを追加する (推奨)
Advanced NetScan の使用の詳細については、次を参照してください。 強化されたスクリプト ネットスキャン.
- LogicMonitorで、次の場所に移動します モジュール > Exchange。
- Nutanix Prism Central LogicModules を見つけてインストールします。
モジュールのリストについては、 監視モジュール. - MFAデバイスに移動する リソース > 追加 > 複数のリソース > 高度なNetScan.
- 「Advanced NetScan の追加」ページで、この NetScan に関連付けるわかりやすい名前を入力します (例: Nutanix Prism Central Resources)。
- NetScan を実行するコレクタを選択します。
詳細については、を参照してください。 コレクターの割り当て in 強化されたスクリプト ネットスキャン. - 「拡張スクリプトNetScan」を選択します。 方法 ドロップダウンリスト。
- 「拡張スクリプト」セクションから、次を選択します。 リソース資格情報 > このスキャンにカスタム資格情報を使用する.
- NetScan に必要な Nutanix Prism Central 資格情報を提供し、NetScan がリソースを作成および整理する方法と場所を変更する次のプロパティを追加します。
| プロパティ | 値 | 必須 |
|---|---|---|
nutanix.prism.central.user | 閲覧者ロールを持つ Prism Central ユーザー名 (例: logicmonitor_viewer) | あり |
nutanix.prism.central.pass | Prism Centralのパスワード | あり |
nutanix.prism.central.host | Prism Centralのホスト名またはIP(例: 10.10.10.100 or prism.company.com) | あり |
nutanix.prism.central.port | APIポート(デフォルトは9440) | いいえ |
| lmaccess.id OR ロジックモニター.アクセス.id | ポータルに追加する前に、NetScan で重複するリソースを検索するための LogicMonitor API アクセス ID。 | あり |
lmaccess.key OR logicmonitor.access.key | ポータルにリソースを追加する前に NetScan で重複リソースを検索するための LogicMonitor API キー。 | あり |
hostname.source | NetScan で使用されるホスト名のソースを選択できるようにします。注: これは、既存のリソースで競合が見つかった場合に、リソースの重複作成を防ぐのに役立ちます。詳細については、「NetScan のトラブルシューティング」を参照してください。 | いいえ |
skip.device.dedupe | デバイスの重複排除チェックをスキップできるため、LogicMonitor API 資格情報は不要になります。 | いいえ |
rootFolder | このNetScanが作成する、または既存の場合は使用するLogicMonitorリソースグループの名前。値はネストされた子フォルダにすることができます。例: Nutanix/Production or DataCenter/Nutanixデフォルトは「Nutanix Prism Central Resources」です。 | いいえ |
lmapi.timelimit.sec | LM APIクエリの実行に費やす時間を設定します。デフォルトは60、許容範囲は30~120です。 | いいえ |
推奨事項: 必要な機能を検証するには、監視対象リソースの特定のフィルターから始め、フィルター操作や値を段階的に変更して、監視対象リソースを段階的にオンボードします。例えば、プロパティとフィルターが適切に定義され、目的の結果が得られるまで、フィルターを設定して一度に1つのNutanixクラスターのみを検出またはインポートするように設定できます。
警告: フィルターが構成されていない場合、NetScan は検出されたすべての Nutanix ホストと VM を個別の LogicMonitor リソースとして追加しようとします。
- 選択する Groovyスクリプトを埋め込む 次の NetScan スクリプトを埋め込みます。
/*******************************************************************************
* © 2007-2025 - LogicMonitor, Inc. All rights reserved.
******************************************************************************/
import com.santaba.agent.groovy.utils.GroovyScriptHelper as GSH
import com.logicmonitor.mod.Snippets
import groovy.json.JsonSlurper
Boolean debug = false
Boolean log = false
// Set props object based on whether or not we are running inside a netscan or debug console
def props
def prismCentralHost
try {
hostProps.get("system.hostname")
props = hostProps
prismCentralHost = props.get("nutanix.prism.central.host", props.get("system.hostname", ""))
debug = true // set debug to true so that we can ensure we do not print sensitive properties
}
catch (MissingPropertyException) {
props = netscanProps
prismCentralHost = props.get("nutanix.prism.central.host", "")
}
def modLoader = GSH.getInstance(GroovySystem.version).getScript("Snippets", Snippets.getLoader()).withBinding(getBinding())
def lmDebugSnip = modLoader.load("lm.debug", "1")
def lmDebug = lmDebugSnip.debugSnippetFactory(out, debug, log, "Nutanix_PrismCentral_Netscan")
def emit = modLoader.load("lm.emit", "1")
def httpSnip = modLoader.load("proto.http", "0")
def http = httpSnip.httpSnippetFactory(props)
def nutanixPrismCentralSnip = modLoader.load("nutanix.prism.central", "0")
def nutanixPrismCentral = nutanixPrismCentralSnip.nutanixPrismCentralSnippetFactory(props, lmDebug, http)
// Configuration options
def rootFolder = props.get("rootFolder") ?: "Nutanix Prism Central Resources"
Boolean skipDeviceDedupe = props.get("skip.device.dedupe", "false").toBoolean()
String hostnameSource = props.get("hostname.source", "")?.toLowerCase()?.trim()
// Initialize LM API for device deduplication if not skipped
def lmApi
if (!skipDeviceDedupe) {
def lmApiSnippet = modLoader.load("lm.api", "0")
lmApi = lmApiSnippet.lmApiSnippetFactory(props, http, lmDebug)
}
// Get information about devices that already exist in LM portal
List fields = ["name", "currentCollectorId", "displayName", "id", "customProperties"]
Map args = ["size": 1000, "fields": fields.join(",")]
def lmDevices
def pathFlag, portalInfo, timeLimitSec, timeLimitMs
if (!skipDeviceDedupe) {
portalInfo = lmApi.apiCallInfo("Devices", args)
timeLimitSec = props.get("lmapi.timelimit.sec", "60").toInteger()
timeLimitMs = (timeLimitSec) ? Math.min(Math.max(timeLimitSec, 30), 120) * 1000 : 60000
if (portalInfo.timeEstimateMs > timeLimitMs) {
lmDebug.LMDebugPrint("Estimate indicates LM API calls would take longer than time limit configured. Proceeding with individual queries by display name for each device to add.")
lmDebug.LMDebugPrint("\t${portalInfo}\n\tNOTE: Time limit is set to ${timeLimitSec} seconds. Adjust this limit by setting the property lmapi.timelimit.sec. Max 120 seconds, min 30 seconds.")
pathFlag = "ind"
} else {
lmDebug.LMDebugPrint("Response time indicates LM API calls will complete in a reasonable time range. Proceeding to collect info on all devices to cross reference and prevent duplicate device creation.\n\t${portalInfo}")
pathFlag = "all"
lmDevices = lmApi.getPortalDevices(args)
}
}
List<Map> resources = []
def now = new Date()
def dateFormat = "yyyy-MM-dd'T'HH:mm:ss.s z"
TimeZone tz = TimeZone.getDefault()
Map duplicateResources = [
"date" : now.format(dateFormat, tz),
"message" : "Duplicate device names and display names, keyed by display name that would be assigned by the netscan, found within LogicMonitor portal. Refer to documentation for how to resolve name collisions using 'hostname.source' netscan property.",
"total" : 0,
"resources": []
]
// Get all hosts data with pagination
def hostsData = nutanixPrismCentral.httpGet("clustermgmt/v4.0/config/hosts?\$limit=100")
def allHosts = []
def hostsCurrentPage = 0
def hostsPageSize = 100
if (hostsData && hostsData.data) {
allHosts.addAll(hostsData.data)
lmDebug.LMDebugPrint("Hosts first page: Found ${hostsData.data.size()} hosts")
// Check if there are more pages to process
def hostsHasMore = hostsData.metadata?.links?.find { it.rel == "next" } != null
if (hostsHasMore) {
lmDebug.LMDebugPrint("Hosts pagination detected. Total available: ${hostsData.totalAvailableResults ?: 'unknown'}")
// Continue fetching remaining pages
while (hostsHasMore) {
hostsCurrentPage++
lmDebug.LMDebugPrint("Fetching hosts page ${hostsCurrentPage + 1}...")
def hostsPageData = nutanixPrismCentral.httpGet("clustermgmt/v4.0/config/hosts?\$limit=${hostsPageSize}&\$page=${hostsCurrentPage}")
if (hostsPageData && hostsPageData.data && hostsPageData.data.size() > 0) {
allHosts.addAll(hostsPageData.data)
lmDebug.LMDebugPrint("Hosts page ${hostsCurrentPage + 1}: Found ${hostsPageData.data.size()} hosts")
// Check if there's a next page
hostsHasMore = hostsPageData.metadata?.links?.find { it.rel == "next" } != null
} else {
lmDebug.LMDebugPrint("No more hosts data found, stopping pagination")
hostsHasMore = false
}
// Safety check to prevent infinite loops
if (hostsCurrentPage > 50) {
lmDebug.LMDebugPrint("Reached maximum hosts page limit (50), stopping pagination")
break
}
}
}
}
lmDebug.LMDebugPrint("Total hosts discovered: ${allHosts.size()}")
// Process each host
allHosts.each { host ->
def hostExtId = host.extId
def hostName = host.hostName
def serial = host.blockSerial
lmDebug.LMDebug("Processing host: ${hostName} (extId: ${hostExtId})")
if (!hostExtId || !hostName) {
lmDebug.LMDebug("ERROR: Host missing required fields (extId: ${hostExtId}, name: ${hostName}), skipping")
return
}
String displayName = hostName
def hostname = hostName
def ip = hostName
// Try to get IP from hypervisor external address
if (host.hypervisor?.externalAddress?.ipv4?.value) {
ip = host.hypervisor.externalAddress.ipv4.value
hostname = ip
// Try reverse DNS lookup
try {
def reverseDnsName = InetAddress.getByName(ip)?.getHostName()
if (reverseDnsName && reverseDnsName != ip) {
hostname = reverseDnsName
}
} catch (Exception e) {
lmDebug.LMDebug("DEBUG: Failed to resolve reverse DNS for ${ip}: ${e.message}")
}
}
// Check for existing device in LM portal
def deviceMatch = false
if (!skipDeviceDedupe) {
if (pathFlag == "ind") {
deviceMatch = lmApi.findPortalDevice(displayName, args)
} else if (pathFlag == "all") {
deviceMatch = lmApi.checkExistingDevices(displayName, lmDevices)
}
}
if (deviceMatch) {
if (hostname != deviceMatch?.name) {
// Log duplicates that would cause additional devices to be created; unless these entries are resolved, they will not be added to resources for netscan output
def collisionInfo = [
(displayName): [
"Netscan" : [
"hostname" : hostname,
"displayName": displayName
],
"LM" : [
"hostname" : deviceMatch?.name,
"collectorId": deviceMatch?.currentCollectorId,
"displayName": deviceMatch?.displayName
],
"Resolved": false
]
]
// Resolve hostname collision based on user preference
if (hostnameSource == "lm" || hostnameSource == "logicmonitor") {
hostname = deviceMatch?.name
displayName = deviceMatch?.displayName
deviceMatch = false
if (collisionInfo && collisionInfo[displayName]) {
collisionInfo[displayName]["Resolved"] = true
}
} else if (hostnameSource == "netscan") {
if (collisionInfo && collisionInfo[displayName]) {
collisionInfo[displayName]["Resolved"] = true
}
displayName = "${displayName} - ${ip}"
deviceMatch = false
}
if (collisionInfo) {
duplicateResources["resources"].add(collisionInfo)
}
}
// Don't worry about matches where the hostname values are the same
// These will update via normal NetScan processing and should be ignored
else {
deviceMatch = false
}
}
// Determine device group based on cluster
def deviceGroups = []
deviceGroups << "${rootFolder}"
// Resource host properties
Map hostProps = [
"system.categories" : "Nutanix_Hypervisor",
"nutanix.prism.central.host": prismCentralHost,
"nutanix.prism.central.user": props.get("nutanix.prism.central.user"),
"nutanix.prism.central.pass": props.get("nutanix.prism.central.pass"),
"nutanix.hypervisor.serial" : serial
]
def resource = [
"hostname" : hostname,
"displayname": displayName,
"hostProps" : hostProps,
"groupName" : deviceGroups
]
lmDebug.LMDebugPrint("Adding host: ${displayName} (${hostname})")
if (!deviceMatch) resources.add(resource)
}
// Get Prism Central resource information
lmDebug.LMDebugPrint("Fetching Prism Central resource...")
def domainManagerData = nutanixPrismCentral.httpGet("prism/v4.0/config/domain-managers")
if (domainManagerData && domainManagerData.data && domainManagerData.data.size() > 0) {
def domainManager = domainManagerData.data[0]
lmDebug.LMDebugPrint("Processing Prism Central resource")
// Perform nslookup on nutanix.prism.central.host
String prismHostForLookup = prismCentralHost
String prismHostIP = null
String prismHostDNS = prismCentralHost
try {
def inetAddress = InetAddress.getByName(prismHostForLookup)
prismHostIP = inetAddress.getHostAddress()
prismHostDNS = inetAddress.getHostName()
lmDebug.LMDebug("DEBUG: DNS lookup for ${prismHostForLookup}: IP=${prismHostIP}, DNS=${prismHostDNS}")
} catch (Exception e) {
lmDebug.LMDebug("ERROR: Failed to resolve ${prismHostForLookup}: ${e.message}")
// If lookup fails, use the original value
prismHostIP = prismCentralHost
prismHostDNS = prismCentralHost
}
// Determine hostname based on nslookup result
String pcHostname = prismHostIP
// Determine displayname from config.name
String pcConfigName = domainManager.config?.name ?: "Unnamed"
String pcDisplayName = pcConfigName
// If config.name is "Unnamed", use DNS name
if (pcConfigName == "Unnamed") {
pcDisplayName = prismHostDNS
lmDebug.LMDebug("DEBUG: Config name is 'Unnamed', using DNS name: ${pcDisplayName}")
}
// Check for existing device in LM portal
def pcDeviceMatch = false
if (!skipDeviceDedupe) {
if (pathFlag == "ind") {
pcDeviceMatch = lmApi.findPortalDevice(pcDisplayName, args)
} else if (pathFlag == "all") {
pcDeviceMatch = lmApi.checkExistingDevices(pcDisplayName, lmDevices)
}
}
if (pcDeviceMatch) {
if (pcHostname != pcDeviceMatch?.name) {
// Log duplicates that would cause additional devices to be created; unless these entries are resolved, they will not be added to resources for netscan output
def pcCollisionInfo = [
(pcDisplayName): [
"Netscan" : [
"hostname" : pcHostname,
"displayName": pcDisplayName
],
"LM" : [
"hostname" : pcDeviceMatch?.name,
"collectorId": pcDeviceMatch?.currentCollectorId,
"displayName": pcDeviceMatch?.displayName
],
"Resolved": false
]
]
// Resolve hostname collision based on user preference
if (hostnameSource == "lm" || hostnameSource == "logicmonitor") {
pcHostname = pcDeviceMatch?.name
pcDisplayName = pcDeviceMatch?.displayName
pcDeviceMatch = false
if (pcCollisionInfo && pcCollisionInfo[pcDisplayName]) {
pcCollisionInfo[pcDisplayName]["Resolved"] = true
}
} else if (hostnameSource == "netscan") {
pcDisplayName = "${pcDisplayName} - ${pcHostname}"
pcDeviceMatch = false
if (pcCollisionInfo && pcCollisionInfo[pcDisplayName]) {
pcCollisionInfo[pcDisplayName]["Resolved"] = true
}
}
if (pcCollisionInfo) {
duplicateResources["resources"].add(pcCollisionInfo)
}
}
// Don't worry about matches where the hostname values are the same
// These will update via normal netscan processing and should be ignored
else {
pcDeviceMatch = false
}
}
if (!pcDeviceMatch) {
// Prism Central resource properties
Map pcHostProps = [
"system.categories" : "Nutanix_PrismCentral",
"nutanix.prism.central.user": props.get("nutanix.prism.central.user"),
"nutanix.prism.central.pass": props.get("nutanix.prism.central.pass")
]
def pcDeviceGroups = []
pcDeviceGroups << "${rootFolder}"
def pcResource = [
"hostname" : pcHostname,
"displayname": pcDisplayName,
"hostProps" : pcHostProps,
"groupName" : pcDeviceGroups
]
lmDebug.LMDebugPrint("Adding Prism Central resource: ${pcDisplayName} (${pcHostname})")
resources.add(pcResource)
} else {
lmDebug.LMDebug("DEBUG: Skipping Prism Central resource - already exists in portal")
}
} else {
lmDebug.LMDebug("WARNING: No Prism Central domain manager data found")
}
lmDebug.LMDebugPrint("Duplicate Resources:")
if (duplicateResources && duplicateResources.resources) {
duplicateResources.resources.each { collisionInfo ->
if (collisionInfo) {
collisionInfo.each { key, value ->
lmDebug.LMDebugPrint("\t${key}: ${value}")
}
}
}
}
lmDebug.LMDebugPrint("Summary: Found ${resources.size()} resource(s) to add (including Prism Central)")
if ((resources.size()) == 0) {
lmDebug.LMDebugPrint("No resources to add. Exiting netscan.")
} else {
emit.resource(resources, debug)
}
return 0- スケジュールセクションで、 このNetScanをスケジュールに従って実行する.
動的環境の場合、NetScan を XNUMX 時間ごとに実行するようにスケジュールできます。
注意: 以降のNetScan実行では、Nutanix Prism Centralの変更に基づいて、リソースまたはリソースグループが追加または移動されます。ただし、NetScanにはリソースを削除する機能はありません。
- 選択する Save or 保存して実行.
NetScan を実行した後、追加されたリソースの数、または NetScan がリソースを作成しない場合はエラー メッセージの履歴を確認します。
注意: NetScansはリソースやリソースグループを追加または移動できますが、既存のリソースを削除することはできません。詳細については、 動的リソース グループ.
監視にリソースを手動で追加する
- LogicMonitorで、次の場所に移動します リソース > 追加.
- Prism Central インスタンスのホスト名または IP アドレスを入力します。
- リソースを適切なリソース グループに割り当てます。
- 以下にリストされている必須プロパティを追加します。
- 割り当てられたコレクターがポート 9440 (または構成されたポート) で Prism Central にアクセスできることを確認します。
AHV ハイパーバイザー ホストを手動で監視するには、各ホストを個別のリソースとして追加し、適切な Prism Central 資格情報を割り当てます。
Prism Central に必要なホストプロパティ
Prism Central リソースまたは親リソース グループで次のプロパティを設定します。
| プロパティ | 詳細説明 | 必須 |
nutanix.prism.central.user | Prism Central API ユーザー名 | あり |
nutanix.prism.central.pass | Prism Central APIパスワード | あり |
nutanix.prism.central.port | Prism Central API ポート (デフォルト: 9440) | いいえ |
AVHハイパーバイザーに必要なホストプロパティ
AHV ハイパーバイザー リソースまたはその親リソース グループに次のプロパティを設定します。
| プロパティ | 詳細説明 | 必須 |
nutanix.prism.central.user | Prism Central API ユーザー名 | あり |
nutanix.prism.central.pass | Prism Central APIパスワード | あり |
nutanix.prism.central.host | Prism Centralのホスト名またはIP | あり |
nutanix.prism.central.port | Prism Central API ポート (デフォルト: 9440) | いいえ |
NetScan のトラブルシューティング
このスイートのNetScanは、ポータル内の既存のリソースを更新し、NutanixのAPIから取得した関連情報を追加できます。また、表示名は同じだがsystem.hostnameの値が異なるという競合が発生した場合、NetScanがポータル内に重複したリソースを作成する可能性もあります。リソースが適切に更新され、重複したリソースが作成されないようにするため、このNetScanはLogicMonitorのAPIを使用して既存のリソースを照会し、検出された名前の競合を報告します。このファイルはコレクターログからアクセスできます。コレクターログの取得の詳細については、以下を参照してください。 コレクターログ–LogicMonitorへのログの送信.
このレポートのリソースは、NetScanがプロパティで設定されていない限り、LogicMonitorにNetScan出力の一部として報告されません。 hostname.source。 このプロパティを使用すると、ユーザーは、NetScan 出力で使用されるホスト名のソースを選択することによって、検出された名前の競合を解決できます。 考えられる XNUMX つのホスト名ソースは、次の値によって決まります。
- 「lm」 or 「ロジックモニター」 名前が競合するリソースは、LogicMonitor 内の既存の system.hostname を使用して、ポータル内のデバイスが NetScan によって更新されるようにします。この設定では新しいデバイスは作成されません。
- 「ネットスキャン」 名前が競合するリソースは、NetScanスクリプトで決定されたsystem.hostnameを維持し、報告された表示名を更新して追加します。
- <system.hostname>表示名が一意であることを確認してポータルに追加できるようにします。このオプションは、厳格な命名規則がなく、同じ表示名を持つリソースが複数ある場合に便利です。
注意: NetScans は system.hostname の値を更新できませんが、表示名、カスタム プロパティ、およびグループの割り当ては更新できます。
LogicModulesをインポートする
ExchangeからNutanix Prism Central Logicモジュールをすべてインストールしてください。モジュールが既にインストールされている場合は、最新バージョンを実行していることを確認してください。
パッケージ内のLogicModules
Nutanix Prism Central 監視スイートには、次の LogicModules が含まれています。
| モジュール名 | タイプ | 詳細説明 |
|---|---|---|
Nutanix_Hypervisor_CPU | データソース | Prism Central Hypervisor の CPU 使用率を監視します。 |
Nutanix_Hypervisor_ControllerPerformance | データソース | Prism Central Hypervisor コントローラーのパフォーマンスを監視します。 |
Nutanix_Hypervisor_Info | プロパティソース | Nutanix Prism Central Hypervisor に適切なデバイス プロパティを設定します。 |
Nutanix_Hypervisor_Memory | データソース | Prism Central ハイパーバイザーのメモリ使用量を監視します。 |
Nutanix_Hypervisor_NetworkInterfaces | データソース | Prism Central Hypervisor ネットワーク インターフェイスのステータスを監視します。 |
Nutanix_Hypervisor_NodeHealth | データソース | Prism Central ハイパーバイザーのステータスとヘルスチェック スコアを監視します。 |
Nutanix_Hypervisor_Storage | データソース | Prism Central Hypervisor のストレージ使用量を監視します。 |
Nutanix_PrismCentral_Clusters | データソース | Prism Central クラスターのパフォーマンス、使用率、ホストの合計数、VM の合計数を監視します。 |
Nutanix_PrismCentral_Hosts | データソース | Prism Central ホストのステータスとヘルス チェック スコアを監視します。 |
Nutanix_PrismCentral_Licensing | データソース | Prism Central ライセンス情報と有効期限までの日数を監視します。 |
Nutanix_PrismCentral_VMs | データソース | Prism Central 仮想マシンのパフォーマンスと使用率のメトリックを監視します。 |
addCategory_Nutanix_Hypervisor | プロパティソース | Nutanix Prism Central Hypervisor に適切なカテゴリを設定します。 |
addCategory_Nutanix_PrismCentral | プロパティソース | Nutanix Prism Centralに適切なカテゴリを設定します |
このパッケージの DataSource によって追跡されるさまざまなメトリクスに静的なデータポイントのしきい値を設定する場合、LogicMonitor はテクノロジー所有者のベスト プラクティス KPI 推奨事項に従います。
推奨事項: LogicMonitorでは、必要に応じて、環境固有のニーズに合わせてこれらの定義済みしきい値を調整することをお勧めします。データポイントしきい値の調整の詳細については、以下を参照してください。 データポイントの静的しきい値.