Este documento contém tutoriais sobre como usar o NerdGraph para gerenciar programaticamente algumas chaves de API do New Relic: a chave de licença, a chave do browser e o . Para informações gerais sobre nossas chaves, veja chave de API.
Visão geral da descrição do recurso
Você pode usar a interface chave de API para criar e gerenciar chaves. Como alternativa, você pode usar o campo ApiAccess
do NerdGraph para criar e gerenciar programaticamente os seguintes tipos de chaves:
Chaves de usuário, necessárias para usar o NerdGraph
Chaves de ingestão de dados, incluindo:
- O : necessário para a ingestão da maioria dos dados para o New Relic, exceto para dados e dados
- Chave do browser: necessária para a ingestão de dados de monitoramento do browser
Um caso de uso comum desse recurso é a capacidade de alternar chaves para fins de segurança. Observe que você não pode usar esta funcionalidade do NerdGraph para excluir a chave de licença ou a chave do browser que foi originalmente criada com uma conta; essas chaves originais não podem ser excluídas. Você só pode criar chaves de licença adicionais e gerenciar aquelas que você criou.
Notas sobre esta funcionalidade:
Todas as mutações podem aceitar múltiplas chaves como argumentos e retornarão detalhes sobre alterações e erros bem-sucedidos. Veja os exemplos abaixo para obter detalhes.
Todas as mutações (criar, atualizar e excluir) resultarão em um
NrAuditEvent
que poderá ser consultado para fins de auditoria. Para obter detalhes, consulte Evento de auditoria.Em relação à chave de licença:
- Chave de licença são categorizadas pelo NerdGraph como ingest keys. Isso ocorre porque seu principal uso é permitir a ingestão de dados.
- Você pode criar até 1.000 chaves de cada tipo de chave de licença, o que permite a rotação de chaves.
- Você não pode gerenciar ou excluir chave de licença original; você só pode criar chave de licença adicional e gerenciar as chaves que você criou.
Antes de usar exemplos
Coisas a serem observadas antes de usar estes exemplos de consulta:
- Os exemplos abaixo usam chave de licença (também conhecida como chaves de ingest), mas você pode consultar as chaves do usuário de maneiras semelhantes, substituindo os campos específicos da chave de ingest por campos específicos da chave do usuário.
- Para entender a estrutura dos dados, recomendamos experimentar a consulta usando o GraphiQL Explorer.
- Você também pode criar, visualizar e excluir chaves de usuário usando a interface.
Criar chaves
Dica
Você pode encontrar e gerar chaves de usuário usando o NerdGraph GraphiQL Explorer, na parte superior dessa interface.
Para criar múltiplas chaves (chave de usuário ou chave de licença) em uma única mutação, para múltiplas contas e tipos de chave. Observe que a mutação pode retornar chaves criadas com sucesso, bem como quaisquer erros encontrados ao tentar criar chaves.
Exemplo de criação de uma chave:
mutation { apiAccessCreateKeys( keys: { ingest: { accountId: YOUR_ACCOUNT_ID ingestType: BROWSER name: "Browser Key" notes: "A note." } } ) { createdKeys { id key name notes type ... on ApiAccessIngestKey { ingestType } } errors { message type ... on ApiAccessIngestKeyError { accountId errorType ingestType } } }}
Os resultados irão variar dependendo dos seus dados. Use o explorador GraphiQL para experimentar mutações e consultas.
Aqui está um exemplo de uso desta consulta para criar uma chave de usuário:
Atualizar chaves
A mutação de atualização usa o ID da chave, não a sequência da chave, para identificar as chaves.
mutation { apiAccessUpdateKeys( keys: { ingest: { keyId: KEY_ID, name: "Updated name", notes: "A new note!" } } ) { updatedKeys { id key type name notes } errors { message } }}
Os resultados irão variar dependendo dos seus dados. Use o explorador GraphiQL para experimentar mutações e consultas.
Excluir chaves
A mutação de exclusão utiliza o ID da chave, não a sequência da chave, para identificar as chaves. As chaves excluídas não concederão mais acesso aos sistemas New Relic e não serão mais devolvidas por consulta à API de acesso à API GraphQL.
mutation { apiAccessDeleteKeys(keys: { ingestKeyIds: INGEST_KEY_ID }) { deletedKeys { id } errors { message } }}
Os resultados irão variar dependendo dos seus dados. Use o explorador GraphiQL para experimentar mutações e consultas.
Chave de consulta
Você pode acessar as chaves de ingestão e de usuário consultando uma única chave ou todas as chaves, com escopo para o ator. Se estiver consultando uma única chave, você deverá fornecer o ID e o tipo da chave (INGEST ou usuário). A consulta de múltiplas chaves é feita por meio de uma pesquisa de chave, que usa uma lista de tipos obrigatórios e um escopo opcional para filtrar os resultados. as chaves do usuário pertencentes a outros usuários serão ofuscadas nos resultados.
Consulta de exemplo de chave única:
query { actor { apiAccess { key(id: "INGEST_KEY_ID", keyType: INGEST) { key name type ... on ApiAccessIngestKey { ingestType } } } }}
Consulta de exemplo de pesquisa chave:
query { actor { apiAccess { keySearch(query: { types: INGEST, scope: { ingestTypes: BROWSER } }) { keys { name key type ... on ApiAccessIngestKey { ingestType } } } } }}
Os resultados irão variar dependendo dos seus dados. Use o explorador GraphiQL para experimentar mutações e consultas.