Avvio rapido: Eseguire la prima query di Resource Graph con JavaScript

Questa guida di avvio rapido illustra il processo di aggiunta delle librerie all'installazione di JavaScript. Il primo passaggio per usare Azure Resource Graph prevede l'inizializzazione di un'applicazione JavaScript con le librerie necessarie.

Al termine del processo, le librerie risulteranno aggiunte all'installazione di JavaScript e sarà possibile eseguire la prima query di Resource Graph.

Prerequisiti

  • Sottoscrizione di Azure: Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.

  • Node.js: è richiesto Node.js versione 12 o successiva.

Inizializzazione dell'applicazione

Per consentire a JavaScript di eseguire query su Azure Resource Graph, è necessario configurare l'ambiente. Questa configurazione funziona ovunque sia possibile usare JavaScript, incluso Bash in Windows 10.

  1. Inizializzare un nuovo progetto Node.js usando il comando seguente.

    npm init -y
    
  2. Aggiungere un riferimento al modulo yargs.

    npm install yargs
    
  3. Aggiungere un riferimento al modulo Azure Resource Graph.

    npm install @azure/arm-resourcegraph
    
  4. Aggiungere un riferimento alla libreria di autenticazione di Azure.

    npm install @azure/identity
    

    Nota

    Verificare che in package.json@azure/arm-resourcegraph sia versione 4.2.1 o successiva ed @azure/identity è la versione 2.0.4 o successiva.

Eseguire una query su Resource Graph

  1. Creare un nuovo file denominato index.js e immettere il codice seguente.

    const argv = require("yargs").argv;
    const { DefaultAzureCredential } = require("@azure/identity");
    const { ResourceGraphClient } = require("@azure/arm-resourcegraph");
    
    if (argv.query) {
        const query = async () => {
           const credentials = new DefaultAzureCredential();
           const client = new ResourceGraphClient(credentials);
           const result = await client.resources(
              {
                  query: argv.query
              },
              { resultFormat: "table" }
           );
           console.log("Records: " + result.totalRecords);
           console.log(result.data);
        };
    
        query();
    }
    

    Nota

    Questo codice crea una query basata su tenant. Per limitare la query a un gruppo di gestione o a una sottoscrizione, definire e aggiungere una queryrequest alla client.resources chiamata e specificare managementGroups o subscriptions.

  2. Immettere il comando seguente nel terminale:

    node index.js --query "Resources | project name, type | limit 5"
    

    Nota

    Poiché questo esempio di query non prevede un modificatore del tipo di ordinamento, ad esempio order by, se si esegue questa query più volte, è probabile che venga restituito un set di risorse diverso per ogni richiesta.

  3. Impostare il primo parametro su index.js e cambiare la query per applicare order by alla proprietà Name.

    node index.js --query "Resources | project name, type | limit 5 | order by name asc"
    

    Quando lo script tenta di eseguire l'autenticazione, nel terminale verrà visualizzato un messaggio simile al seguente:

    Per accedere, usare un Web browser per aprire la pagina https://microsoft.com/devicelogin e immettere il codice FGB56WJUGK per eseguire l'autenticazione.

    Dopo l'autenticazione nel browser, l'esecuzione dello script continua.

    Nota

    Come nella prima query, se si esegue questa query più volte, è probabile che venga restituito un set di risorse diverso per ogni richiesta. L'ordine dei comandi della query è importante. In questo esempio order by segue limit. Questo ordine dei comandi prima limita i risultati della query e successivamente li ordina.

  4. Impostare il primo parametro su index.js e cambiare la query per applicare prima order by alla proprietà Name e quindi limit ai primi cinque risultati.

    node index.js --query "Resources | project name, type | order by name asc | limit 5"
    

Quando la query finale viene eseguita più volte, presupponendo che non vengano apportate modifiche all'ambiente, i risultati restituiti saranno coerenti e ordinati in base alla proprietà Name, ma ancora limitati ai primi cinque risultati.

Pulire le risorse

Per rimuovere le librerie installate dall'applicazione, eseguire il comando seguente.

npm uninstall @azure/arm-resourcegraph @azure/identity yargs

Passaggi successivi

In questa guida di avvio rapido sono state aggiunte le librerie di Resource Graph nell'ambiente JavaScript ed è stata eseguita la prima query. Per altre informazioni sul linguaggio di Resource Graph, passare alla pagina dei dettagli del linguaggio di query.