Use tag para ajudar a organizar e encontrar seus dados
Tag são pares de valor principal, por exemplo team: operations, adicionados à entidade do seu monitor ou ao seu painel ou carga de trabalho. Disponibilizamos alguns atributos importantes como tag: isso inclui metadados do aplicativo, como o nome do aplicativo e o idioma, e metadados do host, como o nome do host e a região do provedor de nuvem. Você também pode adicionar sua própria tag personalizada.
Você pode usar a tag na interface para filtrar a entidade relevante. Aqui está um exemplo:
Aqui você pode ver uma tag accountId sendo usada para filtrar a carga de trabalho para uma conta específica.
Os benefícios da etiqueta
Tag ajuda você:
Organize dados provenientes de um grande número de fontes e/ou de um grande número de contas New Relic.
Identifique equipes, funções, ambientes ou regiões para saber quem é responsável por quê. Veja alguns exemplos.
Tag são úteis para organizar seus dados em alto nível. Se você quiser adicionar detalhes mais refinados, como capturar nomes de usuários ou outros valores de cardinalidade alta, recomendamos usar atributo personalizado ou evento personalizado.
Tag informada automaticamente
Tag são aplicadas automaticamente à entidade do seu monitor em alguns casos, a partir das seguintes fontes:
Metadados da conta New Relic
Configuração do agente
Hospedeiro/ambiente
Atributo do recurso OpenTelemetry
As tags dessas fontes podem ser removidas ou alteradas somente modificando a origem da tag e não por meio da interface ou da API.
Aplicamos automaticamente determinadas tags a entidades que incluem informações da conta. Essas tags incluem:
account
accountId
O agente New Relic pode ser configurado para aplicar tag à entidade criada a partir de seus dados. As opções de configuração são específicas do agente, mas geralmente usam a chave labels . Alguns exemplos:
As tags aplicadas na configuração do agente podem resultar em vários valores para uma determinada chave tag em uma determinada entidade, porque cada instância implantada do agente pode ser configurada para enviar um valor diferente.
O agente New Relic aplica automaticamente determinada tag à entidade de serviço com base no ambiente. Estes incluem (mas não estão limitados a):
Para entidade de serviço/aplicação
language: (por exemplo, java ou python)
Para entidade anfitriã
awsRegion, quando aplicável
Se você estiver usando uma de nossas integrações de provedores de nuvem (AWS, Azure ou Google Cloud Platform), recomendamos instalar o agente de infraestrutura em seus hosts: isso adicionará a tag de ambiente de nuvem à entidade de host do monitor no New Relic.
Gerenciar etiqueta
Alguns atributos importantes estão disponíveis por padrão para serem usados como tag. Por exemplo, o nome da conta, o ID da conta e alguns metadados básicos de host e servidor. Você não pode remover essas tags disponíveis por padrão.
Quando você adiciona uma tag por meio da interface ou API, isso ocorre no nível da entidade. Isso significa que, por exemplo, se você tiver vários agentes de monitoramento APM em uma única entidade e aplicar uma tag via interface, essa tag estará disponível para todos os dados provenientes daquela entidade.
Para alterar o nome de uma tag, você precisará excluir a tag atual e criar uma nova tag com o nome desejado.
Adicionar etiqueta
Vá para one.newrelic.com e selecione uma entidade de monitoramento, como um aplicativo de monitoramento ou host.
Perto do nome da entidade, na parte superior da página, clique no botão tags .
No campo Add a new tag... do widget de tag, adicione uma tag com este formato: accountId: 123456789.
Para o agente APM, caso queira utilizar essas tags na consulta NRQL, reinicie seu serviço.
e selecione uma entidade de monitoramento, como um aplicativo de monitoramento ou host.
Perto do nome da entidade, na parte superior da página, clique no botão
tags
.
Clique no
ao lado da tag que você deseja remover.
Para o agente APM, caso queira utilizar essas tags na consulta NRQL, reinicie seu serviço.
Navegue até uma condição.
Perto do nome da condição, na parte superior do formulário, clique em Manage tags.
No menu que aparece, adicione ou exclua uma tag.
Você também pode adicionar tag a uma condição do alerta como uma entidade por meio da API NerdGraph (utilize o GUID da entidade da condição na tela 'gerenciar tag').
para ver uma dropdown de atributos e tags disponíveis ou insira uma tag pela qual deseja filtrar, como accountId: 123456789.
Práticas medidas
Siga estas práticas recomendadas para aproveitar ao máximo sua tag.
A interface tem limites quanto ao número total de tags que pode exibir por entidade:
Limite de 100 para tags informadas por padrão ou adicionadas por meio de configuração de agente/integração.
Limite de 100 para tags personalizadas adicionadas via interface ou API.
A seguir está o comprimento máximo de caracteres para tag:
Chave: 128 caracteres
Valor: 256 caracteres
Caracteres permitidos:
Os caracteres devem ser UTF-8.
Ao usar o NerdGraph para adicionar tags, um traço - em uma chave tag é interpretado como um símbolo de menos. Se a chave da sua tag tiver um travessão, use crases ao redor dela, como `key-name`.
Algumas dicas sobre como manter a tag simples:
Comece adicionando apenas tags que você sabe que usará com certeza. Etiquetas não utilizadas criam ruído e podem causar confusão.
Tente usar tags curtas. Tags mais curtas são mais fáceis de analisar e também a interface pode, às vezes, truncar tags mais longas. (Veja limites de caracteres.)
Quando possível, use chaves e valores legíveis por humanos (por exemplo, region: EMEA é melhor que Param8323 : 1229072).
Evite incluir vários valores como regions: EMEA | US | LATAM em uma única tag. Recomendamos usar três tags diferentes para isso, como region: emea, region: us e region: latam. Se quiser combinar várias tags, você pode fazer isso usando as opções avançadas na interface do filtro.
Uma advertência para incidente de alerta: eles suportam apenas uma instância de nome de chave. Se você usar vários nomes de chave, um será selecionado aleatoriamente para ser adicionado a esse incidente.
Tente ser consistente com a linguagem tag em suas equipes e entidades.
Seja consistente com a nomenclatura. Por exemplo, evite usar region: emea e reg: emea.
Seja consistente com o formato. Por exemplo, evite usar camelCase e kebab-case.
Embora a pesquisa tag não faça distinção entre maiúsculas e minúsculas na interface e na API, tente ser consistente com letras maiúsculas. Por exemplo, evite usar env: staging e env: Staging.
Tag ajudam a melhorar a observabilidade e a alocação de custos. Por esse motivo, a responsabilidade pela implementação tag é frequentemente atribuída a uma equipe de observabilidade, SREs, um grupo de arquitetos ou uma força-tarefa entre equipes.
Recomendamos que os responsáveis pela implementação das tags se encontrem e criem uma política interna para descrever como as tags são definidas e quais convenções devem ser utilizadas. Então:
Mantenha este manual de referência atualizado.
Automatize a definição da tag ao implantar o agente New Relic, no provedor de nuvem ou por meio de ferramentas de automação New Relic, como a API ou o provedor New Relic Terraform.
Crie relatórios recorrentes que identifiquem entidades que não estejam em conformidade com seus padrões de tags.
Exemplos tag
Aqui estão alguns exemplos de maneiras comuns de usar tags para organizar dados.
A criação de tags para nomes de equipes pode ser útil para entender qual equipe, grupo, departamento ou região foi responsável por uma mudança que levou a um problema de desempenho.
### Team tags
team: backend
team: frontend
team: db
### Role tags
roles: architecture
roles: devops
roles: pm
### Region tags
region: emea
region: america
region: asia
Você pode criar entidade para o ambiente ao qual pertence. Por exemplo:
env: production
env: qa
env: development
env: staging
Você pode criar tags relacionadas aos níveis de criticidade, o que permite rastrear mais facilmente os problemas mais críticos. Por exemplo:
layer: level1
layer: level2
layer: level3
Consulta, painel e alerta personalizados
Recurso diferente manipula tag de maneira diferente. Aqui estão alguns detalhes sobre como você pode usar NRQL para consultar dados tag ou criar alerta de condição NRQL.
Na interface do New Relic: Na página de infraestrutura da entidade, crie uma tag e atribua um valor a ela. Para consultar essas tags, você precisa adicionar o prefixo tags. ao nome da tag ao consultá-la no NRQL.
Se você deseja desativar a propagação tag de infraestrutura, o que significa que não poderá consultá-los com NRQL, veja como desativá-lo com Nerdgraph.
Exemplos de consulta
Dado um serviço distribuído em nove shards, cada shard atribuído como environment, podemos traçar as taxas de transação de transferência em todos os shards usando uma consulta curinga como:
FROM Metric WHERE appName LIKE'MyApp (%'AND transactionType ='Other'
FACET tags.Environment TIMESERIES
Para ver o número de transações por serviço de uma equipe específica, podemos usar uma consulta como:
FROMTransactionSELECTcount(*)
WHERE tags.Team ='team-a'
FACET tags.Project TIMESERIES
Você pode usar uma consulta para a taxa de erros dos seus serviços para definir um alerta sem precisar criar uma regra para cada serviço. Aqui estão as taxas de erros para todos os serviços de uma equipe chamada team-b. E este alerta monitor automaticamente quaisquer novos nomes de aplicativos adicionados com a tag de equipe.
FROM Metric SELECTcount(apm.service.error.count)/count(apm.service.transaction.duration)
WHERE tags.Team ='team-b' FACET appName
Relacionado a isso, você pode criar uma regra geral para um serviço específico implantar em vários ambientes, de forma que tenhamos um alarme para um único serviço monitorar cada ambiente individualmente:
From Metric SELECTcount(apm.service.error.count)/count(apm.service.transaction.duration)
WHERE tags.Project ='MyProject' FACET tags.Environment
Para encontrar equipes internas que possuem entidades nomeadas, por exemplo, SensitiveEntity, execute o seguinte:
FROM SystemSample SELECT internalOwningTeam WHERE entityName ='SensitiveEntity'
Digamos que você queira fazer alguns testes de carga em suas diferentes entidades de infraestrutura com CPUs. Você pode aplicar um tratamento à entidade de um grupo chamado A, aplicar um tratamento diferente à entidade de um grupo chamado B e manter um grupo de entidade sem tratamentos, chamado control group.
Você pode criar uma tag chamada experimentGroup na interface do New Relic, mapeada para o grupo experimental ao qual cada entidade pertence. Como são tags criadas na interface do New Relic, é necessário adicionar o prefixo tags. ao nome tag , diferentemente do atributo personalizado criado no arquivo de configuração newrelic-infra.yml.
Aqui está a consulta NRQL para selecionar cpuPercent, dividida pelos diferentes grupos experimentais usando uma cláusula FACET CASES (...) :
FROM SystemSample SELECT cpuPercent FACET CASES (WHERE tags.experimentGroup ='control'AS'control group',WHERE tags.experimentGroup ='A'AS'given treatment A',WHERE tags.experimentGroup ='B'AS'given treatment B') SINCE 1DAY AGO
Para desativar a propagação tag para tags de infraestrutura, execute o seguinte no NerdGraph:
mutation{
dataManagementUpdateFeatureSettings(
accountId:YOUR_ACCOUNT_ID
setting:{
enabled:false
featureSetting:{key:"infra_tag_propagation"}
locked:false
}
){
enabled
key
locked
name
}
}
Essa chamada deve retornar a seguinte resposta:
{
"data":{
"dataManagementUpdateFeatureSettings":{
"enabled":false,
"key":"infra_tag_propagation",
"locked":false,
"name":"Infra tag propagation"
}
}
}
Consulta e alerta sobre atributo
Alguns atributos importantes são usados como tag. Você pode consultar todos os atributos e criar gráficos customizados usando NRQL, e criar NRQL condição do alerta.