Ao fazer o upload de um source map do React Native, a resposta do upload contém um ID de entidade (guid) exclusivo para esse source map. É possível usar este ID para verificar ou excluir o arquivo.
Caso não haja um registro do guid de um mapa de origem, use a API NerdGraph do New Relic ou o NRQL para pesquisar, listar e excluir os mapas de origem carregados, conforme descrito abaixo.
Importante
Consultar e excluir source maps com o NerdGraph requer uma chave de API de usuário. Inclua-a no cabeçalho Api-Key da solicitação do NerdGraph.
Encontrar o GUID de um mapa de origem
Para executar tarefas de gerenciamento, como exclusão, é necessário primeiro obter o identificador (guid) exclusivo da entidade de mapa de origem. Pesquise por ele usando a consulta entitySearch no NerdGraph.
Dica
Ao consultar source maps no NerdGraph, prefixe os atributos de metadados de mapeamento com tags., com exceção dos campos name e type.
{ actor { entitySearch( query: "type = 'REACT_NATIVE_SOURCEMAP' and tags.applicationId = '<YOUR_APPLICATION_ID>' and tags.appVersion = '12424.0392' and tags.jsBundleId = '87124712' and name = 'app.min.js.map'" ) { results { entities { name guid tags { key values } } } } }}Localize a string guid na resposta para usar em operações de gerenciamento subsequentes:
{ "data": { "actor": { "entitySearch": { "results": { "entities": [ { "guid": "<YOUR_ENTITY_GUID>", "name": "app.min.js.map" } ] } } } }}Exclua um mapa de origem
Assim que a entidade guid for obtida, use a mutação entityManagementDelete no NerdGraph para remover o mapa de origem:
mutation { entityManagementDelete(id: "<YOUR_ENTITY_GUID>") { id }}A resposta retorna o id da entidade excluída:
{ "data": { "entityManagementDelete": { "id": "<YOUR_ENTITY_GUID>" } }}Importante
As alterações não são refletidas imediatamente em todos os sistemas. Após uma exclusão ou um novo upload, pode levar alguns minutos para que os dados sejam sincronizados com entitySearch. Durante essa janela de sincronização, um ID de source map excluído ainda pode aparecer temporariamente nos resultados da pesquisa.
Listar mapas de origem
É possível auditar e visualizar os source maps carregados usando o NerdGraph ou o NRQL. Filtre os arquivos usando os seguintes atributos de mapeamento:
jsBundleIdappVersionapplicationIdnametype(ouEntityType)accountId
Diferenças de sintaxe: NerdGraph vs. NRQL
A principal diferença funcional entre consultar com NerdGraph e NRQL é o namespace de atributo:
Interface | Requisito de prefixo de atributo | Restrição de escopo |
|---|---|---|
NerdGraph | Requer o prefixo | Pesquisa global em entidades acessíveis, a menos que se inclua |
NRDB (NRQL) | Usa nomes de atributos brutos diretamente (por exemplo, | Restrito ao contexto da conta de destino. |
Listar com NerdGraph
O accountId deve ser incluído no filtro para definir o escopo da pesquisa para uma conta específica:
{ actor { entitySearch( query: "type = 'REACT_NATIVE_SOURCEMAP' and tags.applicationId = '<YOUR_APPLICATION_ID>' and tags.appVersion = '12424.0392' and tags.jsBundleId = '87124712' and name = 'app.min.js.map' and accountId = <YOUR_ACCOUNT_ID>" ) { results { entities { name guid tags { key values } } } } }}Lista com NRQL
Selecione o contexto de ID da conta específico usado durante o upload inicial do arquivo e, em seguida, execute a seguinte consulta no namespace Entity:
FROM Entity SELECT * WHERE type = 'REACT_NATIVE_SOURCEMAP' AND name = 'app.min.js.map' AND jsBundleId = '87124712' AND appVersion = '12424.0392'