Megosztás a következőn keresztül:


Ügyfél Azure-használati rekordjainak lekérése

A következőre vonatkozik: Partnerközpont | Partnerközpont a Microsoft Cloud for US Government számára

Egy ügyfél Azure-előfizetésének egy adott időszakra vonatkozó használati rekordjait az Azure-használati API-val kérheti le.

Előfeltételek

  • Hitelesítő adatok a Partnerközpont hitelesítésében leírtak szerint. Ez a forgatókönyv támogatja az önálló alkalmazással és az App+Felhasználói hitelesítő adatokkal való hitelesítést.

  • Ügyfélazonosító (customer-tenant-id). Ha nem ismeri az ügyfél azonosítóját, megkeresheti a Partnerközpontban az Ügyfelek munkaterület kiválasztásával, majd az ügyféllistából, majd a Fiók listában. Az ügyfél Fiók lapján keresse meg a Microsoft-azonosítót az Ügyfélfiók adatai szakaszban. A Microsoft-azonosító megegyezik az ügyfél-azonosítóval (customer-tenant-id).

  • Előfizetés-azonosító.

Ez az API napi és óránkénti névleges fogyasztást ad vissza tetszőleges időtartamra. Ez az API azonban nem támogatott az Azure-csomagok esetében. Ha rendelkezik Azure-csomaggal, olvassa el a Számla nembillen fogyasztási sor elemeinek lekérése és a számla számlázott fogyasztási sor elemeinek lekérése című cikket. Ezek a cikkek azt ismertetik, hogyan szerezheti be a névleges fogyasztást az erőforrásonkénti fogyasztásmérőnkénti napi szinten. Ez a sebességfelhasználás megegyezik az Azure-kihasználtsági API által biztosított napi gabonaadatokkal. A számlázott használati adatok lekéréséhez a számlaazonosítót kell használnia. Vagy az aktuális és az előző időszakok használatával is lekérheti a kihasználatlan használati becsléseket. Az óránkénti szemcsés adatok és az tetszőleges dátumtartomány-szűrők jelenleg nem támogatottak az Azure-csomag előfizetési erőforrásaihoz.

Azure-használati API

Ez az Azure-kihasználtsági API hozzáférést biztosít a kihasználtsági rekordokhoz egy olyan időszakra vonatkozóan, amely azt jelzi, hogy a kihasználtságot mikor jelentették a számlázási rendszerben. Hozzáférést biztosít az egyeztetési fájl létrehozásához és kiszámításához használt kihasználtsági adatokhoz. Azonban nem ismeri a számlázási rendszer egyeztetési fájllogikát. Nem várható, hogy az egyeztetési fájlok összegzési eredményei pontosan ugyanabban az időszakban megegyeznek az API-ból lekért eredményekkel.

A számlázási rendszer például ugyanazokat a kihasználtsági adatokat használja, és késési szabályokat alkalmaz annak meghatározására, hogy mi szerepel egy egyeztetési fájlban. Ha egy számlázási időszak bezárul, a számlázási időszak végét követő nap végéig minden használat szerepel az egyeztetési fájlban. A számlázási időszakon belüli, a számlázási időszak végét követő 24 órán belül jelentett késedelmes használatot a rendszer a következő egyeztetési fájlban számolja el. A partner számlázásának késési szabályaiért tekintse meg az Azure-előfizetés használati adatainak lekérését ismertető témakört.

Ez a REST API lapozott. Ha a válasz hasznos adatai nagyobbak, mint egy oldal, a következő hivatkozást követve lekérheti a kihasználtsági rekordok következő oldalát.

Forgatókönyv: Az A partner átadta az Azure Legacy-előfizetés (145P) számlázási tulajdonjogát a B partnernek

Ha egy partner egy örökölt Azure-előfizetés számlázási tulajdonjogát egy másik partnernek továbbítja, az új partner meghívja a Kihasználtsági API-t az átvitt előfizetéshez, az Azure-jogosultságazonosító helyett kereskedelmi előfizetés-azonosítót kell használnia (amely megjelenik a Partnerközpont fiókjában). Az Azure-jogosultság azonosítója csak akkor jelenik meg a B partnernél, ha a (AOBO) nevében Rendszergazda az ügyfél Azure Portaljára.

Az átvitt előfizetés kihasználtsági API-jának sikeres meghívásához az új partnernek a Kereskedelmi előfizetés azonosítóját kell használnia.

C#

Az Azure-kihasználtsági rekordok beszerzése:

  1. Kérje le az ügyfél-azonosítót és az előfizetés azonosítóját.

  2. Hívja meg az IAzureUtilizationCollection.Query metódust a kihasználtsági rekordokat tartalmazó ResourceCollection visszaadásához.

  3. Szerezze be az Azure-kihasználtsági rekord enumerátorát a kihasználtsági lapok bejárásához. Erre a lépésre azért van szükség, mert az erőforráscsoport lapozott.

// IAggregatePartner partnerOperations;
// string customerId;
// string subscriptionId;

IPartner partner = PartnerService.Instance.CreatePartnerOperations(credentials);

// Retrieve the utilization records for the last year in pages of 100 records.
var utilizationRecords = partner.Customers[customerId].Subscriptions[subscriptionId].Utilization.Azure.Query(
    DateTimeOffset.Now.AddYears(-1),
    DateTimeOffset.Now,
    size: 100);

// Create an Azure utilization enumerator which will aid us in traversing the utilization pages.
var utilizationRecordEnumerator = partner.Enumerators.Utilization.Azure.Create(utilizationRecords);

while (utilizationRecordEnumerator.HasValue)
{
    //
    // Insert code here to work with this page.
    //

    // Get the next page.
    utilizationRecordEnumerator.Next();
}

Java

A Partnerközpont Java SDK-val kezelheti a Partnerközpont erőforrásait. Ez egy nyílt forráskódú projekt, amelyet a partnerközösség tart fenn, és amelyet a Microsoft hivatalosan nem támogat. Ha problémát tapasztal, segítséget kérhet a közösségtől, vagy problémákat nyithat meg a GitHubon.

Az Azure-kihasználtsági rekordok beszerzéséhez először egy ügyfélazonosítóra és egy előfizetés-azonosítóra van szüksége. Ezután meghívja az IAzureUtilizationCollection.query függvényt a kihasználtsági rekordokat tartalmazó ResourceCollection visszaadásához. Mivel az erőforrásgyűjtemény lapszámozott, a kihasználtsági lapok közötti járáshoz be kell szereznie egy Azure-kihasználtsági rekord enumerátorát.

// IAggregatePartner partnerOperations;
// String customerId;
// String subscriptionId;

ResourceCollection<AzureUtilizationRecord> utilizationRecords = partnerOperations.getCustomers()
  .byId(customerId).getSubscriptions().byId(subscriptionId)
  .getUtilization().getAzure().query(
      new DateTime().minusYears(1),
      new DateTime(),
      AzureUtilizationGranularity.Daily,
      true,
      100);

// Create an Azure utilization enumerator which will aid us in traversing the utilization pages
IResourceCollectionEnumerator<ResourceCollection<AzureUtilizationRecord>> utilizationRecordEnumerator =
    partnerOperations.getEnumerators().getUtilization().getAzure().create(utilizationRecords);

while (utilizationRecordEnumerator.hasValue())
{
    //
    // Insert code here to work with this page.
    //

    // get the next page
    utilizationRecordEnumerator.next();
}

PowerShell

A Partnerközpont PowerShell-modulja a Partnerközpont erőforrásainak kezelésére használható. Ez egy nyílt forráskódú projekt, amelyet a partnerközösség tart fenn, és amelyet a Microsoft hivatalosan nem támogat. Ha problémát tapasztal, segítséget kérhet a közösségtől, vagy problémákat nyithat meg a GitHubon.

Az Azure-kihasználtsági rekordok beszerzéséhez először egy ügyfélazonosítóra és egy előfizetés-azonosítóra van szüksége. Ezután hívja meg a Get-PartnerCustomerSubscriptionUtilization parancsot. Ez a parancs a megadott ideig elérhető összes rekordot visszaadja.

# $customerId
# $subscriptionId

Get-PartnerCustomerSubscriptionUtilization -CustomerId $customerId -SubscriptionId $subscriptionId -StartDate (Get-Date).AddDays(-2).ToUniversalTime() -Granularity Hourly -ShowDetails

REST-kérés

Kérés szintaxisa

Metódus Kérés URI-ja
GET {baseURL}/v1/customers/{customer-tenant-id}/subscriptions/{subscription-id}/utilizations/azure?start_time={start-time}&end_time={end-time}&granularity={granularity}&show_details={True}

URI-paraméterek

A kihasználtsági rekordok lekéréséhez használja az alábbi elérési utat és lekérdezési paramétereket.

Név Típus Kötelező Leírás
ügyfél-bérlő-azonosító sztring Igen Egy GUID formátumú sztring, amely azonosítja az ügyfelet.
előfizetés-azonosító sztring Igen Az előfizetést azonosító GUID formátumú sztring.
start_time sztring UTC dátum-idő eltolás formátumban Igen Annak az időtartománynak a kezdete, amely azt jelzi, hogy a kihasználtság mikor jelent meg a számlázási rendszerben.
end_time sztring UTC dátum-idő eltolás formátumban Igen Annak az időtartománynak a vége, amely azt jelzi, hogy a kihasználtság mikor jelent meg a számlázási rendszerben.
Finomsága húr Nem A használati aggregációk részletességét határozza meg. Az elérhető lehetőségek a következők: daily (alapértelmezett) és hourly.
show_details Logikai Nem Megadja, hogy lekérje-e a példányszintű használati adatokat. Az alapértelmezett érték true.
Méret szám Nem Az egyetlen API-hívás által visszaadott összesítések számát adja meg. Az alapértelmezett érték 1000. A maximális érték 1000.

Kérésfejlécek

További információ: Partnerközpont – REST fejlécek.

Kérés törzse

Egyik sem

Példa kérése

Az alábbi példakérés a 7/2– 8/1 időszakra vonatkozó egyeztetési fájlhoz hasonló eredményeket hoz létre. Előfordulhat, hogy ezek az eredmények nem egyeznek pontosan (a részletekért tekintse meg az Azure-kihasználtsági API szakaszt).

Ez a példakérés a számlázási rendszerben jelentett kihasználtsági adatokat adja vissza 7/2 és 8/2 között 12:00 (UTC) időpontban.

GET https://api.partnercenter.microsoft.com/v1/customers/E499C962-9218-4DBA-8B83-8ADC94F47B9F/subscriptions/FC8F8908-F918-4406-AF13-D5BC0FE41865/utilizations/azure?start_time=2017-07-02T00:00:00-08:00&end_time=2017-08-02T00:00:00-08:00 HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: e6a3b6b2-230a-4813-999d-57f883b60d38
MS-CorrelationId: a687bc47-8d08-4b78-aff6-5a59aa2055c2
X-Locale: en-US
Host: api.partnercenter.microsoft.com

REST-válasz

Ha sikeres, ez a metódus az Azure-kihasználtsági rekord erőforrásainak gyűjteményét adja vissza a válasz törzsében. Ha az Azure-kihasználtsági adatok még nem állnak készen egy függő rendszerben, ez a metódus egy 204-ben megadott HTTP-állapotkódot ad vissza újrapróbálkozási fejléccel.

Válasz sikeresség és hibakódok

Minden válaszhoz tartozik egy HTTP-állapotkód, amely jelzi a sikert vagy a hibát, valamint további hibakeresési információkat. Használjon hálózati nyomkövetési eszközt a HTTP-állapotkód, a hibakód típusa és a további paraméterek olvasásához.

Példa válaszra

HTTP/1.1 200 OK
Content-Length: 2630
Content-Type: application/json; charset=utf-8
MS-CorrelationId: a687bc47-8d08-4b78-aff6-5a59aa2055c2
MS-RequestId: e6a3b6b2-230a-4813-999d-57f883b60d38
MS-CV: PjuGoYrw806o6A3Y.0
MS-ServerId: 030020525
Date: Fri, 04 Aug 2017 23:48:28 GMT

{
  "totalCount": 2,
  "items": [
    {
      "usageStartTime": "2017-06-07T17:00:00-07:00",
      "usageEndTime": "2017-06-08T17:00:00-07:00",
      "resource": {
        "id": "8767aeb3-6909-4db2-9927-3f51e9a9085e",
        "name": "Storage Admin",
        "category": "Storage",
        "subcategory": "Block Blob",
        "region": "Azure Stack"
      },
      "quantity": 0.217790327034891,
      "unit": "1 GB/Hr",
      "infoFields": {},
      "instanceData": {
        "resourceUri": "/subscriptions/ab7e2384-eeee-489a-a14f-1eb41ddd261d/resourcegroups/system.local/providers/Microsoft.Storage/storageaccounts/srphealthaccount",
        "location": "azurestack",
        "partNumber": "",
        "orderNumber": "",
        "additionalInfo": {
          "azureStack.MeterId": "09F8879E-87E9-4305-A572-4B7BE209F857",
          "azureStack.SubscriptionId": "dbd1aa30-e40d-4436-b465-3a8bc11df027",
          "azureStack.Location": "local",
          "azureStack.EventDateTime": "06/05/2017 06:00:00"
        }
      },
      "attributes": {
        "objectType": "AzureUtilizationRecord"
      }
    },
    {
      "usageStartTime": "2017-06-07T17:00:00-07:00",
      "usageEndTime": "2017-06-08T17:00:00-07:00",
      "resource": {
        "id": "8767aeb3-6909-4db2-9927-3f51e9a9085e",
        "name": "Storage Admin",
        "category": "Storage",
        "subcategory": "Block Blob",
        "region": "Azure Stack"
      },
      "quantity": 0.217790327034891,
      "unit": "1 GB/Hr",
      "infoFields": {},
      "instanceData": {
        "resourceUri": "/subscriptions/ab7e2384-eeee-489a-a14f-1eb41ddd261d/resourcegroups/system.local/providers/Microsoft.Storage/storageaccounts/srphealthaccount",
        "location": "azurestack",
        "partNumber": "",
        "orderNumber": "",
        "additionalInfo": {
          "azureStack.MeterId": "09F8879E-87E9-4305-A572-4B7BE209F857",
          "azureStack.SubscriptionId": "dbd1aa30-e40d-4436-b465-3a8bc11df027",
          "azureStack.Location": "local",
          "azureStack.EventDateTime": "06/05/2017 06:00:00"
        },
        "attributes": {
          "objectType": "AzureUtilizationRecord"
        }
      },

      "links": {
        "self": {
          "uri": "customers/E499C962-9218-4DBA-8B83-8ADC94F47B9F/subscriptions/FC8F8908-F918-4406-AF13-D5BC0FE41865/utilizations/azure?start_time=2017-06-10T00:00:00Z&end_time=2017-07-09T00:00:00Z&granularity=Daily&show_details=True&size=1000",
          "method": "GET",
          "headers": []
        }
      },
      "attributes": {
        "objectType": "Collection"
      }
    }
  ]
}