サーバの可視性のためのマシンエージェントの設定
サーバの可視性のデフォルト設定を変更できます。このページでは、構成可能な設定とそのデフォルト値について説明します。
構成ファイル <machine-agent-home>/extensions/ServerMonitoring/conf/ServerMonitoring.yml を編集します。
YML ファイルの編集
YML ファイルを編集する場合は、次のようにします。
ServerMonitoring.ymlまたは他のYMLファイルに変更を加える場合、変更したファイルが標準YML構文ルールを満たしていることを確認します。次のYMLの重要な推奨事項に従ってください。- タブ文字は含めない。フィールドをインデントする場合、空白文字のみ使用してください。
- 同じレベルのエントリをインデントするには、正確に同じ数の空白文字を使用する。
- ファイルを編集するには、WYSIWIG エディタではなく、プレーンテキストエディタを使用する。コンテンツを表示するには、固定幅/等幅フォントを使用する。
- 必ず UTF-8 エンコーディングを使用して保存する。
- オンラインの
YML構文テスターを使用して、編集したファイルをテストして確認する。
YMLファイル内の設定を編集する最も安全な方法は次のとおりです。- 編集する行をコピーして、そのコピーを新しい行に貼り付ける。必ず行全体を選択し、コピーして貼り付けてください。
- 必要に応じて元の行をコメントアウトし、コピーを編集する。
- このファイルで正規表現を追加または編集する場合は、オンラインの正規表現テスターを使用して正規表現をテストして確認する必要があります。
- このファイルに変更を加えて設定を変更する前に、このページのオプションの説明とファイル内のコメントを入念に確認してください。
- エージェントは、エージェント設定プロパティの変更に応じて動的に更新されるため、このファイルを更新した後、エージェントの再起動は不要です。
Configurable Server Visibility Settings
| Setting | Description | |
|---|---|---|
|
basicEnabled |
Indicates whether the Machine Agent should report the basic metrics through the SIM extension. Set this to Default = |
|
|
volumeMonitorConfig: maxNumberVolumes |
Do not report more than N volumes, where N = Default = 5
警告: Changing this setting can affect the resource consumption of your deployment. Before you increase this setting, verify that your application environment and Controller can process the increased resource requirements.
|
|
|
volumeMonitorConfig: whitelistSelectorRegex |
Volumes with names that match this regular expression are always reported, up to the maximum specified by maxNumberVolumes Default = "" |
|
|
volumeMonitorConfig: blacklistSelectorRegex |
Volumes with names that match this regular expression are excluded. This setting is useful for filtering out irrelevant metrics. If a volume name matches both the blocklist and allowlist regexes, metrics for that network are reported (the allowlist takes priority) up to the maximum specified by maxNumberVolumes The default ServerMonitoring.yml file does not include a volumeMonitorConfig:whitelistSelectorRegex |
|
|
volumeMonitorConfig: samplingInterval |
Specifies a custom sampling interval for collecting volume metrics on Linux. Default = 3000 |
|
|
networkMonitorConfig: maxNumberNetworks |
Do not report more than N networks, where N = Default = 5
警告: Changing this setting can affect the resource consumption of your deployment. Before you increase this setting, verify that your application environment and Controller can handle the increased resource requirements.
|
|
|
networkMonitorConfig: whitelistSelectorRegex |
Networks with names that match this regular expression are always reported, up to the maximum specified by maxNumberNetworks To report metrics for one or more virtual networks, specify a regex that matches the virtual network names. When collecting Process metrics on Solaris, the Machine Agent observes and captures only the first 80 characters of each process name and argument list. This means that the Agent considers only the first 80 characters of each process string when it applies allowlists. Default = "" |
|
|
networkMonitorConfig: blacklistSelectorRegex |
Networks with names that match this regular expression are excluded. This setting is useful for filtering out irrelevant metrics. If a network name matches both the blocklist and allowlist regexes, metrics for that network are reported (the allowlist takes priority) up to the maximum specified by maxNumberNetworks The default regex excludes virtual networks. To monitor a set of one or more virtual networks, edit whitelistSelectorRegex blacklistSelectorRegex When collecting Process metrics on Solaris, the Machine Agent observes and captures only the first 80 characters of each process name and argument list. This means that the Agent considers only the first 80 characters of each process string when it applies blocklists. Default = "^veth.*|^vnet.*" |
|
criticalProcessSelectorRegex |
In some scenarios, it's essential to ensure that certain critical processes are always monitored by the Machine Agent, regardless of their resource consumption or other exclusion criteria. The criticalProcessSelectorRegex Examples: 1. Substring Match: criticalProcessSelectorRegex: "redis|postgres|nginx|mysql|apache2|httpd|java|python|node" • This regex matches any process whose command line contains any of the specified keywords (e.g., redis, postgres, etc.). • Use this format to monitor processes based on partial matches in the command line. 2. Whole Word Match: criticalProcessSelectorRegex: "\b(redis|postgres|nginx|mysql|apache2|httpd|java|python|node)\b" • This regex ensures that only exact matches of the process names are considered critical. • Use this format to avoid partial matches and ensure the entire word matches (e.g., redis but not redis-server).
注:
|
|
|
defaultProcessClassSelector |
The default "class selector" based on a class_selector_regex. If this regex is defined, and a match is found in the process command line, the class name is the first group occurrence of that regex in the command line. Default = "" |
|
|
processClassSelectorRegexList |
A list of For example:
The Machine Agent assigns a process to a class as follows:
These steps outline the recommended workflow for updating this list:
|
|
|
samplingInterval |
Indicates how often to gather metric data. Units in milliseconds. Default = 30000 (30 seconds) |
|
|
maxClassIdLength |
Specifies the maximum process class name length. Any process class name that is longer than the specified maximum is truncated. The global maximum of the process class name is 100. If this variable is set to be greater than 100, then the process name is truncated at 100. Default = 50 |
|
|
processSelectorRegex |
Contains a regular expression that specifies which processes should be monitored by the Machine Agent. The regular expression is compared against the full command line that was used to start the process. The default regular expression will filter out any processes where the command line ends with a close bracket (']'). For Linux, the process arguments could not be found, which usually indicates a kernel process. For Windows, no processes should end with a bracket character, so the regex should include all processes on Windows. Default = ""^.+[^]]$"" |
|
|
minLiveTimeMillisBeforeMonitoring |
Specifies the minimum amount of time a process must be alive before it is monitored by the Machine Agent. Use this to prevent the Machine Agent from being overloaded by monitoring short-lived processes. Units in milliseconds. Default = 60000 (60 seconds) |
|
|
maxNumberMonitoredClasses |
Specifies the maximum number of process classes that the Machine Agent monitors. The processes that are reported are using the highest CPU and memory that match the regex specified by Default = 20
警告: Changing this setting can affect the resource consumption of your deployment. Before you change this setting verify your application environment and Controller can process the increased resource requirements.
|
|
defaultDiskSectorSize |
Specifies the default sector size (in bytes) for each disk if the Machine Agent cannot determine the sector size. This value is used to calculate the number of bytes read/written for the disk. Default = 512 |
|
memoryMonitorConfig |
Specifies a custom sampling interval for collecting memory metrics on Linux. Default = 3000 |
|
|
cpusMonitorConfig |
Specifies a custom sampling interval for collecting CPU metrics on Linux. Default = 3000 |
|
tag |
A list of user-defined tags for the individual server. Use these tags to query, filter, aggregate, and compare related servers. See Server Tagging
Each tag is specified by a
key-value pair. You can define tag names up to 127 unicode characters, and tag values up to 255 unicode characters. Define each key on a separate line. All key-value strings should be within single quotes. If a key has multiple values, delineate the list with commas:
<key>: [ <value> ]
tags:
'Location': ['NYC', 'Data Center', 'Server Room 7']
'Environment': ['preProduction']
|
|
| urlMonitorConfig | Specifies a list of URLs to be monitored and a custom sampling interval for collecting URL metrics on Linux. For example:
CODE
|
Docker Visibility Settings
See Configure Docker Visibility.
Process Limits
These additional configurable settings are available in the Controller Admin UI:
-
Total number of processes displayed in the UI for a single query is 5000 processes per call.
-
Total number of processes tracked per account. The default value is 10000 processes per account.