Use Server Tagging to query, filter, and compare related servers using custom metadata. You can tag related servers based on OS, location, tier, owner, or any other relevant criteria. Server tags provide additional context to server metrics.
For example, you may want to specify deployment-version tags to the servers in a specific cluster, and then use those tags to identify anomalies in server metrics during a new deployment.
Server Tagging requires a Server Visibility license. Server Tagging is currently available for Linux, Windows, and Solaris.
Server Visibility can import the tags (described in the table) automatically.
Source | Tags | Controller and Agent Requirements |
---|---|---|
Custom Server Tags | Server Visibility can import:
|
|
Machine Agent | These tags display in the Server Dashboard under Tags:
|
|
Amazon Web Services | These tags display in the Server Dashboard under Tags as
|
|
Microsoft Azure | These tags display in the Server Dashboard under Tags as
|
|
Docker | Server Visibility can import user-defined tags and system container-level tags. These display under Container Details > Tags as The exact set of tags imported can vary depending on the system on which the container is running. See Configuration Options for Docker Tags. |
|
Kubernetes OpenShift | Server Visibility can import ReplicaSet and pod tags. These appear under Container Details > Tags as K8s|<tag> . See Configuration Options for Kubernetes and OpenShift Tags. |
|
ServiceNow CMDB | Server Visibility can import Configuration Management Database (CMDB) server tags. These appear under Container Details > Tags as | • Controller >= 20.3 • Machine Agent >= 23.8 |
To view filter servers by tag in the Servers list, select Filters and add the criteria you want for the tag filter. If you specify multiple criteria, the filter performs an AND search (for criteria with different keys) and an OR search (for criteria with the same key). This example shows the tag criteria filters for all servers with:
After you import custom tags using Custom Tagging APIs, you may observe latency in viewing user-defined tags. |
You can specify server tags as a set of key-value strings in the Agent config directory. Each Agent can support up to 50 tags by default.
Follow these suggested best practices to define server tags: If an Agent is deployed in Amazon Web Services, the Agent can auto-detect and import tags defined in AWS. The Controller also auto-assigns a set of default tags to each server. |
Configure the following option in
|
Detailed information about Amazon Web Services is outside the scope of |
Before Server Visibility can import tags from AWS, you must set up IAM roles:
To edit these settings, log in to the Controller administration console using the root
user password.
|
You can configure the Machine Agent to collect different types of tags. By default, all tags are collected. To turn off tag collection, set dockerTagsEnabled
to "false
".
<machine_agent_home>/extensions/DockerMonitoring/DockerMonitoringConfig.yml
file.Under the containerMonitoringConfig
section, set dockerTagsEnabled: "false"
# WARNING: Before making any changes to this file read the following section carefully # After editing the file, make sure the file follows the yml syntax. Common issues include # - Using tabs instead of spaces # - File encoding should be UTF-8 # # The safest way to edit this file is to copy paste the examples provided and make the # necessary changes using a plain text editor instead of a WYSIWYG editor. # samplingInterval indicates how often to gather metric data. Units in milliseconds. samplingInterval: 30000 containerMonitoringConfig: # containerProcessSelectorRegex defines regular expression to evaluate the processes in # each running container to be monitored by the machine agent. The regular expression is # compared against each process full command line within running # If the pattern matches, then the machine agent start monitoring it. containerProcessSelectorRegex: ".*[ ]-Dappdynamics.*" dockerTagsEnabled: "false" |
To enable AWS tags collection:
<machine_agent_home>
/extensions/ServerMonitoring/conf/ServerMonitoring.yml
file.For awsTagsConfig
, set enabled: true
//ServerMonitoring.yml # WARNING: Before making any changes to this file read the following section carefully # After editing the file, make sure the file follows the yml syntax. Common issues include # - Using tabs instead of spaces # - File encoding should be UTF-8 #The safest way to edit this file is to copy paste the examples provided and make the # necessary changes using a plain text editor instead of a WYSIWYG editor. awsTagsConfig: enabled: true # If enabled it reports the AWS Tags to Controller # update interval in milliseconds, minimum is 6 hours samplingInterval: 21600000 |
To enable collection of Microsoft Azure tags:
<machine_agent_home>
/extensions/ServerMonitoring/conf/ServerMonitoring.yml
file.Under the azureTagsConfig: section
, set enabled: "true".
//ServerMonitoring.yml # WARNING: Before making any changes to this file read the following section carefully # After editing the file, make sure the file follows the yml syntax. Common issues include # - Using tabs instead of spaces # - File encoding should be UTF-8 # The safest way to edit this file is to copy paste the examples provided and make the # necessary changes using a plain text editor instead of a WYSIWYG editor. azureTagsConfig: # If enabled it reports the Azure Tags to Controller enabled: true # update interval in milliseconds, minimum is 6 hours samplingInterval: 21600000 |
To enable tag collection:
<machine_agent_home>
/extensions/ServerMonitoring/conf/ServerMonitoring.yml
file.Under the k8sTagsConfig: section
, set enabled: "true".
//ServerMonitoring.yml # WARNING: Before making any changes to this file read the following section carefully # After editing the file, make sure the file follows the yml syntax. Common issues include # - Using tabs instead of spaces # - File encoding should be UTF-8 # The safest way to edit this file is to copy paste the examples provided and make the # necessary changes using a plain text editor instead of a WYSIWYG editor. k8sTagsConfig: #If enabled it reports the Kubernetes Container tags to Controller enabled: true |
(Optional) To get the Master
and Worker
tags, you must apply the following cluster role. Ensure to apply this cluster role before you run the Cluster Agent. This step is not applicable if you are using Cluster Agent 24.2.0 or later.
apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: node-viewer rules: - apiGroups: [""] resources: ["nodes"] verbs: ["get", "list", "watch"] |
For k8sNodeTagsConfig
, set enabled: true
//ServerMonitoring.yml # WARNING: Before making any changes to this file read the following section carefully # After editing the file, make sure the file follows the yml syntax. Common issues include # - Using tabs instead of spaces # - File encoding should be UTF-8 # The safest way to edit this file is to copy paste the examples provided and make the # necessary changes using a plain text editor instead of a WYSIWYG editor. k8sNodeTagsConfig: # enabled indicate whether the machine agent should report the k8s Cluster Nodes # If enabled it reports whether the Node is a 'Master' node or 'Worker' node enabled: true |
By default, the Machine Agent does not collect the ServiceNow CMDB tags even when the tag collection is enabled at a global level. To enable the CMDB tags collection:
<machine_agent_home>
/extensions/ServerMonitoring/conf/ServerMonitoring.yml
file.Under the serviceNowTagsConfig: section
, set enabled: "true".
cmdb_ci_server
table.//ServerMonitoring.yml serviceNowTagsConfig: # the enabled flag, by default this is false, set to true to enable this tags extension enabled: false # update interval in milliseconds, minimum is 300,000 or 5 minutes, recommended(default) 1200000 or 20 minutes samplingInterval: 1200000 oauthURL: "https://< site >/v1/auth/token" clientId: "your client id" clientSecret: encrypted: false value: "your client secret" clientScope: "the client scope" cmdburl: "https://< service now cmdb host >/now/table/cmdb_ci_server" # only override the hostname if the hostid does not match what is in the cmdb #hostname: "over ride host name" |
To enable reporting of all smart agent tags set in environmental variables:
<machine_agent_home>
/extensions/ServerMonitoring/conf/ServerMonitoring.yml
file.Under the smartAgentTagsConfig: section, set enabled: "true".
//ServerMonitoring.yml smartAgentTagsConfig: # enabled indicate whether the machine agent should report the Smart agent tags # If enabled it reports all the smart agent variables set in environment variables (starting with APPDYNAMICS_ENTITY_TAG_ prefix) enabled: true |