• EnglishEspañol日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

Criar um problema

Integração de monitoramento JMX

Nossa integração JMX permite ao usuário monitor qualquer aplicativo que exponha métrica com JMX. A integração inclui um arquivo de coleta padrão que coleta automaticamente as principais métricas da JVM.

Compatibilidade e requisitos

Antes de instalar a integração, certifique-se de atender aos seguintes requisitos:

Começo rápido

Se você não estiver executando o JMX em ambientes Kubernetes ou ECS, recomendamos nossa instalação guiada. Nossa instalação guiada usa nosso agente de infraestrutura e nossa CLI para configurar a integração JMX e descobre outros aplicativos e fontes de log em execução em seu ambiente e, em seguida, recomenda quais deles você deve usar.

A instalação guiada funciona com a maioria das configurações. Mas se não atender às suas necessidades, existem outras opções de instalação abaixo.

Pronto para começar? Clique no botão relevante, dependendo da região do data center que você usa. Quando terminar a instalação, retorne a esta documentação para revisar as opções de configuração.

Instalação guiada, região dos EUA

Instalar

Se você não estiver usando a instalação guiada, siga as instruções para seu ambiente:

' '

Atualize sua integração

Essa integração não é atualizada automaticamente. Para obter melhores resultados, atualize regularmente o pacote de integração e o agente de infraestrutura.

Tarefas pós-instalação

Quando terminar a instalação, você poderá definir opções de configuração. Algumas configurações são necessárias para que a integração funcione, enquanto outras são opcionais.

Configurar a integração

A configuração no formato YAML de uma integração é onde você pode colocar as credenciais de login necessárias e configurar como os dados são coletados. Quais opções você altera dependem de sua configuração e preferência.

Existem diversas formas de configurar a integração, dependendo de como ela foi instalada:

Arquivos de configuração de integração

O arquivo de configuração possui configurações comuns aplicáveis a toda integração, como interval, timeout ou inventory_source. Para ler tudo sobre essas configurações comuns, consulte nosso documento de formato de configuração .

Configurações específicas relacionadas ao JMX são definidas usando a seção env do arquivo de configuração. Essas configurações controlam a conexão com sua instância JMX, bem como outras configurações e recursos de segurança. A lista de configurações válidas é descrita na próxima seção deste documento.

As opções de configuração estão abaixo. Para obter um exemplo de configuração, consulte o arquivo de configuração de exemplo.

Arquivos de coleta métrica

Os arquivos de definição de coleção de métricas são arquivos YAML estruturados que informam à integração qual métrica coletar. Para um exemplo de configuração, veja o exemplo do arquivo de coleta de métricas.

Arquivo de coleta de métricas JVM padrão: /etc/newrelic-infra/integrations.d/jvm-metrics.yml

Dica

Você pode gravar diferentes arquivos de coleção para facilitar a organização e manutenção. Veja o arquivo de configuração para ver um exemplo.

Configuração de coleção usando anotações do Kubernetes

Você pode usar anotações do Kubernetes para fornecer configuração de coleção. Para conseguir isso, você precisa implantar um configMap no cluster do Kubernetes que criará o arquivo de configuração para a aplicação nri-jmx .

Neste arquivo de configuração você precisa especificar o comando para auto-discovery do contêiner, que permitirá utilizar o espaço reservado na configuração da integração, incluindo anotações do Kubernetes.

Exemplo de configMap para monitor JVM em um aplicativo Tomcat:

A seguir, use anotações para definir a configuração da coleção. Por exemplo, aqui está uma implantação do Tomcat com anotações:

apiVersion: apps/v1
kind: Deployment
metadata:
name: tomcat-deployment
labels:
app: java
spec:
replicas: 1
selector:
matchLabels:
app: java
template:
metadata:
annotations:
newrelic.config: >-
{
"collect": [
{
"domain": "java.lang",
"event_type": "JVMSample",
"beans": [
{
"query": "type=GarbageCollector,name=*",
"attributes": [
"CollectionCount",
"CollectionTime"
]
},
{
"query": "type=Memory",
"attributes": [
"HeapMemoryUsage.Committed",
"HeapMemoryUsage.Init",
"HeapMemoryUsage.Max",
"HeapMemoryUsage.Used",
"NonHeapMemoryUsage.Committed",
"NonHeapMemoryUsage.Init",
"NonHeapMemoryUsage.Max",
"NonHeapMemoryUsage.Used"
]
},
{
"query": "type=Threading",
"attributes": [
"ThreadCount",
"TotalStartedThreadCount"
]
},
{
"query": "type=ClassLoading",
"attributes": [
"LoadedClassCount"
]
},
{
"query": "type=Compilation",
"attributes": [
"TotalCompilationTime"
]
}
]
}
]
}
labels:
app: java
spec:
containers:
- name: tomcat
image: tomcat:10.0.12
ports:
- containerPort: 9999
env:
- name: CATALINA_OPTS
value: '-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false'

Conectores personalizados

JMX permite o uso de conectores customizados para comunicação com o aplicativo. Para usar um conector personalizado, você deve incluir os conectores personalizados no caminho de classe nrjmx.

Por padrão, a subpasta connectors está no classpath. Se esta pasta não existir, crie-a na pasta onde o nrjmx está instalado.

Por exemplo, para adicionar suporte ao JBoss, crie uma pasta chamada connectors no caminho da biblioteca padrão (Linux) /usr/lib/nrjmx/ (/usr/lib/nrjmx/connectors/) e copie o jar do conector personalizado ($JBOSS_HOME/bin/client/jboss-cli-client.jar) nela. Agora você pode executar a consulta JMX no JBoss.

Exemplo de configuração

Exemplo de configuração de arquivo para uma instalação no host:

Para obter mais informações sobre a estrutura geral da configuração de integração no host, consulte Configuração.

Nomeando seus dados

Métricas são enviadas e armazenadas na forma de amostras. Esta é uma lista de pares de valores principais que incluem dados métricos e metadados. Cada amostra é armazenada como um evento em nosso banco de dados.

Você é responsável por criar e nomear os dados JMX relatados à New Relic. Por esse motivo, a New Relic recomenda fortemente seguir estas convenções ao nomear seus tipos de eventos. Para garantir que você tenha um esquema de nomenclatura consistente:

  • Use estojo de camelo.
  • Use um nome que identifique claramente quais dados ele contém.

Exemplo: MyorgApplicationSample

Recommendation: Use o mesmo esquema de nomenclatura para métricas semelhantes em aplicativos diferentes.

Encontre e use dados

Os dados deste serviço são reportados para um dashboard de integração.

Os dados JMX são anexados ao tipo de evento definido pelo usuário especificado no arquivo de configuração. Por exemplo, se você tem interesse em monitorar o Tomcat utilizando a integração JMX, defina um event_type chamado TomcatSample, e consulte esse tipo de evento.

Você pode consultar esses dados para fins de resolução de problemas ou para criar gráficos e dashboards personalizados.

Para saber mais sobre como encontrar e usar seus dados, consulte Compreender os dados de integração.

Dados métricos

As métricas geradas pela integração incluem metadados associados ao MBean do qual estão coletando. Você pode usar esses metadados em consultas NRQL para filtrar e facetar os dados para que a consulta retorne apenas os dados dos beans desejados. Também pode ser utilizado para identificar unicamente as métricas, uma vez que o nome da métrica não é necessariamente único entre todos os beans.

Cada evento contém os seguintes metadados:

Nome

Descrição

displayName

O nome de domínio JMX para essas métricas.

entityName

O nome de domínio JMX para essas métricas com o tipo de entidade “domínio:” anexado.

host

O host JMX do qual a métrica está sendo coletada.

query

A consulta usada para coletar essas métricas.

bean

O feijão cujo atributo essas métricas foram coletadas.

key:<mbean_key>

Para cada chave no nome do bean, um atributo é adicionado ao conjunto de métricas denominado “key:<mbean_key> com o valor da chave do bean.

Exemplo de consulta NRQL

Aqui está um exemplo de consulta NRQL aproveitando o monitor de metadados de todo o coletor de lixo JVM coletado:

SELECT latest(CollectionTime)
FROM JVMSample
FACET `key:name`
WHERE `key:type` = 'GarbageCollector'

Atributo de dados métricos

A integração JMX coleta os seguintes atributos de dados métricos:

Nome

Descrição

HeapMemoryUsage.Used

A memória heap Java total usada.

HeapMemoryUsage.Committed

A memória heap Java total comprometida para ser usada.

HeapMemoryUsage.Init

A memória heap Java inicial alocada.

HeapMemoryUsage.Max

A memória heap Java máxima disponível.

NonHeapMemoryUsage.Used

O total de memória não heap Java usada.

NonHeapMemoryUsage.Committed

O total de memória não heap Java comprometida para ser usada.

NonHeapMemoryUsage.Init

A memória não heap Java inicial alocada.

NonHeapMemoryUsage.Max

O máximo de memória Java não heap disponível.

ThreadCount

O número de threads ativos.

CollectionCount

O número total de coletas de lixo que ocorreram.

CollectionTime

O tempo aproximado de coleta de lixo acumulado decorreu.

Dados de inventário

A integração JMX captura o parâmetro de configuração da integração JMX. Os dados estão disponíveis na página Inventário, na origem config/jmx . Para obter mais informações sobre dados de inventário, consulte Compreender os dados de integração.

Resolução de problemas

Dicas de resolução de problemas:

' '

' '

Verifique o código-fonte

Esta integração é um software de código aberto. Isso significa que você pode navegar pelo código-fonte e enviar melhorias, ou criar seu próprio fork e construí-lo.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.