Condividi tramite


Libreria client di Azure LoadTest per JavaScript - versione 1.0.0

Questo pacchetto contiene un SDK isomorfico (eseguito sia in Node.js che nei browser) per il client Azure LoadTest.

Il client LoadTest fornisce l'accesso alla risorsa LoadTest ed è operazioni di stato.

Codice | sorgente Pacchetto (NPM) | Documentazione | di riferimento sulle APICampioni

Introduzione

Ambienti attualmente supportati

Per altre informazioni, vedere i criteri di supporto.

Prerequisiti

Installare il pacchetto @azure/arm-loadtesting

Installare la libreria client di Azure LoadTest per JavaScript con npm:

npm install @azure/arm-loadtesting

Creare e autenticare un oggetto LoadTestClient

Per creare un oggetto client per accedere all'API Azure LoadTest, è necessario disporre endpoint della risorsa Azure LoadTest e di un oggetto credential. Il client Azure LoadTest può usare le credenziali di Azure Active Directory per l'autenticazione. È possibile trovare l'endpoint per la risorsa Azure LoadTest nel portale di Azure.

È possibile eseguire l'autenticazione con Azure Active Directory usando credenziali dalla libreria @azure/identità o da un token AAD esistente.

Per usare il provider DefaultAzureCredential illustrato di seguito o altri provider di credenziali forniti con Azure SDK, installare il @azure/identity pacchetto:

npm install @azure/identity

Sarà anche necessario registrare una nuova applicazione AAD e concedere l'accesso ad Azure LoadTest assegnando il ruolo appropriato all'entità servizio (nota: i ruoli, ad "Owner" esempio, non concedono le autorizzazioni necessarie). Impostare i valori dell'ID client, dell'ID tenant e del segreto client dell'applicazione AAD come variabili di ambiente: AZURE_CLIENT_ID, , AZURE_TENANT_IDAZURE_CLIENT_SECRET.

Per altre informazioni su come creare un'applicazione Azure AD, vedere questa guida.

const { LoadTestClient } = require("@azure/arm-loadtesting");
const { DefaultAzureCredential } = require("@azure/identity");
// For client-side applications running in the browser, use InteractiveBrowserCredential instead of DefaultAzureCredential. See https://aka.ms/azsdk/js/identity/examples for more details.

const subscriptionId = "00000000-0000-0000-0000-000000000000";
const client = new LoadTestClient(new DefaultAzureCredential(), subscriptionId);

// For client-side applications running in the browser, use this code instead:
// const credential = new InteractiveBrowserCredential({
//   tenantId: "<YOUR_TENANT_ID>",
//   clientId: "<YOUR_CLIENT_ID>"
// });
// const client = new LoadTestClient(credential, subscriptionId);

Creare una risorsa di test di carico di Azure

Creare una nuova risorsa test di carico di Azure.

loadTestResourceCreatePayload = {
  location: "westus2"
};

const resource = await client.loadTests.beginCreateOrUpdateAndWait(
  "sample-rg",
  "sample-loadtesting-resource",
  loadTestResourceCreatePayload
);

console.log(resource);

Creare una nuova risorsa di Test di carico di Azure con identità gestita e crittografia della chiave gestita dal cliente.

loadTestResourceCreatePayload = {
  location: "westus2",
  tags: { team: "testing" },
  identity: {
    type: 'SystemAssigned, UserAssigned',
    userAssignedIdentities: {
      '/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sample-rg/providers/microsoft.managedidentity/userassignedidentities/identity1': {}
    }
  },
  encryption: {
    identity: {
      type: 'UserAssigned',
      resourceId: '/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sample-rg/providers/microsoft.managedidentity/userassignedidentities/identity1'
    },
    keyUrl: 'https://sample-kv.vault.azure.net/keys/cmkkey/2d1ccd5c50234ea2a0858fe148b69cde'
  }
};

const resource = await client.loadTests.beginCreateOrUpdateAndWait(
  "sample-rg",
  "sample-loadtesting-resource",
  loadTestResourceCreatePayload
);

console.log(resource);

Ottenere una risorsa di test di carico di Azure

let resourceName = 'sample-loadtesting-resource';
let resourceGroupName = 'sample-rg';

const resource = await client.loadTests.get(
  resourceGroupName,
  resourceName
);

console.log(resource);

Aggiornare una risorsa di test di carico di Azure

loadTestResourcePatchPayload = {
  tags: { team: "testing-dev" },
  identity: {
    type: 'SystemAssigned, UserAssigned',
    userAssignedIdentities: {
      // removing a user-assigned managed identity by assigning the value in the payload as null
      '/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sample-rg/providers/microsoft.managedidentity/userassignedidentities/identity1': null,
      '/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sample-rg/providers/microsoft.managedidentity/userassignedidentities/identity2': {}
    }
  },
  encryption: {
    // use system-assigned managed identity for CMK encryption
    identity: {
      type: 'SystemAssigned',
      resourceId: null
    },
    keyUrl: 'https://sample-kv.vault.azure.net/keys/cmkkey/2d1ccd5c50234ea2a0858fe148b69cde'
  }
};

const resource = await client.loadTests.beginUpdateAndWait(
  "sample-rg",
  "sample-loadtesting-resource",
  loadTestResourcePatchPayload
);

console.log(resource);

Eliminare una risorsa di test di carico di Azure

let resourceName = 'sample-loadtesting-resource';
let resourceGroupName = 'sample-rg';

const result = await client.loadTests.beginDeleteAndWait(
  resourceGroupName,
  resourceName
);

JavaScript Bundle

Per usare questa libreria client nel browser, è prima necessario usare un bundler. Per informazioni dettagliate su come eseguire questa operazione, vedere la documentazione di creazione di bundle.

Concetti chiave

LoadTestClient

LoadTestClient è l'interfaccia principale per gli sviluppatori che usano la libreria client Azure LoadTest. Esplorare i metodi in questo oggetto client per comprendere le diverse funzionalità del servizio Azure LoadTest a cui è possibile accedere.

Risoluzione dei problemi

Registrazione

L'abilitazione della registrazione consente di individuare informazioni utili sugli errori. Per visualizzare un log di richieste e risposte HTTP, impostare la variabile di ambiente AZURE_LOG_LEVEL su info. In alternativa, la registrazione può essere abilitata in fase di esecuzione chiamando setLogLevel in @azure/logger:

const { setLogLevel } = require("@azure/logger");
setLogLevel("info");

Per istruzioni più dettagliate su come abilitare i log, è possibile esaminare la documentazione del pacchetto di @azure/logger.

Passaggi successivi

Per esempi dettagliati su come usare questa libreria, vedere la directory degli esempi .

Contributo

Per contribuire a questa libreria, leggere la guida ai contributi per altre informazioni su come compilare e testare il codice.

Impression