Você pode coletar métricas sobre sua instância Redis com o coletor OpenTelemetry. O coletor é um componente do OpenTelemetry que coleta, processa e exporta dados de telemetria para o New Relic (ou qualquer backend de observabilidade). O receptor Redis foi projetado para recuperar dados Redis INFO de uma única instância Redis, construir métricas a partir desses dados e enviá-los ao próximo consumidor em um intervalo configurável.
Depois de passar pelas etapas de instalação, você visualizará esses dados de métrica em um painel pré-construído, criará políticas de alertas e criará consultas e gráficos personalizados.
Pré-requisitos
Para começar a coletar Redis métrica, você precisa se cadastrar em uma conta New Relic gratuita.
Depois de se inscrever, certifique-se de configurar:
- O componente receptorRedis , pois o coletor requer acesso ao Redis por meio de um endpoint. A versão mínima recomendada é v0.83.0.
- O coletor OpenTelemetry seguindo os documentos do OpenTelemetry
Instale o coletor OpenTelemetry
Instale uma distribuição OpenTelemetry
Você precisará instalar o OpenTelemetry coletor Contrib Distro. Se você estiver usando outra distribuição, confirme se a distribuição escolhida possui os seguintes componentes:
Processador de detecção de recursos
Importante
Se a sua distribuição não tiver esses componentes, o arquivo de configuração da próxima etapa não se aplicará.
Configurar o coletor OpenTelemetry
Atualize ou crie um novo arquivo chamado config.yaml
. Insira o seguinte trecho em seu novo arquivo:
receivers: redis: endpoint: "<YOUR_REDIS_HOSTNAME>:<REDIS_PORT>" metrics: # Enable redis.maxmemory optional metric redis.maxmemory: enabled: true
processors: # This is needed since redis receiver is not currently adding any means to understand to which redis server the metrics are referring to attributes/redis_metrics: include: match_type: regexp metric_names: # Notice that if with single or without quotes just one backslash is needed 'redis\..*' - "redis\\..*" actions: - action: upsert key: server.address value: "<YOUR_REDIS_HOSTNAME>" - action: upsert key: server.port value: "<REDIS_PORT>" # resource and resource-detection processors allow decorating the metrics with host attributes resource: attributes: - key: host.id from_attribute: host.name action: insert resourcedetection: detectors: ["env", "system"] resourcedetection/cloud: detectors: ["gcp", "ec2", "azure"] timeout: 2s override: false
exporters: otlphttp: endpoint: https://otlp.nr-data.net headers: api-key: <NEW_RELIC_LICENSE_KEY>
service: telemetry: logs: pipelines: metrics: receivers: [redis] processors: - resourcedetection - resourcedetection/cloud - resource - attributes/redis_metrics exporters: [otlphttp]
- Substitua
NEW_RELIC_LICENSE_KEY
no arquivo pelos seus próprios valores. Para obter mais informações, consulte a chave de licença do New Relic. - Como nenhum identificador é anexado pelo receptor OTel à métrica Redis , é necessário um processador de atributo para decorar a métrica com metadados
server.address
eserver.port
. Os atributoserver.address
eserver.port
são necessários para poder consultar e facetar dados diferenciando entre servidores Redis e criar entidade New Relic. - Além disso, pipelines separados com diferentes instâncias de
resource/redis_metrics
são necessários no caso de vários servidores Redis serem monitorados a partir de um único coletor otel para decorar cada instância com os metadados correspondentes.
Para ver outras opções de configuração, consulte:
Execute o coletor
Execute o coletor OpenTelemetry (a forma de executá-lo pode variar dependendo do método de instalação escolhido). Exemplo:
/usr/bin/otelcol-contrib --config ./config.yaml
Explore seus dados
Os dados de telemetria provenientes do receptor OpenTelemetry Redis, se devidamente decorados, geram entidade Redis . Entidades são qualquer coisa que reporte dados à New Relic e seja identificada por um ID de entidade exclusivo.
Sua entidade monitor são os drivers de recurso como entidade Explorer, workload e Lookout. Consulte este documento para obter mais informações sobre como se beneficiar dessas experiências.
Consulte seus dados com o métrica explorer
Você pode usar o explorador métrico para verificar a métrica que está sendo ingerida. Todas as métricas reportadas pelo receptor Redis começam pelo prefixo "redis."
.
As seguintes consultas de NRQL mostram exemplos para ajudá-lo a consultar a métrica que você recebeu:
Listagem do número de atualizações métricas ingeridas por nome métrico:
SELECT count(*) FROM Metric WHERE metricName LIKE 'redis.%' and instrumentation.provider='opentelemetry' facet metricName LIMIT maxConsultando uma métrica específica facetada por host:
SELECT average(redis.commands.processed) FROM Metric WHERE instrumentation.provider='opentelemetry' FACET host.name TIMESERIESListagem de dimensões disponíveis para uma determinada métrica:
SELECT keyset() FROM Metric WHERE metricName = 'redis.commands.processed'Para obter uma lista de todas as métricas suportadas, consulte a referência de métricas do receptor Redis .
Qual é o próximo?
Com o relatório de dados do Redis para o New Relic, você pode instalar o de telemetria Redis Open dashboard. Isso oferece uma experiência dashboard predefinida para que você possa rastrear e monitor sua infraestrutura Redis.
Se você estiver procurando ajuda com outros casos de uso do coletor, consulte o repositório newrelic-OpenTelemetry-examples .