Coletar métricas do Java Management Extensions (JMX) - Amazon CloudWatch

Coletar métricas do Java Management Extensions (JMX)

Você pode usar o agente do CloudWatch para coletar métricas do Java Management Extensions (JMX) das aplicações Java.

O agente do CloudWatch é compatível com a coleta dessas métricas nas seguintes versões:

  • JVM 8 e posteriores

  • Kafka 0.8.2.x e posteriores

  • Tomcat 9, 10.1 e 11 (beta)

Amazon EC2
Para habilitar o JMX na instância da JVM

Para que o agente do CloudWatch possa coletar métricas do JMX, a JVM da aplicação deve se vincular a uma porta usando a propriedade com.sun.management.jmxremote.port do sistema.

java -Dcom.sun.management.jmxremote.port=port-number -jar example.jar

Para obter mais informações e outras configurações, consulte a documentação do JMX.

Amazon EKS
Para habilitar o JMX nos pods de aplicações Java

Ao usar o complemento CloudWatch Observability EKS, você pode gerenciar como as métricas do JMX são habilitadas com anotações. Para obter mais informações, consulte Instalação do agente do CloudWatch com o complemento de observabilidade do EKS do Amazon CloudWatch ou com o chart do Helm. Para habilitar a coleta de métricas do JMX de uma workload, adicione as seguintes anotações ao arquivo de manifesto da workload na seção PodTemplate:

  • instrumentation.opentelemetry.io/inject-java: "true"

  • Um ou mais itens a seguir:

    • Para métricas da JVM: cloudwatch.aws.amazon.com/inject-jmx-jvm: "true"

    • Para métricas do operador do Kafka: cloudwatch.aws.amazon.com/inject-jmx-kafka: "true"

    • Para métricas de consumo do Kafka: cloudwatch.aws.amazon.com/inject-jmx-kafka-consumer: "true"

    • Para métricas de produtores do Kafka: cloudwatch.aws.amazon.com/inject-jmx-kafka-producer: "true"

    • Para métricas do Tomcat: cloudwatch.aws.amazon.com/inject-jmx-tomcat: "true"

Para começar a coletar métricas do JMX, adicione uma seção jmx à seção metrics_collected do arquivo de configuração do agente do CloudWatch. A seção jmx pode conter os campos a seguir.

  • jvm: opcional. Especifica que você deseja recuperar métricas da Java Virtual Machine (JVM) na instância. Para obter mais informações, consulte Coletar métricas da JVM.

    A seção pode incluir os seguintes campos:

    • measurement: especifica a matriz de métricas da JVM a serem coletadas. Para obter uma lista dos valores de uso possíveis, consulte a coluna Metric (Métrica) na tabela em Coletar métricas da JVM.

      Na entrada de cada métrica individual, você também poderá especificar uma ou ambas das seguintes opções:

      • rename: especifica um nome diferente para essa métrica.

      • unit: especifica a unidade a ser usada para essa métrica, substituindo a unidade padrão para a métrica. A unidade que você especificar deverá ser uma unidade de métrica válida do CloudWatch, conforme listado na descrição do Unit em MetricDatum.

  • kafka: opcional. Especifica que você deseja recuperar métricas do operador do Apache Kafka na instância. Para obter mais informações, consulte Coletar métricas do Kafka.

    A seção pode incluir os seguintes campos:

    • measurement: especifica a matriz de métricas do operador do Kafka a serem coletadas. Para obter uma lista dos valores de uso possíveis, consulte a coluna Métrica na primeira tabela em Coletar métricas do Kafka.

      Na entrada de cada métrica individual, você também poderá especificar uma ou ambas das seguintes opções:

      • rename: especifica um nome diferente para essa métrica.

      • unit: especifica a unidade a ser usada para essa métrica, substituindo a unidade padrão para a métrica. A unidade que você especificar deverá ser uma unidade de métrica válida do CloudWatch, conforme listado na descrição do Unit em MetricDatum.

  • kafka-consumer: opcional. Especifica que você deseja recuperar métricas dos consumidores do Apache Kafka na instância. Para obter mais informações, consulte Coletar métricas do Kafka.

    A seção pode incluir os seguintes campos:

    • measurement: especifica a matriz de métricas do operador do Kafka a serem coletadas. Para obter uma lista dos valores de uso possíveis, consulte a coluna Métrica na segunda tabela de métricas em Coletar métricas do Kafka.

      Na entrada de cada métrica individual, você também poderá especificar uma ou ambas das seguintes opções:

      • rename: especifica um nome diferente para essa métrica.

      • unit: especifica a unidade a ser usada para essa métrica, substituindo a unidade padrão para a métrica. A unidade que você especificar deverá ser uma unidade de métrica válida do CloudWatch, conforme listado na descrição do Unit em MetricDatum.

  • kafka-producer: opcional. Especifica que você deseja recuperar métricas dos produtores do Apache Kafka na instância. Para obter mais informações, consulte Coletar métricas do Kafka.

    A seção pode incluir os seguintes campos:

    • measurement: especifica a matriz de métricas do operador do Kafka a serem coletadas. Para obter uma lista dos valores de uso possíveis, consulte a coluna Métrica na terceira tabela de métricas em Coletar métricas do Kafka.

      Na entrada de cada métrica individual, você também poderá especificar uma ou ambas das seguintes opções:

      • rename: especifica um nome diferente para essa métrica.

      • unit: especifica a unidade a ser usada para essa métrica, substituindo a unidade padrão para a métrica. A unidade que você especificar deverá ser uma unidade de métrica válida do CloudWatch, conforme listado na descrição do Unit em MetricDatum.

  • tomcat: opcional. Especifica que você deseja recuperar métricas do Tomcat na instância. Para obter mais informações, consulte Coleta métricas do Tomcat.

    A seção pode incluir os seguintes campos:

    • measurement: especifica a matriz de métricas do Tomcat a serem coletadas. Para obter uma lista dos valores de uso possíveis, consulte a coluna Metric (Métrica) na tabela em Coleta métricas do Tomcat.

      Na entrada de cada métrica individual, você também poderá especificar uma ou ambas das seguintes opções:

      • rename: especifica um nome diferente para essa métrica.

      • unit: especifica a unidade a ser usada para essa métrica, substituindo a unidade padrão para a métrica. A unidade que você especificar deverá ser uma unidade de métrica válida do CloudWatch, conforme listado na descrição do Unit em MetricDatum.

A seção jmx também pode incluir o campo append_dimensions opcional:

  • append_dimensions: opcional. Dimensões adicionais a serem usadas somente para métricas de processo. Se você especificar esse campo, ele será usado em complemento às dimensões especificadas no campo append_dimensions que é usado para todos os tipos de métricas coletadas pelo atendente.

Os campos a seguir são apenas para o Amazon EC2.
  • endpoint: o endereço ao qual o cliente JMX se conectar. O formato é ip:port. Se o endpoint não for o localhost, a autenticação por senha e o SSL deverão estar habilitados.

  • metrics_collection_interval: opcional. Especifica a frequência da coleta de métricas de processos, substituindo o metrics_collection_interval global especificado na seção agent do arquivo de configuração.

    Esse valor é especificado em segundos. Por exemplo, a especificação de 10 faz com que as métricas sejam coletadas a cada 10 segundos. Uma configuração de 300 especifica que as métricas sejam coletadas a cada 5 minutos.

    Se você definir esse valor abaixo de 60 segundos, cada métrica será coletada como uma métrica de alta resolução. Para obter mais informações, consulte Métricas de alta resolução.

Se o JMX foi habilitado com autenticação por senha ou SSL para acesso remoto, você pode usar os campos a seguir.

  • password_file: opcional. Especifica um arquivo de propriedades Java de chaves para senhas. O arquivo deve ser somente leitura e restrito ao usuário que está executando o agente do CloudWatch. Se a autenticação por senha estiver habilitada, isso exigirá o mesmo par de nome de usuário e senha da entrada no arquivo de senha do JMX fornecido na propriedade com.sun.management.jmxremote.password.file. Se o SSL estiver habilitado, ele exigirá entradas para keystore e truststore e fará a correspondência ao javax.net.ssl.keyStorePassword e javax.net.ssl.trustStorePassword, respectivamente.

  • username: se a autenticação por senha estiver habilitada, especifique o nome de usuário que corresponde ao nome de usuário no arquivo de senha fornecido.

  • keystore_path: se o SSL estiver habilitado, especifique o caminho completo para o keystore JAVA, que consiste em uma chave privada e um certificado para a chave pública. Corresponde à propriedade javax.net.ssl.keyStore.

  • keystore_type: se o SSL estiver habilitado, especifique o tipo de keystore que está sendo usado. Corresponde à propriedade javax.net.ssl.keyStoreType.

  • truststore_path: se o SSL estiver habilitado, especifique o caminho completo para o truststore Java, que deve conter o certificado público do servidor JMX remoto. Corresponde à propriedade javax.net.ssl.trustStore.

  • truststore_type: se o SSL estiver habilitado, especifique o tipo de truststore que está sendo usado. Corresponde à propriedade javax.net.ssl.trustStoreType.

  • remote_profile: opcional. Os perfis remotos compatíveis do JMX são TLS em combinação com os perfis do SASL: SASL/PLAIN, SASL/DIGEST-MD5 e SASL/CRAM-MD5. Deve ser um dos seguintes: SASL/PLAIN, SASL/DIGEST-MD5, SASL/CRAM-MD5, TLS SASL/PLAIN, TLS SASL/DIGEST-MD5 ou TLS SASL/CRAM-MD5

  • realm: opcional. O realm, conforme exigido pelo perfil SASL/DIGEST-MD5 remoto.

  • registry_ssl_enabled: se a autenticação por registro RMI estiver habilitada. Defina como true se a JVM tiver sido configurada com com.sun.management.jmxremote.registry.ssl=true.

  • insecure Defina como true para cancelar a validação necessária se o agente estiver configurado para um endpoint não localhost.

A seguir, veja um exemplo da seção jmx do arquivo de configuração do agente do CloudWatch.

{ "metrics": { "metrics_collected": { "jmx": [ { "endpoint": "remotehost:1314", "jvm": { "measurement": [ "jvm.memory.heap.init", "jvm.memory.nonheap.used" ] }, "kafka": { "measurement": [ "kafka.request.count", { "name": "kafka.message.count", "rename": "KAFKA_MESSAGE_COUNT", "unit": "Count" } ] }, "username": "cwagent", "keystore_path": "/path/to/keystore", "keystore_type": "PKCS12", "truststore_path": "/path/to/truststore", "truststore_type": "PKCS12" }, { "endpoint": "localhost:1315", "kafka-producer": { "measurement": [ "kafka.producer.request-rate" ] }, "append_dimensions": { "service.name": "kafka/1" } } ] } } }

Coletar métricas da JVM

Você pode usar o agente do CloudWatch para coletar métricas da Java Virtual Machine (JVM). Para configurar, adicione uma seção jvm à seção jmx do arquivo de configuração do atendente do CloudWatch.

As seguintes métricas podem ser coletadas.

Métrica Dimensões Descrição

jvm.classes.loaded

[DEFAULT]

O número total de classes carregadas.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

jvm.gc.collections.count

[DEFAULT], name

O número total de coletas de resíduos que ocorreram.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

jvm.gc.collections.elapsed

[DEFAULT], name

O tempo decorrido aproximado da coleta de resíduos acumulada.

Unidade: milissegundos

Estatísticas significativas: mínimo, máximo, média

jvm.memory.heap.init

[DEFAULT]

A quantidade inicial de memória que a JVM solicita do sistema operacional para o heap.

Unidade: bytes

Estatísticas significativas: mínimo, máximo, média

jvm.memory.heap.max

[DEFAULT]

A quantidade máxima de memória que pode ser usada para o heap.

Unidade: bytes

Estatísticas significativas: Máximo

jvm.memory.heap.used

[DEFAULT]

O uso atual da memória do heap.

Unidade: bytes

Estatísticas significativas: mínimo, máximo, média

jvm.memory.heap.committed

[DEFAULT]

A quantidade de memória que é garantida como disponível para o heap.

Unidade: bytes

Estatísticas significativas: mínimo, máximo, média

jvm.memory.nonheap.init

[DEFAULT]

A quantidade inicial de memória que a JVM solicita do sistema operacional para fins não relacionados ao heap.

Unidade: bytes

Estatísticas significativas: mínimo, máximo, média

jvm.memory.nonheap.max

[DEFAULT]

A quantidade máxima de memória que pode ser usada para fins não relacionados ao heap.

Unidade: bytes

Estatísticas significativas: Máximo

jvm.memory.nonheap.used

[DEFAULT]

O uso atual de memória não heap.

Unidade: bytes

Estatísticas significativas: mínimo, máximo, média

jvm.memory.nonheap.committed

[DEFAULT]

A quantidade de memória que é garantida como disponível para fins que não relacionados ao heap.

Unidade: bytes

Estatísticas significativas: Mínimo, Máximo, Média

jvm.memory.pool.init

[DEFAULT], name

A quantidade inicial de memória que a JVM solicita do sistema operacional para o pool de memória.

Unidade: bytes

Estatísticas significativas: Mínimo, Máximo, Média

jvm.memory.pool.max

[DEFAULT], name

A quantidade máxima de memória que pode ser usada para o pool de memória.

Unidade: bytes

Estatísticas significativas: Máximo

jvm.memory.pool.used

[DEFAULT], name

O uso atual da memória do pool de memória.

Unidade: bytes

Estatísticas significativas: Mínimo, Máximo, Média

jvm.memory.pool.committed

[DEFAULT], name

A quantidade de memória que é garantida como disponível para o pool de memória.

Unidade: bytes

Estatísticas significativas: mínimo, máximo, média

jvm.threads.count

[DEFAULT]

O número atual de threads.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

As métricas da JVM são coletadas com as seguintes dimensões:

Dimensão Descrição

[DEFAULT]

No Amazon EC2, por padrão, o host também é publicado como uma dimensão de métricas coletadas pelo agente do CloudWatch, a menos que você esteja usando o campo append_dimensions na seção metrics. Veja omit_hostname na seção do agente de Criar ou editar manualmente o arquivo de configuração do atendente do CloudWatch para obter mais informações.

No Amazon EKS, por padrão, o contexto relacionado ao k8s também é publicado como dimensões de métricas (k8s.container.name, k8s.deployment.name, k8s.namespace.name, k8s.node.name, k8s.pod.name e k8s.replicaset.name). Eles podem ser filtrados usando o campo aggregation_dimensions.

name

Para as métricas jvm.gc.collections, o valor é o nome do coletor de resíduos.

Para as métricas jvm.memory.pool, o valor é o nome do pool de memória.

Coletar métricas do Kafka

Você pode usar o agente do CloudWatch para coletar métricas do Apache Kafka. Para configurar, adicione uma ou mais das subseções a seguir na seção jmx do arquivo de configuração do agente do CloudWatch.

  • Use uma seção kafka para coletar as métricas do operador do Kafka.

  • Use uma seção kafka-consumer para coletar as métricas do consumidor do Kafka.

  • Use uma seção kafka-producer para coletar as métricas do produtor do Kafka.

Métricas do operador do Kafka

As métricas a seguir podem ser coletadas dos operadores do Kafka.

Métrica Dimensões Descrição

kafka.message.count

[DEFAULT]

O número de mensagens recebidas pelo operador do Kafka.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.request.count

[DEFAULT], type

O número de solicitações recebidas pelo operador do Kafka.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.request.failed

[DEFAULT], type

O número de solicitações ao operador do Kafka que resultaram em uma falha.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.request.time.total

[DEFAULT], type

O tempo total que o operador do Kafka levou para atender às solicitações.

Unidade: milissegundos

Estatísticas significativas: Mínimo, Máximo, Média

kafka.request.time.50p

[DEFAULT], type

O percentil 50 do tempo que o operador do Kafka levou para atender às solicitações.

Unidade: milissegundos

Estatísticas significativas: Mínimo, Máximo, Média

kafka.request.time.99p

[DEFAULT], type

O percentil 99 do tempo que o operador do Kafka levou para atender às solicitações.

Unidade: milissegundos

Estatísticas significativas: Mínimo, Máximo, Média

kafka.request.time.avg

[DEFAULT], type

O tempo médio que o operador do Kafka levou para atender às solicitações.

Unidade: milissegundos

Estatísticas significativas: Média

kafka.network.io

[DEFAULT], state

O número de bytes recebidos ou enviados pelo operador do Kafka.

Unidade: bytes

Estatísticas significativas: Mínimo, Máximo, Média

kafka.purgatory.size

[DEFAULT], type

O número de solicitações que aguardam no purgatório.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.partition.count

[DEFAULT]

O número de partições no operador do Kafka.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.partition.offline

[DEFAULT]

O número de partições que estão offline.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.partition.under_replicated

[DEFAULT]

O número de partições sub-replicadas.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.isr.operation.count

[DEFAULT], operation

O número de operações de redução e expansão de réplicas sincronizadas.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.max.lag

[DEFAULT]

O atraso máximo nas mensagens entre as réplicas seguidoras e líderes.

Unidade: nenhuma

Estatísticas significativas: Máximo

kafka.controller.active.count

[DEFAULT]

O número de controladores ativos no operador.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.leader.election.rate

[DEFAULT]

Taxa de eleição do líder. Caso aumente, indica falhas do operador.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.unclean.election.rate

[DEFAULT]

Taxa de eleição do líder indeterminada. Caso aumente, indica falhas do operador.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.request.queue

[DEFAULT]

O tamanho da solicitação da fila.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.logs.flush.time.count

[DEFAULT]

A contagem de liberação de logs.

Unidade: milissegundos

Estatísticas significativas: mínimo, máximo, média

kafka.logs.flush.time.median

[DEFAULT]

O valor do percentil 50 da contagem de liberação de logs.

Unidade: milissegundos

Estatísticas significativas: mínimo, máximo, média

kafka.logs.flush.time.99p

[DEFAULT]

O valor do percentil 99 da contagem de liberação de logs.

Unidade: milissegundos

Estatísticas significativas: mínimo, máximo, média

As métricas do operador do Kafka são coletadas com as seguintes dimensões:

Dimensão Descrição

[DEFAULT]

No Amazon EC2, por padrão, o host também é publicado como uma dimensão de métricas coletadas pelo agente do CloudWatch, a menos que você esteja usando o campo append_dimensions na seção metrics. Veja omit_hostname na seção do agente de Criar ou editar manualmente o arquivo de configuração do atendente do CloudWatch para obter mais informações.

No Amazon EKS, por padrão, o contexto relacionado ao k8s também é publicado como dimensões de métricas (k8s.container.name, k8s.deployment.name, k8s.namespace.name, k8s.node.name, k8s.pod.name e k8s.replicaset.name). Eles podem ser filtrados usando o campo aggregation_dimensions.

type

O tipo da solicitação. Os valores possíveis são produce, fetch, fetchconsumer e fetchfollower.

state

A direção do tráfego de rede. Os possíveis valores são in e out.

operation

O tipo de operação da réplica sincronizada. Os possíveis valores são shrink e expand.

Métricas do consumidor do Kafka

As métricas a seguir podem ser coletadas pelos consumidores do Kafka.

Métrica Dimensões Descrição

kafka.consumer.fetch-rate

[DEFAULT], client-id

O número de solicitações de busca para todos os tópicos por segundo.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.consumer.records-lag-max

[DEFAULT], client-id

O número de mensagens que o consumidor está atrasado em relação ao produtor.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

kafka.consumer.total.bytes-consumed-rate

[DEFAULT], client-id

O número médio de bytes consumidos por segundo para todos os tópicos.

Unidade: bytes

Estatísticas significativas: Média

kafka.consumer.total.fetch-size-avg

[DEFAULT], client-id

O número de bytes buscados por solicitação para todos os tópicos.

Unidade: bytes

Estatísticas significativas: Mínimo, Máximo, Média

kafka.consumer.total.records-consumed-rate

[DEFAULT], client-id

O número médio de registros consumidos por segundo para todos os tópicos.

Unidade: nenhuma

Estatísticas significativas: Média

kafka.consumer.bytes-consumed-rate

[DEFAULT], client-id, topic

O número médio de bytes consumidos por segundo.

Unidade: bytes

Estatísticas significativas: Média

kafka.consumer.fetch-size-avg

[DEFAULT], client-id, topic

O número de bytes buscados por solicitação.

Unidade: bytes

Estatísticas significativas: mínimo, máximo, média

kafka.consumer.records-consumed-rate

[DEFAULT], client-id, topic

O número médio de registros consumidos por segundo.

Unidade: nenhuma

Estatísticas significativas: Média

As métricas do consumidor do Kafka são coletadas com as seguintes dimensões:

Dimensão Descrição

[DEFAULT]

No Amazon EC2, por padrão, o host também é publicado como uma dimensão de métricas coletadas pelo agente do CloudWatch, a menos que você esteja usando o campo append_dimensions na seção metrics. Veja omit_hostname na seção do agente de Criar ou editar manualmente o arquivo de configuração do atendente do CloudWatch para obter mais informações.

No Amazon EKS, por padrão, o contexto relacionado ao k8s também é publicado como dimensões de métricas (k8s.container.name, k8s.deployment.name, k8s.namespace.name, k8s.node.name, k8s.pod.name e k8s.replicaset.name). Eles podem ser filtrados usando o campo aggregation_dimensions.

client-id

O ID do cliente.

topic

O tópico do Kafka.

Métricas do produtor do Kafka

As métricas a seguir podem ser coletadas pelos produtores do Kafka.

Métrica Dimensões Descrição

kafka.producer.io-wait-time-ns-avg

[DEFAULT], client-id

O tempo médio que o thread de E/S ficou esperando por um socket pronto para leituras ou gravações.

Unidade: nenhuma

Estatísticas significativas: Média

kafka.producer.outgoing-byte-rate

[DEFAULT], client-id

O número médio de bytes de saída enviados por segundo para todos os servidores.

Unidade: bytes

Estatísticas significativas: Média

kafka.producer.request-latency-avg

[DEFAULT], client-id

A latência média da solicitação.

Unidade: milissegundos

Estatísticas significativas: Média

kafka.producer.request-rate

[DEFAULT], client-id

O número médio de solicitações enviadas por segundo.

Unidade: nenhuma

Estatísticas significativas: Média

kafka.producer.response-rate

[DEFAULT], client-id

O número de respostas recebidas por segundo.

Unidade: nenhuma

Estatísticas significativas: Mínimo, Máximo, Média

kafka.producer.byte-rate

[DEFAULT], client-id, topic

O número médio de bytes enviados por segundo para um tópico.

Unidade: bytes

Estatísticas significativas: Média

kafka.producer.compression-rate

[DEFAULT], client-id, topic

A taxa média de compactação dos lotes de registros de um tópico.

Unidade: nenhuma

Estatísticas significativas: Média

kafka.producer.record-error-rate

[DEFAULT], client-id, topic

O número médio por segundo de envios de registros que resultaram em erros para um tópico.

Unidade: nenhuma

Estatísticas significativas: Média

kafka.producer.record-retry-rate

[DEFAULT], client-id, topic

O número médio por segundo de tentativas de envio de registros de um tópico.

Unidade: nenhuma

Estatísticas significativas: Média

kafka.producer.record-send-rate

[DEFAULT], client-id, topic

O número médio de registros enviados por segundo para um tópico.

Unidade: nenhuma

Estatísticas significativas: Média

As métricas do produtor do Kafka são coletadas com as seguintes dimensões:

Dimensão Descrição

[DEFAULT]

No Amazon EC2, por padrão, o host também é publicado como uma dimensão de métricas coletadas pelo agente do CloudWatch, a menos que você esteja usando o campo append_dimensions na seção metrics. Veja omit_hostname na seção do agente de Criar ou editar manualmente o arquivo de configuração do atendente do CloudWatch para obter mais informações.

No Amazon EKS, por padrão, o contexto relacionado ao k8s também é publicado como dimensões de métricas (k8s.container.name, k8s.deployment.name, k8s.namespace.name, k8s.node.name, k8s.pod.name e k8s.replicaset.name). Eles podem ser filtrados usando o campo aggregation_dimensions.

client-id

O ID do cliente.

topic

O tópico do Kafka.

Coleta métricas do Tomcat

Você pode usar o agente do CloudWatch para coletar métricas do Apache Tomcat. Para configurar, adicione uma seção tomcat à seção metrics_collected do arquivo de configuração do atendente do CloudWatch.

As seguintes métricas podem ser coletadas.

Métrica Dimensões Descrição

tomcat.sessions

[DEFAULT]

O número de sessões ativas.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

tomcat.errors

[DEFAULT], proto_handler

A quantidade de erros encontrada.

Unidade: nenhuma

Estatísticas significativas: mínimo, máximo, média

tomcat.processing_time

[DEFAULT], proto_handler

O tempo total de processamento.

Unidade: milissegundos

Estatísticas significativas: Mínimo, Máximo, Média

tomcat.traffic

[DEFAULT], proto_handler

O número de bytes recebidos e enviados.

Unidade: bytes

Estatísticas significativas: Mínimo, Máximo, Média

tomcat.threads

[DEFAULT], proto_handler

O número de threads.

Unidade: nenhuma

Estatísticas significativas: Mínimo, Máximo, Média

tomcat.max_time

[DEFAULT], proto_handler, direction

Tempo máximo para processar uma solicitação.

Unidade: milissegundos

Estatísticas significativas: Máximo

tomcat.request_count

[DEFAULT], proto_handler

O total de solicitações.

Unidade: nenhuma

Estatísticas significativas: Mínimo, Máximo, Média

As métricas do Tomcat são coletadas com as seguintes dimensões:

Dimensão Descrição

[DEFAULT]

No Amazon EC2, por padrão, o host também é publicado como uma dimensão de métricas coletadas pelo agente do CloudWatch, a menos que você esteja usando o campo append_dimensions na seção metrics. Veja omit_hostname na seção do agente de Criar ou editar manualmente o arquivo de configuração do atendente do CloudWatch para obter mais informações.

No Amazon EKS, por padrão, o contexto relacionado ao k8s também é publicado como dimensões de métricas (k8s.container.name, k8s.deployment.name, k8s.namespace.name, k8s.node.name, k8s.pod.name e k8s.replicaset.name). Eles podem ser filtrados usando o campo aggregation_dimensions.

proto_handler

O proto_handler é um identificador para um conector, que é fornecido no formato <protocol>-<type>-<port> (por exemplo, http-nio-8080).

direction

A direção do tráfego. Os possíveis valores são received e sent.