Quando seus gerenciadores de filas do IBM MQ estão sendo executados em infraestrutura tradicional, como VMs, servidores bare metal ou instâncias de EC2, você precisa de uma maneira confiável de monitorar seu desempenho sem a complexidade da orquestração de contêineres. Este guia mostra como configurar o monitoramento abrangente do IBM MQ usando o coletor da Distribution of OpenTelemetry (NRDOT) do New Relic ou o OpenTelemetry Collector Contrib.
Você configurará o coletor para coletar automaticamente as profundidades de fila, métricas de taxas de transferência e o status do canal dos seus gerenciadores de filas e, em seguida, enviará esses dados para o New Relic, onde eles aparecem como entidades organizadas com dashboards e alertas prontos para uso. Essa abordagem funciona melhor quando você tem um conjunto estável de gerenciadores de filas que não mudam com frequência.
Dica
Se, em vez disso, seus gerenciadores de filas forem executados no Kubernetes, consulte Monitorar o IBM MQ no Kubernetes.
Antes de você começar
Você precisará desses componentes antes de configurar o coletor:
- Conta do New Relic com uma chave de licençaválida
- Endpoint OTLP da New Relic para sua região
- Gerenciadores de filas do IBM MQ em execução com canais de conexão de servidor que têm permissões de consulta PCF
- Exportador do IBM MQ mq-metric-samples instalado e expondo métrica em cada gerenciador de filas. Um exportador por gerenciador de filas
- Host Linux para instalar o coletor NRDOT ou o OpenTelemetry Collector Contrib
Dica
Recomendamos ativar as estatísticas MQI em seus gerenciadores de filas usando ALTER QMGR STATMQI(ON) STATQ(ON) para obter melhores métricas de taxas de transferência.
Configurar o monitoramento do IBM MQ
Escolha a distribuição do seu coletor e siga o processo completo de configuração:
Instalar o coletor NRDOT
Baixe e instale o pacote NRDOT para a sua distribuição Linux. Substitua <NRDOT_VERSION> pela tag de versão mais recente da página nrdot-collector-releases (por exemplo, v0.12.0).
Para Debian/Ubuntu:
bash$curl -LO https://github.com/newrelic/nrdot-collector-releases/releases/download/<NRDOT_VERSION>/nrdot-collector_<NRDOT_VERSION>_linux_amd64.deb$sudo dpkg -i nrdot-collector_<NRDOT_VERSION>_linux_amd64.debPara RHEL/Rocky/Amazon Linux:
bash$curl -LO https://github.com/newrelic/nrdot-collector-releases/releases/download/<NRDOT_VERSION>/nrdot-collector_<NRDOT_VERSION>_linux_amd64.rpm$sudo dnf install ./nrdot-collector_<NRDOT_VERSION>_linux_amd64.rpm
Configurar o NRDOT Collector
Configure o NRDOT Collector para coletar métricas do IBM MQ e enviá-las para o New Relic. Esta configuração lida com três tarefas principais:
- Conecte-se aos seus gerenciadores de filas
- Limpe os dados
- Enviar os dados para o New Relic
Para criar o diretório e o arquivo de configuração do coletor com as permissões necessárias, execute:
bash$# Config directory — group-readable by nrdot only (it will hold secrets)$sudo install -d -o root -g nrdot -m 0750 /etc/nrdot-collector$$# Create the config file with correct permissions$sudo install -o root -g nrdot -m 0640 /dev/null /etc/nrdot-collector/ibmmq-config.yaml$sudo -u nrdot ${EDITOR:-vi} /etc/nrdot-collector/ibmmq-config.yamlCole a seguinte configuração no arquivo de configuração criado, substituindo os espaços reservados pelos seus valores reais:
extensions:health_check:endpoint: 127.0.0.1:13133processors:filter/ibmmq-overhead:metrics:exclude:match_type: regexpmetric_names:- "^go_.*"- "^process_.*"- "^promhttp_.*"- "^scrape_.*"filter/ibmmq-queues:metrics:datapoint:- 'attributes["queue"] != nil and IsMatch(attributes["queue"], "^SYSTEM\\.(ADMIN\\.|MQSC\\.|DEFAULT\\.|AUTH\\.|CHANNEL\\.|CHLAUTH\\.|CICS\\.|SYNCPOINT\\.|INTERNAL\\.|PENDING\\.|PROTECTION\\.|BROKER\\.|AMQP\\.|DOTNET\\.|REST\\.|RETAINED\\.|SELECTION\\.|DURABLE\\.|HIERARCHY\\.|DDELAY\\.)")'- 'attributes["queue"] != nil and IsMatch(attributes["queue"], "^SYSTEM\\.CLUSTER\\.(COMMAND|HISTORY)\\.QUEUE$")'- 'attributes["queue"] != nil and IsMatch(attributes["queue"], "^AMQ\\.")'resourcedetection:detectors: [env, ec2, system]system:resource_attributes:host.name:enabled: truehost.id:enabled: truetransform/ibmmq-cleanup:metric_statements:- context: resourcestatements:- delete_key(attributes, "server.address")- delete_key(attributes, "server.port")- delete_key(attributes, "url.scheme")- context: datapointstatements:# Rename the injected identity labels to their OTel dotted form — the# names New Relic's IBM MQ entity synthesis keys on. qmgr / queue stay raw.- set(attributes["target.name"], attributes["targetName"]) where attributes["targetName"] != nil- delete_key(attributes, "targetName")- set(attributes["cluster.name"], attributes["clusterName"]) where attributes["clusterName"] != nil- delete_key(attributes, "clusterName")- delete_key(attributes, "instance")- delete_key(attributes, "job")memory_limiter/ibmmq:check_interval: 1slimit_mib: 512spike_limit_mib: 256cumulativetodelta/ibmmq: {}batch/ibmmq:send_batch_size: 1000timeout: 200msexporters:otlphttp/ibmmq:endpoint: ${env:NEW_RELIC_OTLP_ENDPOINT}headers:api-key: ${env:NEW_RELIC_LICENSE_KEY}receivers:prometheus/ibmmq-qm1:config:scrape_configs:- job_name: 'ibmmq-qm1'scrape_interval: ${env:IBMMQ_SCRAPE_INTERVAL:-60s}scrape_timeout: 15sstatic_configs:- targets:- "${env:IBMMQ_QM1_ENDPOINT:-localhost:9157}"labels:targetName: "${env:TARGET_NAME}"clusterName: "${env:IBMMQ_CLUSTER_NAME:-}"service:pipelines:metrics/ibmmq-qm1:receivers: [prometheus/ibmmq-qm1]processors:- filter/ibmmq-overhead- filter/ibmmq-queues- resourcedetection- transform/ibmmq-cleanup- memory_limiter/ibmmq- cumulativetodelta/ibmmq- batch/ibmmqexporters: [otlphttp/ibmmq]extensions: [health_check]Importante
Não reordene nem remova processadores. A ordem da cadeia de processadores é fundamental para a síntese de entidade. O processador
transform/ibmmq-cleanupdeve ser executado após o processadorresourcedetection. Inverter essa ordem faz com que as métricas do IBM MQ se associem à própria entidade do coletor em vez de entidadesIBMMQ_MANAGER, o que impede que os dados sejam exibidos nos dashboards.O que esta configuração faz
Esta configuração cria um pipeline que coleta métricas de gerenciadores de filas do IBM MQ e roteia dados estruturados para o New Relic. Cada componente executa uma função específica:
Componente Descrição health_checkFornece um endpoint de integridade em 127.0.0.1:13133que retorna{"status":"Server available"}para verificar se o coletor está em execução e para solucionar problemas de inicialização.prometheus/ibmmq-qm1Conecta-se ao exportador de cada gerenciador de filas a cada 60 segundos para coletar métricas. Cada gerenciador de filas usa um receptor independente; se um gerenciador de filas falhar, os receptores restantes continuarão operando normalmente. Para adicionar mais gerenciadores de filas, consulte a seção Adicionar outro gerenciador de filas. filter/ibmmq-overheadRemove as métricas próprias internas do exportador (como go_*eprocess_*) que não contêm um sinal do IBM MQ. Isso otimiza os custos de ingestão de dados ao filtrar a telemetria desnecessária.filter/ibmmq-queuesExclui as filas internas do sistema IBM MQ ( SYSTEM.*eAMQ.*) para que apenas as filas do aplicativo se tornem entidadesIBMMQ_QUEUE. Isso reduz a contagem total de entidades e concentra o monitoramento em ativos críticos.transform/ibmmq-cleanupEste é um componente crítico que mapeia métricas para as entidades apropriadas do IBM MQ no New Relic. Sem esse componente, os dados aparecem como métricas genéricas do coletor em vez de sintetizar as entidades IBMMQ_MANAGEReIBMMQ_QUEUEcom dashboards e alertas associados.memory_limiter/ibmmqLimita o uso de memória a 512MB (com tolerância a picos de 256MB) para evitar que o coletor exceda os limites de recursos do sistema. batch/ibmmqAgrupa as métricas antes da transmissão para reduzir a sobrecarga da rede, agrupando até 1.000 pontos de dados por solicitação. otlphttp/ibmmqExporta as métricas processadas para o New Relic usando a chave de licença configurada para autenticação e o endpoint regional designado. Cada gerenciador de filas usa um pipeline independente para que um problema com uma instância não afete as outras. A ordem dos processadores é crítica, não reordene ou remova processadores, ou as métricas falharão ao mapear corretamente para as entidades do IBM MQ.
Definir variáveis de ambiente do NRDOT
A configuração do seu coletor usa variáveis de ambiente para valores específicos da implantação, como a chave de licença do New Relic e os endpoints do gerenciador de filas. Essa abordagem mantém os segredos separados dos arquivos de configuração e facilita o ajuste das configurações sem editar o YAML.
Crie um arquivo de ambiente para o coletor NRDOT:
bash$# Owner nrdot, mode 0600 — this file holds the license key$sudo install -o nrdot -g nrdot -m 0600 /dev/null /etc/nrdot-collector/ibmmq-env$sudo -u nrdot ${EDITOR:-vi} /etc/nrdot-collector/ibmmq-envAdicione seu valor como
KEY=VALUElinhas ao arquivo, substituindo os espaços reservados por seus valores reais:# /etc/nrdot-collector/ibmmq-env# --- Required ---# New Relic ingest license key (40 chars, suffix NRAL)NEW_RELIC_LICENSE_KEY=<YOUR-LICENSE-KEY># Stable host identity — first segment of every IBMMQ entity GUIDTARGET_NAME=<YOUR-HOSTNAME># mq-metric-samples exporter endpoints, one per queue managerIBMMQ_QM1_ENDPOINT=localhost:9157# --- Optional (shown with defaults) ---# OTLP endpoint: US prod default shown; For more information, refer to [New Relic OTLP endpoint](https://docs.newrelic.com/docs/opentelemetry/best-practices/opentelemetry-otlp).NEW_RELIC_OTLP_ENDPOINT=https://otlp.nr-data.net:4318# Optional tag grouping for the IBMMQ_MANAGER entity (does not affect the entity GUID).# Leave unset to omit cluster.name (nullable); set it to group QMs under one cluster tag.# IBMMQ_CLUSTER_NAME=prod-mq-cluster# Scrape interval — must be >= the mq-metric-samples pollInterval (default 60s)IBMMQ_SCRAPE_INTERVAL=60sCuidado
Não altere o valor de
TARGET_NAMEapós a implantação inicial. Esse valor forma o primeiro segmento de cada GUID de entidadeIBMMQ_MANAGEReIBMMQ_QUEUE(target.name:qmgr). Alterar esse valor após a implantação cria novas entidades e deixa as existentes órfãs, o que quebra os dashboards e alertas associados. Selecione uma string estável durante a configuração inicial, como o QMID do gerenciador de filas. Para obter mais informações, consulte O Modelo de Entidade do IBM MQ.Defina as seguintes variáveis de ambiente no seu shell para verificar a configuração antes de iniciar o coletor:
Variável Obrigatório Descrição NEW_RELIC_LICENSE_KEYSim Sua chave de licença de ingestão da New Relic. TARGET_NAMESim Um identificador para o seu host, como nome do host ou ID do gerenciador de filas. Não altere isso após a implantação inicial, pois se torna parte dos IDs da sua entidade. IBMMQ_QM1_ENDPOINTSim Localização do exportador do seu primeiro gerenciador de filas. Por exemplo, localhost:9157se estiver em execução no mesmo host.NEW_RELIC_OTLP_ENDPOINTNão Endpoint OTLP da New Relic para sua região. Para mais informações, consulte o endpoint OTLP da New Relic. IBMMQ_CLUSTER_NAMENão Nome do Cluster para agrupar seus gerenciadores de filas no New Relic. IBMMQ_SCRAPE_INTERVALNão Intervalo de coleta para exportar métricas para o New Relic. O intervalo de coleta padrão é de 60 segundos.
Configure o serviço systemd do NRDOT
Crie um arquivo drop-in
systemdpara carregar os arquivos de configuração e ambiente.bash$sudo mkdir -p /etc/systemd/system/nrdot-collector.service.d$sudo tee /etc/systemd/system/nrdot-collector.service.d/ibmmq.conf > /dev/null << 'EOF'$[Service]$EnvironmentFile=/etc/nrdot-collector/ibmmq-env$ExecStart=$ExecStart=/usr/bin/nrdot-collector --config /etc/nrdot-collector/ibmmq-config.yaml$MemoryMax=1G$LimitNOFILE=65536$NoNewPrivileges=true$ProtectSystem=strict$ProtectHome=true$EOFA linha
ExecStart=vazia limpa o comando padrão, e a segunda linha define o comando personalizado. Isso evita que o coletor inicie duas vezes. As outras configurações carregam o arquivo de ambiente, limitam o uso de memória e melhoram a segurança.Após criar o drop-in, verifique se o systemd pode analisá-lo sem erros:
bash$sudo systemd-analyze verify /etc/systemd/system/nrdot-collector.service$# No output means no syntax errors
Iniciar o coletor NRDOT e verificar
Inicie o coletor e ative-o para ser executado automaticamente na inicialização:
bash$sudo systemctl daemon-reload$sudo systemctl enable --now nrdot-collector.service$sudo systemctl status nrdot-collector.service --no-pagerO comando
statusdeve mostrarActive: active (running). Se você virActive: failed, verifique os logs comjournalctl -u nrdot-collector.service -n 200 --no-pager.Verifique se o coletor está saudável:
bash$curl -sS http://127.0.0.1:13133$# Expected: {"status":"Server available", ...}Confirme se sua métrica do IBM MQ está fluindo para o New Relic. Aguarde 60 segundos após o início do coletor e, em seguida, verifique seus dados usando a consulta de verificação em Encontre e consulte seus dados.
Visualize seus dados no New Relic
Assim que seu coletor estiver em execução e as métricas estiverem fluindo, você verá seus gerenciadores de filas como entidades IBMMQ_MANAGER no New Relic, com suas filas como entidades IBMMQ_QUEUE filhas. Para obter detalhes sobre como encontrar seus dados, executar consultas e configurar dashboards e alertas, consulte Encontrar e consultar seus dados.
Instalar o OpenTelemetry Collector Contrib
Baixe a distribuição OpenTelemetry Collector Contrib (otelcol-contrib) para sua plataforma na página OpenTelemetry Collector releases. A compilação Contrib inclui o receptor prometheus e os processadores filter, transform e cumulativetodelta dos quais este guia depende.
Dica
Execute otelcol-contrib --version para confirmar se o binário está instalado e acessível.
Configurar o OpenTelemetry Collector
Configure o OpenTelemetry Collector para coletar métricas do IBM MQ e enviá-las para o New Relic. Esta configuração lida com três tarefas principais:
- Conecte-se aos seus gerenciadores de filas
- Limpe os dados
- Enviar os dados para o New Relic
Para criar o diretório e o arquivo de configuração do coletor com as permissões necessárias, execute:
bash$# Config directory for OpenTelemetry Collector$sudo mkdir -p /etc/otelcol-contrib$sudo chmod 755 /etc/otelcol-contrib$$# Create the config file with correct permissions$sudo touch /etc/otelcol-contrib/ibmmq-config.yaml$sudo chmod 644 /etc/otelcol-contrib/ibmmq-config.yaml$sudo ${EDITOR:-vi} /etc/otelcol-contrib/ibmmq-config.yamlCole a seguinte configuração no arquivo de configuração criado, substituindo os espaços reservados pelos seus valores reais:
extensions:health_check:endpoint: 127.0.0.1:13133processors:filter/ibmmq-overhead:metrics:exclude:match_type: regexpmetric_names:- "^go_.*"- "^process_.*"- "^promhttp_.*"- "^scrape_.*"filter/ibmmq-queues:metrics:datapoint:- 'attributes["queue"] != nil and IsMatch(attributes["queue"], "^SYSTEM\\.(ADMIN\\.|MQSC\\.|DEFAULT\\.|AUTH\\.|CHANNEL\\.|CHLAUTH\\.|CICS\\.|SYNCPOINT\\.|INTERNAL\\.|PENDING\\.|PROTECTION\\.|BROKER\\.|AMQP\\.|DOTNET\\.|REST\\.|RETAINED\\.|SELECTION\\.|DURABLE\\.|HIERARCHY\\.|DDELAY\\.)")'- 'attributes["queue"] != nil and IsMatch(attributes["queue"], "^SYSTEM\\.CLUSTER\\.(COMMAND|HISTORY)\\.QUEUE$")'- 'attributes["queue"] != nil and IsMatch(attributes["queue"], "^AMQ\\.")'resourcedetection:detectors: [env, ec2, gcp, azure, system]system:resource_attributes:host.name:enabled: truehost.id:enabled: truetransform/ibmmq-cleanup:metric_statements:- context: resourcestatements:- delete_key(attributes, "server.address")- delete_key(attributes, "server.port")- delete_key(attributes, "url.scheme")- context: datapointstatements:# Rename the injected identity labels to their OTel dotted form — the# names New Relic's IBM MQ entity synthesis keys on. qmgr / queue stay raw.- set(attributes["target.name"], attributes["targetName"]) where attributes["targetName"] != nil- delete_key(attributes, "targetName")- set(attributes["cluster.name"], attributes["clusterName"]) where attributes["clusterName"] != nil- delete_key(attributes, "clusterName")- delete_key(attributes, "instance")- delete_key(attributes, "job")memory_limiter/ibmmq:check_interval: 1slimit_mib: 512spike_limit_mib: 256cumulativetodelta/ibmmq: {}batch/ibmmq:send_batch_size: 1000timeout: 200msexporters:otlphttp/ibmmq:endpoint: ${env:NEW_RELIC_OTLP_ENDPOINT}headers:api-key: ${env:NEW_RELIC_LICENSE_KEY}receivers:prometheus/ibmmq-qm1:config:scrape_configs:- job_name: 'ibmmq-qm1'scrape_interval: ${env:IBMMQ_SCRAPE_INTERVAL:-60s}scrape_timeout: 15sstatic_configs:- targets:- "${env:IBMMQ_QM1_ENDPOINT:-localhost:9157}"labels:targetName: "${env:TARGET_NAME}"clusterName: "${env:IBMMQ_CLUSTER_NAME:-}"service:pipelines:metrics/ibmmq-qm1:receivers: [prometheus/ibmmq-qm1]processors:- filter/ibmmq-overhead- filter/ibmmq-queues- resourcedetection- transform/ibmmq-cleanup- memory_limiter/ibmmq- cumulativetodelta/ibmmq- batch/ibmmqexporters: [otlphttp/ibmmq]extensions: [health_check]Importante
Não reordene nem remova processadores. A ordem da cadeia de processadores é fundamental para a síntese de entidade. O processador
transform/ibmmq-cleanupdeve ser executado após o processadorresourcedetection. Inverter essa ordem faz com que as métricas do IBM MQ se associem à própria entidade do coletor em vez de entidadesIBMMQ_MANAGER, o que impede que os dados sejam exibidos nos dashboards.O que esta configuração faz
Esta configuração cria um pipeline que coleta métricas de gerenciadores de filas do IBM MQ e roteia dados estruturados para o New Relic. Cada componente executa uma função específica:
Componente Descrição health_checkFornece um endpoint de integridade em 127.0.0.1:13133que retorna{"status":"Server available"}para verificar se o coletor está em execução e para solucionar problemas de inicialização.prometheus/ibmmq-qm1Conecta-se ao exportador de cada gerenciador de filas a cada 60 segundos para coletar métricas. Cada gerenciador de filas usa um receptor independente; se um gerenciador de filas falhar, os receptores restantes continuarão operando normalmente. Para adicionar mais gerenciadores de filas, consulte a seção Adicionar outro gerenciador de filas. filter/ibmmq-overheadRemove as métricas próprias internas do exportador (como go_*eprocess_*) que não contêm um sinal do IBM MQ. Isso otimiza os custos de ingestão de dados ao filtrar a telemetria desnecessária.filter/ibmmq-queuesExclui as filas internas do sistema IBM MQ ( SYSTEM.*eAMQ.*) para que apenas as filas do aplicativo se tornem entidadesIBMMQ_QUEUE. Isso reduz a contagem total de entidades e concentra o monitoramento em ativos críticos.transform/ibmmq-cleanupEste é um componente crítico que mapeia métricas para as entidades apropriadas do IBM MQ no New Relic. Sem esse componente, os dados aparecem como métricas genéricas do coletor em vez de sintetizar as entidades IBMMQ_MANAGEReIBMMQ_QUEUEcom dashboards e alertas associados.memory_limiter/ibmmqLimita o uso de memória a 512MB (com tolerância a picos de 256MB) para evitar que o coletor exceda os limites de recursos do sistema. batch/ibmmqAgrupa as métricas antes da transmissão para reduzir a sobrecarga da rede, agrupando até 1.000 pontos de dados por solicitação. otlphttp/ibmmqExporta as métricas processadas para o New Relic usando a chave de licença configurada para autenticação e o endpoint regional designado. Cada gerenciador de filas usa um pipeline independente para que um problema com uma instância não afete as outras. A ordem dos processadores é crítica, não reordene ou remova processadores, ou as métricas falharão ao mapear corretamente para as entidades do IBM MQ.
Definir variáveis de ambiente do OpenTelemetry
A configuração do seu coletor usa variáveis de ambiente para valores específicos da implantação, como a chave de licença do New Relic e os endpoints do gerenciador de filas. Essa abordagem mantém os segredos separados dos arquivos de configuração e facilita o ajuste das configurações sem editar o YAML.
Crie um arquivo de ambiente para o OpenTelemetry Collector:
bash$# Owner root, mode 0600 — this file holds the license key$sudo touch /etc/otelcol-contrib/ibmmq-env$sudo chmod 600 /etc/otelcol-contrib/ibmmq-env$sudo ${EDITOR:-vi} /etc/otelcol-contrib/ibmmq-envAdicione seu valor como
KEY=VALUElinhas ao arquivo, substituindo os espaços reservados por seus valores reais:# /etc/otelcol-contrib/ibmmq-env# --- Required ---# New Relic ingest license key (40 chars, suffix NRAL)NEW_RELIC_LICENSE_KEY=<YOUR-LICENSE-KEY># Stable host identity — first segment of every IBMMQ entity GUIDTARGET_NAME=<YOUR-HOSTNAME># mq-metric-samples exporter endpoints, one per queue managerIBMMQ_QM1_ENDPOINT=localhost:9157# --- Optional (shown with defaults) ---# OTLP endpoint: US prod default shown; For more information, refer to [New Relic OTLP endpoint](https://docs.newrelic.com/docs/opentelemetry/best-practices/opentelemetry-otlp).NEW_RELIC_OTLP_ENDPOINT=https://otlp.nr-data.net:4318# Optional tag grouping for the IBMMQ_MANAGER entity (does not affect the entity GUID).# Leave unset to omit cluster.name (nullable); set it to group QMs under one cluster tag.# IBMMQ_CLUSTER_NAME=prod-mq-cluster# Scrape interval — must be >= the mq-metric-samples pollInterval (default 60s)IBMMQ_SCRAPE_INTERVAL=60sCuidado
Não altere o valor de
TARGET_NAMEapós a implantação inicial. Esse valor forma o primeiro segmento de cada GUID de entidadeIBMMQ_MANAGEReIBMMQ_QUEUE(target.name:qmgr). Alterar esse valor após a implantação cria novas entidades e deixa as existentes órfãs, o que quebra os dashboards e alertas associados. Selecione uma string estável durante a configuração inicial, como o QMID do gerenciador de filas. Para obter mais informações, consulte O Modelo de Entidade do IBM MQ.Defina as seguintes variáveis de ambiente no seu shell para verificar a configuração antes de iniciar o coletor:
Variável Obrigatório Descrição NEW_RELIC_LICENSE_KEYSim Sua chave de licença de ingestão da New Relic. TARGET_NAMESim Um identificador para o seu host, como nome do host ou ID do gerenciador de filas. Não altere isso após a implantação inicial, pois se torna parte dos IDs da sua entidade. IBMMQ_QM1_ENDPOINTSim Localização do exportador do seu primeiro gerenciador de filas. Por exemplo, localhost:9157se estiver em execução no mesmo host.NEW_RELIC_OTLP_ENDPOINTNão Endpoint OTLP da New Relic para sua região. Para mais informações, consulte o endpoint OTLP da New Relic. IBMMQ_CLUSTER_NAMENão Nome do Cluster para agrupar seus gerenciadores de filas no New Relic. IBMMQ_SCRAPE_INTERVALNão Intervalo de coleta para exportar métricas para o New Relic. O intervalo de coleta padrão é de 60 segundos.
Configure o serviço systemd do OpenTelemetry
Crie um arquivo de serviço do systemd para o OpenTelemetry Collector:
sudo tee /etc/systemd/system/otelcol-contrib.service > /dev/null << 'EOF'[Unit]Description=OpenTelemetry Collector ContribAfter=network.target[Service]Type=simpleUser=nobodyGroup=nogroupExecStart=/usr/bin/otelcol-contrib --config=/etc/otelcol-contrib/ibmmq-config.yamlEnvironmentFile=/etc/otelcol-contrib/ibmmq-envRestart=on-failureRestartSec=5StandardOutput=journalStandardError=journalSyslogIdentifier=otelcol-contribKillMode=mixedKillSignal=SIGTERMMemoryMax=1GLimitNOFILE=65536NoNewPrivileges=trueProtectSystem=strictProtectHome=trueReadWritePaths=/tmp[Install]WantedBy=multi-user.targetEOFO serviço é executado como
nobody:nogrouppor segurança, carrega o arquivo de ambiente e inclui limites de memória e fortalecimento de segurança.Após criar o serviço, verifique se o systemd consegue analisá-lo sem erros:
bash$sudo systemctl daemon-reload$sudo systemctl status otelcol-contrib.service$# No output means no syntax errors
Inicie o coletor do OpenTelemetry e verifique
Inicie o coletor e ative-o para ser executado automaticamente na inicialização:
bash$sudo systemctl enable --now otelcol-contrib.service$sudo systemctl status otelcol-contrib.service --no-pagerO comando
statusdeve mostrarActive: active (running). Se você virActive: failed, verifique os logs comjournalctl -u otelcol-contrib.service -n 200 --no-pager.Verifique se o coletor está saudável:
bash$curl -sS http://127.0.0.1:13133$# Expected: {"status":"Server available", ...}Confirme se sua métrica do IBM MQ está fluindo para o New Relic. Aguarde 60 segundos após o início do coletor e, em seguida, verifique seus dados usando a consulta de verificação em Encontre e consulte seus dados.
Visualize seus dados no New Relic
Assim que seu coletor estiver em execução e as métricas estiverem fluindo, você verá seus gerenciadores de filas como entidades IBMMQ_MANAGER no New Relic, com suas filas como entidades IBMMQ_QUEUE filhas. Para obter detalhes sobre como encontrar seus dados, executar consultas e configurar dashboards e alertas, consulte Encontrar e consultar seus dados.
Configuração avançada
Use essas configurações para personalizar sua configuração para diferentes cenários.