Para los servicios de aplicaciones y complementos de supervisión personalizada compatibles con VMware Aria Operations, hay detalles de configuración que debe seguir.

Tabla 1. Detalles de configuración de application services compatibles
Detalles de configuración de application services compatibles
Active Directory
ActiveMQ
Apache HTTPD
Cassandra
Hyper-V
Complemento de Java
Estos son los detalles de configuración:
[[inputs.jolokia2_agent]]
  # Prefix to attach to the measurement name
  name_prefix = "java."
  # Add agents URLs to query
  urls = ["http://localhost:8080/jolokia"]
  #username and password are mandatory for Jolokia 1.6 or later
  #username = <jolokia role username>
  #password = <jolokia role password>
  # response_timeout = "5s"
  ## Optional TLS config
  # tls_ca   = "/var/private/ca.pem"
  # tls_cert = "/var/private/client.pem"
  # tls_key  = "/var/private/client-key.pem"
  # insecure_skip_verify = false
  ### JVM Generic
  [[inputs.jolokia2_agent.metric]]
    name  = "OperatingSystem"
    mbean = "java.lang:type=OperatingSystem"
    paths = ["ProcessCpuLoad","SystemLoadAverage","SystemCpuLoad"]
  [[inputs.jolokia2_agent.metric]]
    name  = "jvm_runtime"
    mbean = "java.lang:type=Runtime"
    paths = ["Uptime"]
  [[inputs.jolokia2_agent.metric]]
    name  = "jvm_memory"
    mbean = "java.lang:type=Memory"
    paths = ["HeapMemoryUsage", "NonHeapMemoryUsage", "ObjectPendingFinalizationCount"]
  [[inputs.jolokia2_agent.metric]]
    name     = "jvm_garbage_collector"
    mbean    = "java.lang:name=*,type=GarbageCollector"
    paths    = ["CollectionTime", "CollectionCount"]
    tag_keys = ["name"]
  [[inputs.jolokia2_agent.metric]]
    name       = "jvm_memory_pool"
    mbean      = "java.lang:name=*,type=MemoryPool"
    paths      = ["Usage", "PeakUsage", "CollectionUsage"]
    tag_keys   = ["name"]
    tag_prefix = "pool_"
  ### TOMCAT
  [[inputs.jolokia2_agent.metric]]
    name     = "GlobalRequestProcessor"
    mbean    = "Catalina:name=*,type=GlobalRequestProcessor"
    paths    = ["requestCount","bytesReceived","bytesSent","processingTime","errorCount"]
    tag_keys = ["name"]
  [[inputs.jolokia2_agent.metric]]
    name     = "JspMonitor"
    mbean    = "Catalina:J2EEApplication=*,J2EEServer=*,WebModule=*,name=jsp,type=JspMonitor"
    paths    = ["jspReloadCount","jspCount","jspUnloadCount"]
    tag_keys = ["J2EEApplication","J2EEServer","WebModule"]
  [[inputs.jolokia2_agent.metric]]
    name     = "ThreadPool"
    mbean    = "Catalina:name=*,type=ThreadPool"
    paths    = ["maxThreads","currentThreadCount","currentThreadsBusy"]
    tag_keys = ["name"]
  [[inputs.jolokia2_agent.metric]]
    name     = "Servlet"
    mbean    = "Catalina:J2EEApplication=*,J2EEServer=*,WebModule=*,j2eeType=Servlet,name=*"
    paths    = ["processingTime","errorCount","requestCount"]
    tag_keys = ["name","J2EEApplication","J2EEServer","WebModule"]
  [[inputs.jolokia2_agent.metric]]
    name     = "Cache"
    mbean    = "Catalina:context=*,host=*,name=Cache,type=WebResourceRoot"
    paths    = ["hitCount","lookupCount"]
    tag_keys = ["context","host"]
Servidor JBoss
Microsoft IIS
Microsoft SQL Server
Estos son los detalles de configuración:
[[inputs.sqlserver]]
   name_prefix = "MSSQL."

       #servers = [
       #"Server=<servername>;Port=1433;User Id=telegraf;Password=<mystrongpassword from step 2>;app name=telegraf;log=1;",
       #"Server=<servername>;Port=1433;User Id=telegraf;Password=<mystrongpassword from step 2>;app name=telegraf;log=1;"
      #]
       servers = [
        "Server=localhost;Port=1433;User Id=sa;Password=Password;app name=telegraf;log=1;"
         ]
   
   namepass = ["Rows*writes*bytes*sec*", "Rows*reads*bytes*sec*", "Rows*writes*sec*", "Rows*reads*sec*", "Query*User*counter*", "Buffer*cache*hit*ratio*", "Page*life*expectancy*", "Page*lookups*sec*", "Page*reads*sec*", "Page*writes*sec*", "Lazy*writes*sec*", "Checkpoint*pages*sec*", "Log*Apply*Ready*Queue*", "Data*File*s*Size*KB*", "Log*File*s*", "XTP*Memory*Used*KB*", "Log*Flushes*sec*", "Write*Transactions*sec*", "Transactions*sec*", "Log*Flush*Wait*Time*", "Active*Transactions*", "Log*Bytes*Flushed*sec*", "Processes*blocked*", "User*Connections*", "Logins*sec*", "Logouts*sec*", "Active*Temp*Tables*", "Temp*Tables*Creation*Rate*", "Batch*Requests*sec*", "SQL*Compilations*sec*", "SQL*Re*Compilations*sec", "Stored*Procedures*Invoked*sec*", "Target*Server*Memory*KB*", "Total*Server*Memory*KB*", "SQL*Cache*Memory*KB*", "Log*Pool*Memory*KB*", "Connection*Memory*KB*", "Lock*Memory*KB*", "Memory*Grants*Pending*", "Active*memory*grant*amount*KB*", "Disk*Read*Bytes*sec*", "Disk*Read*IO*Throttled*sec*", "Disk*Read*IO*sec*", "Disk*Write*Bytes*sec*", "Disk*Write*IO*Throttled*sec*", "Used*memory*KB*", "CPU*usage*", "Free*Space*in*tempdb*KB*", "Version*Store*Size*KB*", "Transactions*", "Blocked*tasks*", "Active*requests*", "Queued*requests*", "Requests*completed*sec*", "Number*of*Deadlocks*sec*", "Lock*Wait*Time*ms*", "Lock*Waits*sec*", "Lock*Requests*sec*", "Average*Wait*Time*ms*", "Index*Searches*sec*", "Page*Splits*sec*", "Full*Scans*sec*", "CPU*", "Wait*time*ms*", "Wait*tasks*", "State*", "Recovery*Model*"]
MongoDB
Servidor de MS Exchange
MySQL
NGINX
NTPD
Estos son los detalles de configuración:
[[inputs.ntpq]]
     name_prefix = “ntpd.”
     ## If false, set the -n ntpq flag. Can reduce metric gather times.
     dns_lookup = tr
Base de datos de Oracle
PostgreSQL
Pivotal
RabbitMQ
Riak
SharePoint Server
Servidor Tomcat
Oracle WebLogic
WebSphere
Tabla 2. Detalles de configuración para complementos de supervisión personalizada
Comprobación de ping

Estos son los detalles de configuración:

[[inputs.ping]]
## Hosts to send ping packets to.
urls = [www.vmware.com]

## Number of ping packets to send per interval.  Corresponds to the "-c"
## option of the ping command.
# count = 1

## Time to wait between sending ping packets in seconds.  Operates like the
## "-i" option of the ping command.
# ping_interval = 1.0

## If set, the time to wait for a ping response in seconds.  Operates like
## the "-W" option of the ping command.
# timeout = 1.0

## If set, the total ping deadline, in seconds.  Operates like the -w option
## of the ping command.
# deadline = 10

## Interface or source address to send ping from.  Operates like the -I or -S
## option of the ping command.
# interface = ""
Comprobación de TCP

Estos son los detalles de configuración:

[[inputs.net_response]]
name_override="netresponse"
## Server address (default localhost)
address = "10.10.10.10:443"
protocol = "tcp"

## Set timeout
# timeout = "1s"

## Set read timeout (only used if expecting a response)
# read_timeout = "1s"
Comprobación de HTTP

Estos son los detalles de configuración:

# HTTP/HTTPS request given an address a method and a timeout
[[inputs.http_response]]
name_override="httpresponse"
## List of url to query.
address = https://10.10.10.10/suite-api/api/adapters
method = "GET"

## Set http_proxy.
## Telegraf uses the system wide proxy settings if it's is not set.
# http_proxy = http://localhost:8888

## Set response_timeout (default 5 seconds)
# response_timeout = "5s"

## Whether to follow redirects from the server (defaults to false)
# follow_redirects = false

## Optional name of the field that will contain the body of the response.
## By default it is set to an empty String indicating that the body's content won't be added
# response_body_field = ''

## Optional substring or regex match in body of the response (case sensitive)
# response_string_match = "\"service_status\": \"up\""
# response_string_match = "ok"
# response_string_match = "\".*_status\".?:.?\"up\""


## Optional SSL Config
# ssl_ca = "/etc/telegraf/ca.pem"
# ssl_cert = "/etc/telegraf/cert.pem"
# ssl_key = "/etc/telegraf/key.pem"


## Use SSL but skip chain & host verification
insecure_skip_verify = true

## HTTP Request Headers (all values must be strings)
[inputs.http_response.headers]
accept = "application/json" Authorization = "OpsToken a16f7a2b-b033-48bc-9827-2daf8e205537::ec11ee5f-8623-4558-a904-8b4ea3f6f47d"
Scripts personalizados.

Estos son los detalles de configuración:

Para plataformas Linux:
# Read metrics from command that can output to stdout
[[inputs.exec]]
name_prefix = "executescript."
name_override = "output"
# commands = ["<prefix> <file path> <argument>"]
commands = ["python /opt/scripts/argument.py 10"]

## Data format to consume.
data_format = "value"
data_type = "integer"

## Timeout for each command to complete.
timeout = "300s"

[inputs.exec.tags]

file_path = "/opt/scripts/argument.py"
script_name = "my-py-script on Centos7-VM"
Para plataformas Windows:
# Read metrics from command that can output to stdout
[[inputs.exec]]

name_prefix = "executescript."
name_override = "output"

# commands = ["<prefix> <file path> <argument>"]
commands = ["Powershell -File C:\\\\VMware\\\\Scripts\\\\Arguments.ps1 vmtoolsd"]

## Data format to consume.
data_format = "value"
data_type = "integer"

## Timeout for each command to complete.
timeout = "300s"

[inputs.exec.tags]

file_path = "C:\\VMware\\Scripts\\Arguments.ps1"
script_name = "my-script-for-vmtool on Windows2022-PhysicalServer"
Proceso de Linux

Estos son los detalles de configuración (mediante expresión regular):

# Monitor process cpu and memory usage
[[inputs.procstat]]
  ## pattern as argument for pgrep (ie, pgrep -f <pattern>)
  pattern = ".*ucp-.*"

  fieldpass =  ["running", "cpu_usage", "memory_usage"]
  [inputs.procstat.tags]
    search_pattern = "regex_.#!AsTeRiSk!#ucp-.#!AsTeRiSk!#"
Estos son los detalles de configuración (mediante nombre del ejecutable):
# Monitor process cpu and memory usage
[[inputs.procstat]]
  ## executable name (ie, pgrep <exe>)
  exe = "top"
  fieldpass =  ["running", "cpu_usage", "memory_usage"]
  [inputs.procstat.tags]

    search_pattern = "exec_top"
Estos son los detalles de configuración (mediante ID de proceso):
# Monitor process cpu and memory usage
[[inputs.procstat]]
  ## PID file to monitor process
  pid_file = "/var/run/vmtoolsd.pid"

  fieldpass =  ["running", "cpu_usage", "memory_usage"]
  [inputs.procstat.tags]

    search_pattern = "pidfile_/var/run/vmtoolsd.pid"
Servicio de Windows

Estos son los detalles de configuración (mediante nombre del ejecutable):

# Monitor process cpu and memory usage
[[inputs.procstat]]

## Windows service name
win_service = "Dhcp"
pid_finder = "native"

fieldpass =  ["running", "cpu_usage", "memory_usage"]
[inputs.procstat.tags]
search_pattern = "exec_Dhcp"

[[inputs.win_services]]
service_names = ["Dhcp"]
name_override="procstat"

[inputs.win_services.tags]
search_pattern = "exec_Dhcp"